gorhill / uMatrix

uMatrix: Point and click matrix to filter net requests according to source, destination and type
GNU General Public License v3.0
4.56k stars 470 forks source link

WebRTC #124

Open jankkm opened 9 years ago

jankkm commented 9 years ago

Today I read about how WebRTC which allows some kind of real time communication can be used for fingerprinting and also to find out your actual IP if you are on a VPN network. There is a blocker for that on the chrome webstore but I think this might be worth adding to umatrix. What do you think?

ghost commented 9 years ago

I'm putting this here as a reminder: https://www.browserleaks.com/webrtc Hope that's okay with you guys :)

ghost commented 9 years ago

Demo (not VPN specific): https://github.com/diafygi/webrtc-ips Chrome bugtracker: https://code.google.com/p/chromium/issues/detail?id=333752

TheRyuu commented 9 years ago

PoC[1] for blocking WebRTC in cases where WebRTC Block does not cut it (the iframe workaround). This just modifies the UA spoofer code and I've no idea if it works in all cases. Please note that this must be used in combination with the WebRTC Block[2] extension otherwise the "naive" case will actually still work. Here[3] is the WebRTC Block javascript for reference. I'm not sure if adding "match_about_blank": true to the WebRTC Block manifest.json will work in all cases.

Also I've no idea if this is even a proper way of doing things as javascript is really out of my comfort zone so I apologize if it's just plain wrong.

[1] https://privatepaste.com/792de4de1f [2] https://chrome.google.com/webstore/detail/webrtc-block/nphkkbaidamjmhfanlpblblcadhfbkdm?hl=en [3] https://privatepaste.com/cb3bf093e7

mailinglists35 commented 9 years ago

dev channel has introduced extensions ability to block webrtc requests. would love to see it integrated into uMatrix! api example code: https://code.google.com/p/chromium/issues/detail?id=457629#c7 I'm using dev anyway so I'd be able to test right away!

later edit! oups, i did not read it all: the changes implemented in 457629 let the changes applied by an extension take effect only on restart. an issue tracking the ability to do this without restart has been filed separate here: https://code.google.com/p/chromium/issues/detail?id=466197

ghost commented 9 years ago

@mailinglists35

https://github.com/CODYQX4/WebRTC-Multiple-Routes

That is a working extension, and some didn't take note there, that it can require a browser restart for that to take effect. My extension lets you toggle and restarts automatically.

Just a temporary use until they get this feature properly integrated into settings.

marksolaris commented 9 years ago

+1 https://torrentfreak.com/huge-security-flaw-leaks-vpn-users-real-ip-addresses-150130/

gorhill commented 9 years ago

I can't reproduce. Are you using an extension-based VPN provider?

Tasqa commented 8 years ago

I've noticed this feature of blocking WebRTC ip leakage is already present in uBlock0. Is progress on uMatrix on hold?