12

What is WebRTC and what is it intended to be used for?

According to this Browser Leaks Test for WebRTC and IP Leaks, I am currently leaking IP information for IP addresses that I do not believe anybody on the internet needs to know, ever.

I installed a plugin for Google Chrome (WebRTC Block) which apparently disables WebRTC - the Browser Leaks page reports that WebRTC is disabled but the IP Leaks link still lists IPv4 IP addresses in the 192.168.x range.

How can I protect myself against WebRTC leaking information that doesn't need to be shared? Is it possible to keep WebRTC enabled for the purposes it was designed for without revealing IP information?

2

1 Answer 1

7

WebRTC stands for Web Real Time Communication. It's used for most web related voice, video, or file sharing capabilities. Specifically instances of communication where you are directly connecting to your peer through your browser. Some examples could be web-games that let you play tic-tac-toe with a friend. Sharing files directly through a browser to another peer. Most browsers have native support for WebRTC except for Internet Explorer and Safari. It uses encryption for all its communications, but as you've found there's a huge vulnerability.

It seems that Windows and FreeBSD are the vulnerable operating systems. I'm currently running a Debian based distro, and it does not seem to be vulnerable based on the two links you've provided.

It does not appear that you can only block the leaked IP vulnerability and use WebRTC for its intended use.


Mitigations

I'm not sure which plugin you've installed to disable WebRTC. This article states that both WebRTC Block and ScriptSafe extensions for Chrome will stop the vulnerability. For Chrome make sure that all Chrome processes have been closed after you've installed the extension. Sometimes the Chrome sandboxes aren't properly closed when the browser window is. This will ensure the new extension has taken effect properly.

For FireFox the NoScript add-on should block the request. You can also disable some settings with the following steps:

  1. Type about:config in the address bar
  2. Find the setting media.peerconnection.enabled and set it to false
  3. Find the setting media.navigator.enabled and set it to false

I would not suggest using Internet Explorer as a mitigation... a leaked IP would probably be the least of your worries. Switching OSs is an option, but probably a tedious one.

4
  • 1
    "Switching OSs is an option, but probably a tedious one." - WebRTC works on all OS (with the right browser), so this won't help.
    – rugk
    Jul 21, 2016 at 8:08
  • 1
    "It does not appear that you can only block the leaked IP vulnerability and use WebRTC for its intended use." Of course not, because WebRTC is based on using your local IP for example for a direct connection if possible.
    – rugk
    Jul 21, 2016 at 8:08
  • 1
    "I'm currently running a Debian based distro, and it does not seem to be vulnerable based on the two links you've provided." As said above that's wrong. WebRTC is platform-independent (which is one advantage of it). It all depends on the browser (version) you use.
    – rugk
    Jul 21, 2016 at 8:09
  • 1
    I edited this to include media.navigator.enabled, since you missed that. :P Dec 2, 2017 at 22:49

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .