WebRTC(网页即时通信,Web Real-Time Communication) 它允许浏览器内进行实时语音或视频对话,而无需添加额外的浏览器扩展。包括 Chrome、Firefox、Opera、Safari 均支持,并且在移动端也有支持。虽然此功能可能对某些用户有用,但它会对任何使用 VPN 的人构成威胁。WebRTC 漏洞的可怕之处在于,即使你用 VPN 代理上网仍然会暴露自己的真实 IP 地址。

WebRTC 漏洞原理

WebRTC 这个漏洞是在 2015 年初被发现的。通过该漏洞,网站管理员可以轻易地通过 WebRTC 看到用户的真实 IP 地址,即使用户使用 VPN 隐藏自己的 IP。 该漏洞影响支持 WebRTC 的浏览器,包括 Chrome 和 Firefox 浏览器。

WebRTC 采用 STUN(Session Traversal Utilities for NAT)、TURN 和 ICE 等协议栈对 VoIP 网络中的防火墙或者 NAT 进行穿透。用户发送请求至服务器,STUN 服务器会返回用户所用系统的 IP 地址和局域网地址。

返回的请求可以通过 JavaScript 获取,但由于这个过程是在正常的 XML/HTTP 请求过程之外进行的,所以在开发者控制台看不到。这意味着,这个漏洞的唯一要求就是浏览器要支持 WebRTC 和 JavaScript。

检查你的浏览器是否暴露了 IP

① 连接 VPN 代理

② 访问 https://ip.voidsec.com/

如果在 WebRTC 的部分看到了公网 IP 地址,则说明你已经暴露了身份信息。

WebRTC 漏洞防范措施

对于用户来说,如果不想自己的真实IP地址泄漏,可以通过禁用 WebRTC 来防止真实 IP 地址泄漏。

Chrome 安装扩展禁用

  1. 安装「WebRTC Leak Prevent」扩展
  2. 将「IP handling policy」选项设置为「Disable non-proxied UDP (force proxy)」
  3. 点击「Apply Settings」以应用

Firefox 修改配置禁用

  1. 在浏览器地址栏输入「about:config」回车
  2. 搜索「media.peerconnection.enabled」字段
  3. 双击「media.peerconnection.enabled」首选项,使其值变为「false」

更多隐私检测

WebRTC 泄漏真实 IP 地址的更多相关文章

  1. 后端Apache获取前端Nginx反向代理的真实IP地址 (原创贴-转载请注明出处)

    ====================说在前面的话==================== 环境:前段Nginx是反向代理服务器:后端是Apache是WEB项目服务器 目的:让后端Apapche获取 ...

  2. CDN下nginx获取用户真实IP地址

    随着nginx的迅速崛起,越来越多公司将apache更换成nginx. 同时也越来越多人使用nginx作为负载均衡, 并且代理前面可能还加上了CDN加速,但是随之也遇到一个问题:nginx如何获取用户 ...

  3. 多级反向代理下,Java获取请求客户端的真实IP地址多中方法整合

    在JSP里,获取客户端的IP地址的方法是:request.getRemoteAddr(),这种方法在大部分情况下都是有效的.但是在通过了Apache,Squid等反向代理软件就不能获取到客户端的真实I ...

  4. 查找“CDN、负载均衡、反向代理”等大型网络真实IP地址的方法

    首先,CDN.负载均衡.反向代理还分为很多层,有时查出来的是最外层的 CDN 服务器群,真实的机器是不对外开放的,类似这样的: 用户 → CDN 网络 → 一台或多台真实机器 ↗ CDN Server ...

  5. LNAMP架构中后端Apache获取用户真实IP地址的2种方法(转)

    一.Nginx反向代理配置: 1.虚拟主机配置 复制代码代码如下: location / {    try_files $uri @apache;} location @apache {interna ...

  6. java 客户端获取真实ip地址

    在开发工作中,我们常常需要获取客户端的IP.一般获取客户端的IP地址的方法是:request.getRemoteAddr();但是在通过了Apache,Squid等反向代理软件就不能获取到客户端的真实 ...

  7. C#取真实IP地址及分析

    说一哈,我也是转来的,不是想骗PV,方便自己查而已! 目前网上流行的所谓"取真实IP地址"的方法,都有bug,没有考虑到多层透明代理的情况. 多数代码类似: string IpAd ...

  8. Java获取客户端真实IP地址的两种方法

    在JSP里,获取客户端的IP地址的方法是:request.getRemoteAddr(),这种方法在大部分情况下都是有效的.但是在通过了Apache,Squid等反向代理软件就不能获取到客户端的真实I ...

  9. 获取请求主机IP地址,如果通过代理进来,则透过防火墙获取真实IP地址;

    package com.utils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import javax.servlet.htt ...

随机推荐

  1. git初尝

    跨考进科软,要做一个真正的码农了! 怎么能不会用git呢? 感谢孟宁老师带领我们入门.这是梦宁老师的文章:https://mp.weixin.qq.com/s/Km5KuXPETvG0wCGHrvj9 ...

  2. 网络 IO 工作机制

    ref: 深入分析 java web 技术内幕 2.3 两台计算机之间进行数据的传输需要经过很多步骤.首先有相互沟通的意向,然后还要有沟通的通道:通过电话还是面对面交流(物理链路).最后,两个人说话的 ...

  3. SSRF之利用dict和gopher吊打Redis

    SSRF之利用dict和gopher吊打Redis 写在前面 SSRF打Redis也是老生常谈的东西了,这里复现学习一下之前在xz看到某师傅写的关于SSRF利用dict和gopher打内网服务的文章, ...

  4. python实例:解决经典扑克牌游戏 -- 四张牌凑24点 (二)

    Hey! 如果你还没有看这篇的上文的话,可以去稍稍瞅一眼,会帮助加速理解这一篇里面涉及到的递归结构哦!(上一篇点这里:<python实例:解决经典扑克牌游戏 -- 四张牌凑24点 (一)> ...

  5. eclipse中安装jetty插件并使用

    一.eclipse中jetty插件安装: 打开eclipse,依次点击菜单Help->Eclipse Marketplace,在Find后面的框中输入jetty,选择第一项进行install即可 ...

  6. TurtleBot3 Waffle (tx2版华夫)(5)激活你的雷达

    重要提示:请在配网通信成功后进行操作,配网后再次开机需要重新验证通信: 重要提示:[Remote PC]代表PC端.[TurtelBot]代表树莓派端: 5.1.操作步骤 1)[Remote PC]  ...

  7. javabean 数组对应yml中的写法

    gate-info: gate-list: - channel: channel-one io-flag: I - channel: channel-two io-flag: E 上面的是 yml 文 ...

  8. Python学习-小黑屋游戏

    给大家分享一下有趣的游戏,在大一上学期学习的内容里,小黑屋比较好玩. 1.导入函数库 先导入random.time两个函数库的使用来达到随机生成人物.生成人物加载时间的目的. import rando ...

  9. 算法设计与分析 - 主定理Master theorem (分治法递推时间复杂度)

    英文原版不上了 直接中文 定义 假设有递推关系式T(n)=aT(n/b)+f(n) 其中n为问题规模 a为递推的子问题数量 n/b为每个子问题的规模(假设每个子问题的规模基本一样) f(n)为递推以外 ...

  10. CSS卡片旋转

    html{ perspective: 800px; } body{ display:flex; flex-wrap: wrap; } .card{ transform-style: preserve- ...