WebRTC漏洞可泄露VPN用户真实IP


Sphinx 2015-02-04 128181人围观 ,发现 22 个不明物体 漏洞资讯

<img src="http://image.3001.net/images/20150203/14229712023916.jpg!small" title="webrtc-leaks-vpn-ip-address.jpg"/></p>

WebRTC(网页实时通信,Web Real-Time Communication)是一个支持网页浏览器进行实时语音对话或视频对话的开源标准。使用WebRTC,用户无需安装其他软件或浏览器插件即可进行即时通讯。近日WebRTC曝出安全漏洞,可能泄露用户的真实IP地址,即使用户使用了VPN。

什么是WebRTC?

WebRTC实现了基于网页的视频会议,标准是WHATWG 协议,目的是通过浏览器提供简单的javascript就可以达到实时通讯(Real-Time Communications (RTC))能力。

在去年的Google I/O 大会上,Google表示WebRTC将支持超过十亿个不同端点(桌面浏览器和移动设备端),也就是说WebRTC将应用Chrome浏览器和Android移动操作系统。

漏洞描述及影响

这个漏洞是在上月末被发现的。通过该漏洞,网站管理员可以轻易地通过WebRTC看到用户的真实IP地址,即使用户使用VPN隐藏自己的IP。

该漏洞影响了支持WebRTC的浏览器,包括Google Chrome和火狐,不过似乎只影响Windows操作系统。

漏洞原理

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

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

你中招了吗?
安全研究人员Daniel Roesler在GitHub上发布了一个演示,大家可以自己检测一下有没有中招。

你也可以通过下面的方法检测:

1、连接VPN
2、访问http://ipleak.net

<img src="http://image.3001.net/images/20150203/1422971103959.png!small" title="webrtc-ip-leak.png"/></p>

如果你的浏览器安全的话,你就会看到上面的画面。
如果你的浏览器存在这个漏洞,你可以看到你的真实IP地址。

防御措施

Chrome用户:
Google Chrome和其他基于Chromium的浏览器用户可以安装插件屏蔽WebRTC或者也可以安装ScriptSafe插件。

Firefox用户:
如果你使用的是Firefox浏览器,你可以安装屏蔽JavaScript的插件如NoScript。或者你也可以通过下列步骤修复:

1、在浏览器地址栏输入about:config
2、在随后出现的提示中点击"我保证会小心”按钮
3、搜索"media.peerconnection.enabled"
4、双击media.peerconnection.enabled首选项,是其值变为"false"
这样就关闭了Firefox中的WebRTC

[参考来源THN,译/Sphinx,转载请注明来自Freebuf黑客与极客(FreeBuf.COM)]

没有更多推荐了,返回首页