ProtonVPN Additional note: Killswitch failure and IP Leakage on Linux

Article: ProtonVPN IP Leakage on Linux and Workaround | PrivSec - A practical approach to Privacy and Security

Killswitch does not work with all network interfaces.

Can you be tested using following command

curl --interface <physical interface> https://ipinfo.io

Suggestion

add an additional note aimed at Linux users in next section
https://www.privacyguides.org/en/vpn/#additional-notes

2 Likes

This was alread discussed in another thread. I don’t know if it should be included. Does it have real world impact?

I don’t know about real world impacts.

However, it is public information that hypothetically puts real users at risk of exposure if an exploration with sole intent to deanomize takes advantage of this to discover its real IP.

And as user I would like to know this information before purchasing Proton annual plan. Transparency is important to build trust.

This is an issue since 2022.

1 Like

Is there more to this? I feel like if torrent users were leaking their IP through proton, we would have heard about many getting in trouble…

It depends. There are countries and internet providers that don’t mind their users torrenting movies, TV shows, and games.

Also, not every VPN user uses it for torrenting.

Finally, there is a small number of Linux desktop users, which is fragmented into people who don’t use VPN, people who use other VPN providers, and finally Proton users.

It may happen that the IP address leaks, but the person does not find out because their internet provider does not care about torrenting, or because they were the target of some exploitation - the latter option is a hypothesis that I do not rule out, although I do not know of anyone who has been targeted.

In any case, it is a known public flaw in Proton killswitch.

Granted I’m not too technical, and not denying this may be an issue, but does the curl command not force the connection outside the VPN tunnel, thereby creating a leak?

For people reading, if you want to absolutely guarantee no VPN leak on desktop Linux, it is best to set it up with Wireguard via CLI where you can edit the config VPN file with a few lines of code to enable to killswitch.

This way, all your traffic is routed through the encrypted tunnel even before your desktop Linux GUI loads up thereby guaranteeing zero leaks from the get go.

If anyone is interested, I’d be happy to share more on how to do it.

1 Like

Or if the user doesn’t need to switch VPN location frequently, apply a network wide VPN from router is also a good option.

1 Like

May be. If the user is using their laptop or their smartphone, they are going to use it outside their home. Such a set up then is not useful.

1 Like

In a hypothetical scenario, a bug or program could exploit this to obtain your real IP address.

Since Proton was informed about this three years ago, I personally consider it useful to inform readers of the website’s Recommendations.

Perhaps a post on the Wiki? It would certainly be appreciated.

Unfortunately, this is not an option for a considerable number of people. I include myself in that situation.

I agree.

A year or two ago, I remember experiencing leaks after waking up my computer while using ProtonVPN. That’s what motivated me to look for another provider.

At this point, that has been resolved, and it seems that the only leak is the one mentioned above (personal opinion, take it with a grain of salt; I use Fedora, and the problem with Killswitch and the computer waking up may occur in other distros and scenarios that I am unaware of).

—
Thank you all for your responses, and have a great week.

1 Like

Workarounds were discussed here, but this thread is specifically about debating whether a change to the site should be added. I think that discussion is worth having.

I agree.

@JG do u know if Fedora’s default vpn settings can leak? Ive been setting up wireguadd configs using fedora’s default graphical UI in the settings.

17 posts were split to a new topic: VPN kill switch configuration guide on Linux discussion

It’s also often recommended to bind your torrent client to the VPN interface to prevent leaks like this.

This would potentially involve a compromised application. I don’t say this shouldn’t be mentionned, but any application that is unsandboxed and compromised could do worst things.

Things to determine is:

1- Can all apps run ifconfig (to get interface name) and then curl? What about Flatpaks apps?
2- Are the two other recommended VPNs impacted (Mullvad and IVPN)?
3-Is this limited to Linux or macOS as well?

Just tested mullvad using the curl command and it does not appear to be affected

1 Like

I appreciate what you say, and once again, stressing my lack of technical knowledge - but is this not akin to opening a drain valve on a piping system and saying “look - a leak!”

I tested it on Android with termux and it is also affected, as long as you don’t have “Block connections without VPN” activated.

Not really, in my view kill switch not kill switching is basically false advertising. There are apps that can see different network interfaces and allow you to choose between them, so I could definitely imagine a buggy or oddly written program mistakenly using the wrong one.

1 Like

My understanding of how vpns work on android is that this is not really proton’s fault. If you want a kill switch on android you have to use the block connections setting