WebRTC的原理说明和检测说明

WebRTC 泄漏真实 IP 地址

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」

更多隐私检测

  • 防关联浏览器检测 IP 泄漏:https://ipleak.net

  • 检测 WebRTC 泄漏:https://diafygi.github.io/webrtc-ips/

  • 超级浏览器检测 WebRTC 泄漏:https://www.expressvpn.com/webrtc-leak-test

  • 检测 WebRTC 泄漏:https://www.privacytools.io/webrtc.html

  • VMlogin设备信息检测:https://do-know.com/privacy-test.html

  • WebRTC 漏洞检测:https://www.perfect-privacy.com/webrtc-leaktest/

  • 指纹浏览器泄漏检测:https://browserleaks.com/webrtc