ungoogled-chromium icon indicating copy to clipboard operation
ungoogled-chromium copied to clipboard

WebRTC still leaks the local IP of users

Open i1u5 opened this issue 2 years ago • 7 comments

Describe the bug Apparently the #enable-webrtc-hide-local-ips-with-mdns flag has no effect on this version, as the browser would ignore it (whether default or enabled) and still leak the local IP address even though the Chromium fix already rolled out , now I don't know if I'm doing something wrong but https://browserleaks.com/webrtc still shows my local IP when it doesn't on Chrome v95.0.4638.69 or Edge v95.0.1020.40.

To Reproduce Steps to reproduce the behavior:

  1. Go to https://browserleaks.com/webrtc or https://tenta.com/test/
  2. Check local IP Address field

Expected behavior Should be N/A on https://browserleaks.com/webrtc or XXXXXXX.local on https://tenta.com/test/

Screenshots If applicable, add screenshots to help explain your problem.

image image

Environment (please complete the following information):

  • OS/Platform and version: Windows 10 21H1 x64 19043
  • ungoogled-chromium version: 95.0.4638.69

Additional context While there may be ways to disable WebRTC and prevent the issue altogether, it is not the default and since Chromium has already implemented the fix, other extensions like uBlock Origin also removed their workarounds to prevent leaks (as can be seen in uBlockOrigin/uBlock-issues#1723). The combination of the user's real IP address and the local one can pose serious and dangerous security issues if exploited properly, and right now Chromium's official fix doesn't seem to be effective on this browser, nor does the flag work.

i1u5 avatar Nov 02 '21 19:11 i1u5

This is because ungoogled-chromium is built with mDNS disabled.
Interestingly it seems that uBlock Origin only removed the setting and not the code it enables since my existing profile's uBO is still blocking the local IP.

I have a simple patch that fixes this and I'll submit a PR soon once I've done a little more testing with it enabled.

Ahrotahn avatar Nov 02 '21 22:11 Ahrotahn

I'm about to submit an issue like this, but since @i1u5 already brought it up. here you go :D

0xspade avatar Nov 13 '21 05:11 0xspade

Was the mDNS patch from #1750 ever added? It's closed but kind of trails off into nothing, and local IPs are still leaking on 97.0.4692.71-1.

photonanim avatar Jan 14 '22 10:01 photonanim

See https://github.com/Eloston/ungoogled-chromium/pull/1764#issuecomment-988877205

networkException avatar Jan 14 '22 11:01 networkException

I haven't had a chance to work with this since then. I initially thought that the setting should be set up as a flag like most of the other options, but that would require a browser restart when switching so I think it might be better as-is. I'll test to make sure everything works correctly one of the next weekends and hopefully have a PR up after 98 lands.

Ahrotahn avatar Jan 20 '22 14:01 Ahrotahn

I found an odd bug within chrome://settings/security that relates to this patch. It is the line of code {html_template} under the word Advanced. I have attached the image below to display what it looks like as well as another to show what the inspector tags it as.

UG-Chromium-WebRTC-Flag-Git-1

UG-Chromium-WebRTC-Flag-Git-2

Additionally, my local ip address still leaks with chrome://flags/#enable-webrtc-hide-local-ips-with-mdns set to enabled.

I'm running @kramred release 100.0.4896.88-1.1_x86-64__1649847004 macOS ungoogled-chromium binary.

colvacdir avatar Apr 14 '22 23:04 colvacdir

Yes, I can reproduce that - both on macOS and Linux.

I had already included these patches from PR#1845 into my v100 branch but not tested if it actually works.

The patches still seem to be the same as in the current Hexavalent repo.

This will need some troubleshooting/testing, which I probably won't be able to do in the short term. Maybe cross-posting this to the Hexavalent repo might help?


Edit: I just realised that I had not used the updated PR - that's why the drop-down menu did not show up. The updated PR#1845 is equivalent to the current patches from Hexavalent. A new revision for macOS includes the current version; builds on GitHub Actions are running and should include the drop-down menu for the WebRTC IP Handling Policy.

kramred avatar Apr 15 '22 10:04 kramred

The local IP is still leaked. Version 113.0.5672.126 (Official Build, ungoogled-chromium) (64-bit)

hivefi avatar Jun 06 '23 16:06 hivefi

At last! 114.0.5735.133: image 114.0.5735.106: image

PF4Public avatar Jun 15 '23 13:06 PF4Public