Mullvad’s response a day after the article. Come on proton, at least a “we saw the article and are looking into it”.
https://mullvad.net/en/blog/evaluating-the-impact-of-tunnelvision
Evaluating the impact of TunnelVision
May 7, 2024 Security
We evaluated the impact of the latest TunnelVision attack (CVE-2024-3661) and have found it to be very similar to TunnelCrack LocalNet (CVE-2023-36672 and CVE-2023-35838).
We have determined that from a security and privacy standpoint in relation to the Mullvad VPN app they are virtually identical. Both attacks rely on the attacker being on the same local network as the victim, and in one way or another being able to act as the victim’s DHCP server and tell the victim that some public IP range(s) should be routed via the attacker instead of via the VPN tunnel.
The desktop versions (Windows, macOS and Linux) of Mullvad’s VPN app have firewall rules in place to block any traffic to public IPs outside the VPN tunnel. These effectively prevent both LocalNet and TunnelVision from allowing the attacker to get hold of plaintext traffic from the victim.
Android is not vulnerable to TunnelVision simply because it does not implement DHCP option 121, as explained in the original article about TunnelVision.
iOS is unfortunately vulnerable to TunnelVision, for the same reason it is vulnerable to LocalNet, as we outlined in our blog post about TunnelCrack. The fix for TunnelVision is probably the same as for LocalNet, but we have not yet been able to integrate and ship that to production.
They have posted on Reddit that if you have kill switch and wireguard you are safe on every platform except Linux. A fix is being worked on for linux, no ETA.
Thanks for the reply! Here’s their 2024-5-8 reply for reference:
Hi! Our engineers have conducted a thorough analysis of this threat, reconstructed it experimentally, and tested it on Proton VPN. We concluded that:
- the attack can only be carried out if the local network itself is compromised
- our Windows and Android apps are fully protected against it
- for iOS and macOS apps, you are completely protected from this as long as you’re using a Kill Switch and a WireGuard-based protocol (our apps use WireGuard by default, and if a user wants to use something other than WireGuard derivates, they’d have to manually set it up). Note that Stealth, WireGuard TCP, and our Smart protocol on iOS/macOS are all WireGuard-based.
- for our Linux app, we’re working on a fix that would provide full protection against it.
its about the client.
im using linux so im not affected using proton.
Linux is affected.
source?
Interestingly, Android is the only operating system that fully immunizes VPN apps from the attack because it doesn’t implement option 121. For all other OSes, there are no complete fixes. When apps run on Linux there’s a setting that minimizes the effects, but even then TunnelVision can be used to exploit a side channel that can be used to de-anonymize destination traffic and perform targeted denial-of-service attacks.
I did not look into that setting that minimises the effect but from the way it’s written it sounds like this isn’t used by default, so by default you’re still vulnerable. Add even if it’s on, there’s still a side vulnerability.