• AutoTL;DRB
    link
    fedilink
    English
    41 year ago

    This is the best summary I could come up with:


    Researchers have devised an attack against nearly all virtual private network applications that forces them to send and receive some or all traffic outside of the encrypted tunnel designed to protect it from snooping or tampering.

    TunnelVision, as the researchers have named their attack, largely negates the entire purpose and selling point of VPNs, which is to encapsulate incoming and outgoing Internet traffic in an encrypted tunnel and to cloak the user’s IP address.

    The attack works by manipulating the DHCP server that allocates IP addresses to devices trying to connect to the local network.

    A setting known as option 121 allows the DHCP server to override default routing rules that send VPN traffic through a local IP address that initiates the encrypted tunnel.

    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.

    This remedy is problematic for two reasons: (1) a VPN user connecting to an untrusted network has no ability to control the firewall and (2) it opens the same side channel present with the Linux mitigation.


    The original article contains 903 words, the summary contains 196 words. Saved 78%. I’m a bot and I’m open source!

  • Nyfure
    link
    fedilink
    491 year ago

    To be fair, any proper VPN setup that only relies on the routing table like this is flawed to begin with.
    If the VPN program dies or the network interface disappears, the routes are removed aswell, allowing traffic to leave the machine without the VPN.
    So it is already a good practice to block traffic where it shouldnt go (or even better, only allowing it where it should).

    Many VPN-Programs by Providers already have settings to enable this to prevent “leaking”.

  • @MonkderDritte@feddit.de
    link
    fedilink
    English
    17
    edit-2
    1 year ago

    If i get this right, that attack only works before the tunnel is initiated (i.e. traffic encrypted), if the hosts is compromised, right? No danger from untrusted points inbetween, right?

    • @NeatNit@discuss.tchncs.de
      link
      fedilink
      English
      221 year ago

      This technique can also be used against an already established VPN connection once the VPN user’s host needs to renew a lease from our DHCP server. We can artificially create that scenario by setting a short lease time in the DHCP lease, so the user updates their routing table more frequently. In addition, the VPN control channel is still intact because it already uses the physical interface for its communication. In our testing, the VPN always continued to report as connected, and the kill switch was never engaged to drop our VPN connection.

      Sounds to me like it totally works even after the tunnel has started.

      • Natanael
        link
        fedilink
        English
        21 year ago

        Yeah, it’s like a fake traffic cop basically, sending your (network) traffic down the wrong route

        • @KairuByte@lemmy.dbzer0.com
          link
          fedilink
          English
          11 year ago

          More like a corrupt traffic cop. There are reasons you might want this kind of functionality, which is why it exists. Normally you can trust the cop (DHCP server) but in this case the cop has decided to send everyone from all streets down to the docks.

          • Natanael
            link
            fedilink
            English
            11 year ago

            These types of attacks would likely be implemented via DHCP spoofing / poisoning, unless you’re on a malicious network

    • @DreamlandLividity@lemmy.world
      link
      fedilink
      English
      13
      edit-2
      1 year ago

      No, it works at any point and the local network needs to be compromised (untrusted), the host can be secure.

      So it is likely not an issue at your home unless you have weak Wi-Fi password. But on any public/untrusted Wi-Fi, it is an issue.

  • @kinther@lemmy.world
    link
    fedilink
    English
    541 year ago

    If your LAN is already compromised with a rogue DHCP server, you’ve got bigger problems than them intercepting just VPN traffic. They can man in the middle all of your non-encrypted traffic. While this is bad, it’s not a scenario most people will run into.

    • Rolling Resistance
      link
      fedilink
      English
      61 year ago

      I wonder if it applies to routers made by a company who likes collecting user data. Because this is a situation many people are in.

    • Doubletwist
      link
      fedilink
      English
      651 year ago

      The problem isn’t them being in you LAN. It’s about going to an untrusted network (eg Starbucks, hotel) and connecting to your VPN, boom, now your VPN connection is compromised.

      • @kinther@lemmy.world
        link
        fedilink
        English
        131 year ago

        I woke up this morning and thought of this exact scenario, then found your comment lol

        Yes, this is bad for anyone who travels for work and can’t trust the network they connect to.

    • @sudneo@lemm.ee
      link
      fedilink
      English
      221 year ago

      The other comment already covers the fact that VPN should be useful exactly when you are connected to untrusted LANs. I want to add that also the main point of your comment is anyway imprecise. You don’t need a compromise DHCP, you just need another machine who spoofs being a DHCP. Not all networks have proper measures in place for these attacks, especially when we are talking wireless (for example, block client-to-client traffic completely). In other words, there is quite a middle-ground between a compromised router (which does DHCP in most cases) and just having a malicious device connected to the network.

  • Optional
    link
    fedilink
    English
    621 year ago

    there are no ways to prevent such attacks except when the user’s VPN runs on Linux or Android.

    So . . . unix? Everything-but-Windows?

    • azuth
      link
      fedilink
      English
      341 year ago

      Maybe it affects BSD and MacOS.

      It also can affect some Linux systems based on configuration. Android doesn’t implement the exploited standard at all and is always immune.

    • @abhibeckert@lemmy.world
      link
      fedilink
      English
      -43
      edit-2
      1 year ago

      Everything-but-Windows?

      No. Any device that implements a certain DHCP feature is vulnerable. Linux doesn’t support it, because most Linux systems don’t even use DHCP at all let alone this edge case feature. And Android doesn’t support it because it inherited the Linux network stack.

      I would bet some Linux systems are vulnerable, just not with the standard network packages installed. If you’re issued a Linux laptop for work, wouldn’t be surprised if it has a package that enables this feature. It essentially gives sysadmins more control over how packets are routed for every computer on the LAN.

      • @gsfraley@lemmy.world
        link
        fedilink
        English
        58
        edit-2
        1 year ago

        most Linux systems don’t even use DHCP

        WTF are you smoking? WTF is wrong with you that you think such a dumb claim would go unscrutinized? I would play Russian roulette on the chances of a random Linux installation on a random network talking DHCP.

        Edit, in case being charitable helps: DNS and IP address allocation aren’t the only things that happen over DHCP. And even then the odds are overwhelming that those are being broadcast that way.

  • @LordCrom@lemmy.world
    link
    fedilink
    English
    221 year ago

    To execute this you need a DHCP server on the network… But any admin worth his salt has a config on the switch to limit DHCP traffic to a designated server.

    Seems extremely difficult to pull off in any corporate environment

  • TipRing
    link
    fedilink
    English
    181 year ago

    I use option 121 as part of my work, though I am not an expert on DHCP. This attack does make sense to me and it would be hard to work around given the legitimate uses for that option.

      • Max-P
        link
        fedilink
        English
        81 year ago

        Adding routes for other thing on the network the clients can reach directly and remove some load from the router. For example, reaching another office location through a tunnel, you can add a route to 10.2.0.0/16 via 10.1.0.4 and the clients will direct the traffic directly at the appropriate gateway.

        Arguably one should design the network such that this is not necessary but it’s useful.

        • Nyfure
          link
          fedilink
          21 year ago

          To be fair, any proper VPN setup that only relies on the routing table like this is flawed to begin with.
          If the VPN program dies or the network interface disappears, the routes are removed aswell, allowing traffic to leave the machine without the VPN.
          So it is already a good practice to block traffic where it shouldnt go (or even better, only allowing it where it should).

  • Natanael
    link
    fedilink
    English
    131 year ago

    Pushing a route also means that the network traffic will be sent over the same interface as the DHCP server instead of the virtual network interface. This is intended functionality that isn’t clearly stated in the RFC. Therefore, for the routes we push, it is never encrypted by the VPN’s virtual interface but instead transmitted by the network interface that is talking to the DHCP server. As an attacker, we can select which IP addresses go over the tunnel and which addresses go over the network interface talking to our DHCP server.

    Ok, so double encrypted and authenticated traffic (TLS inside the VPN) would still be safe, and some stuff requiring an internal network origin via the VPN is safe (because the attacker can’t break into the VPN connection and your client won’t get the right response), but a ton of other traffic is exposed (especially unencrypted internal traffic on corporate networks, especially if it’s also reachable without a VPN or if anything sends credentials in plaintext)

  • 𝓔𝓶𝓶𝓲𝓮
    link
    fedilink
    English
    -15
    edit-2
    1 year ago

    If someone uses vpns for anything other than region locked content then that’s not very smart.

    It’s one big security risk and no attacks are necessary for some vpn company tech to sell your data. Hell I’d do it myself to a highest bidder, sorry.

    It’s like walking naked around some stranger’s house and trusting them to close their eyes.

    • @Couldbealeotard@lemmy.world
      link
      fedilink
      English
      251 year ago

      Encrypted VPN tunnels are ubiquitous in many industries for remote connection to private clouds. They are used by virtually every high functioning company in the world, and getting more common for mid and lower tier companies as well.

      • @Buddahriffic@lemmy.world
        link
        fedilink
        English
        31 year ago

        There’s no real way to know if VPNs intended for the public are run the same as those intended for enterprise. Windows doesn’t have a lot of the same BS in their enterprise versions that are in the personal ones. Even with the same software, it could just be a checkbox that the salesperson can check for big businesses with legal teams that read and enforce contracts.

        • @Couldbealeotard@lemmy.world
          link
          fedilink
          English
          21 year ago

          Maybe you can explain what you actually mean then, because I don’t understand your point.

          I would say those dollar-store VPN products people use for geo-spoofing is the worst security risk when it comes to VPNs. You are sending your data through some other company that you have no control or insight into. You have no idea what network security they employ, or whether they are willing or obligated to release your data to other parties.

    • @Buddahriffic@lemmy.world
      link
      fedilink
      English
      21 year ago

      I assume this is definitely the case for free VPNs, if any of those still exist. There might be some willing to donate bandwidth and compute resources for the good of others, but I’m sure there’s more that pretend to do that but actually just sell the data or maybe just spy.

      Tbh I wouldn’t be surprised if this is also the case for TOR nodes. I wonder how many entry and exit points are run by the NSA or some other government entity. Or are just monitored. If you can monitor the entry and exit points, you can determine both the source and destination, and just match them together using the middle node address.

      Same thing with proxies.

      Paid VPNs could go either way. On the one hand, they could make more money if they are willing to sell out their users’ privacy. On the other hand, that risks the entire thing falling apart if word gets out that it’s not private, since that’s the whole point of VPNs. I’m sure there’s some good ones out there but I’m also sure that there’s bad ones and wouldn’t be surprised if some of the ones considered good are actually bad.

      Maybe ones that run in Europe would be safer bets. Their business is at least able to run there with the privacy laws. Maybe they are skirting them and haven’t been caught yet, maybe their data sales from other regions are profitable enough to support European operations without data sales, but if they are going for max greed and min risk, maybe they wouldn’t operate there. Or maybe they just run things differently in the different regions to maximize global profits.

  • @BorgDrone@lemmy.one
    link
    fedilink
    English
    31 year ago

    (…) the entire purpose and selling point of VPNs, which is to encapsulate incoming and outgoing Internet traffic in an encrypted tunnel and to cloak the user’s IP address.

    No. That is not the entire point of a VPN. That’s just what a few shady companies are claiming to scam uninformed users into paying for a useless service. The entire point of a VPN is to join a private network (i.e. a network that is not part of the Internet) over the public internet, such as connecting to your company network from home. Hence the name ‘virtual private network’.

    There are very little, if any, benefits to using a VPN service to browse the public internet.

    • @mako@lemmy.today
      link
      fedilink
      English
      221 year ago

      There are very little, if any, benefits to using a VPN service to browse the public internet.

      This is why it’s often best to just avoid the comments completely

    • @desktop_user@lemmy.blahaj.zone
      link
      fedilink
      English
      161 year ago

      There are very little, if any, benefits to using a VPN service to browse the public internet.

      accessing services that are blocked in your region.

    • @Passerby6497@lemmy.world
      link
      fedilink
      English
      181 year ago

      There are very little, if any, benefits to using a VPN service to browse the public internet.

      I’ve run into issues multiple times where a site doesn’t load until I turn on my VPN with an endpoint in the EU

    • @Bricriu@lemmy.world
      link
      fedilink
      English
      601 year ago

      My understanding is that if you run a rogue discoverable DHCP server in a local network with a particular set of options set and hyper-specific routing rules, you can clobber the routing rules set by the VPN software on any non-Android device, and route all traffic from those devices through arbitrary midpoints that you control.

      But IANANE (I am not a network engineer) so please correct my misinterpretations.

      • applepie
        link
        fedilink
        321 year ago

        this implies physical access or at least access within the network?

        • lemmyng
          link
          fedilink
          English
          71 year ago

          It has implications on the effectiveness of VPNs on public networks.

        • @SzethFriendOfNimi@lemmy.world
          link
          fedilink
          English
          491 year ago

          Keeping in mind that may mean that somebody like a cellular provider could do so. Since your local network in that context would be them.

          • @sailingbythelee@lemmy.world
            link
            fedilink
            English
            251 year ago

            Exactly. And if your ISP or cellular provider wants, or is forced, to gather information about your internet activities, they can almost certainly find a way. The cheap consumer-grade VPN services most of us use just prevent casual or automated observers from easily detecting your device’s IP address. For most people that just want to torrent casually or use public wifi, it’s enough.

        • @Pretzilla@lemmy.world
          link
          fedilink
          English
          11 year ago

          Or I expect compromise of anything on the LAN that can create a rogue DNS server that can override the routing table.

          But I might be missing something

    • @vvv@programming.dev
      link
      fedilink
      English
      50
      edit-2
      1 year ago

      (obligatory I’m not a network surgeon this is likely not perfectly correct)

      The article mentions network interfaces, DHCP and gateways so real quick: a network interface usually represents a physical connection to a network, like an Ethernet port or a WiFi card. DHCP is a protocol that auto configured network routes and addresses once a physical connection is established, like when you jack in via an ethernet cable, it tells you the IP address you should go by, the range of IP address on the network you’ve connected to, where you can resolve domain names to IP addresses. It also tells you the address of a default gateway to route traffic to, if you’re trying to reach something outside of this network.

      You can have more than one set of this configuration. Your wired network might tell you that your an address is 10.0.0.34, anything that starts with 10.0.0. is local, and to talk to 10.0.0.254 if you’re trying to get to anything else. If at the same time you also connect to a wireless network, that might tell you that your address is 192.168.0.69, 192.168.0.* is your local network, and 192.168.0.254 is your gateway out. Now your computer wants to talk to 4.2.2.2. Should it use the wireless interface and go via 192.168.0.254? or the wired one and use 10.0.0.254? Your os has a routing table that includes both of those routes, and based on the precedence of the entries in it, it’ll pick one.

      VPN software usually works by creating a network interface on your computer, similar to an interface to a WiFi card, but virtual. It then asks the OS to route all network traffic, through the new interface it created. Except of course traffic from the VPN software, because that still needs to get out to the VPN provider (let’s say, at 1.3.3.7) via real Internet.

      So if you’re following along at home, your routing table at this point might look like this:

      • traffic to 1.3.3.7 should go to 10.0.0.254 via the wired interface
      • all traffic should go to the VPN interface
      • traffic to 10.0.0.* should go to the wired interface
      • all traffic should go to 10.0.0.254 via the wired interface
      • traffic to 192.168.0.* should go to the wireless interface
      • all traffic should go to 192.168.0.254 via the wireless interface

      whenever your os wants to send network packets, it’ll go down this list of rules until one applies. With that VPN turned on, most of the time, only those two first rules will ever apply.

      If I’m reading the article correctly, what this attack does, is run a DHCP server, that when handing out routing rules, will send one with a flag that causes, for example, the last two rules to be placed at the top of the list instead of the bottom. Your VPN will still be on, the configuration it’s requested the OS to make would still be in place, and yet all your traffic will be routed out to this insecure wireless network that’s somehow set itself as the priority route over anything else.

      • @Postmortal_Pop@lemmy.world
        link
        fedilink
        English
        51 year ago

        That actually lays it out incredibly well for me. So in practice, what would I need to look out for as a wired desktop Ubuntu user with mullvad? It’s sounding like this is going to be an issue on public networks, is this something my isp can do to me at home?

        • @xabadak@lemmings.world
          link
          fedilink
          English
          21 year ago

          It all depends on how much you trust the devices on your LAN. So your ISP can’t do anything unless they own and control your router, since that is on your LAN. So one concern might be if you connect your PC to coffee shop wifi, since all other devices in the shop are on the same LAN, not to mention the coffee shop owns the wifi router and can also perform the attack. Another concern might be if a family member in your house has a device that got hacked, then all devices in your house are vulnerable.

  • Yardy Sardley
    link
    fedilink
    English
    281 year ago

    I think this is a good enough reason to actually put in some effort to phase out ipv4 and dhcp. There shouldn’t be a way for some random node on the network to tell my node what device to route traffic over. Stateless ipv6 for the win.

    • @9point6@lemmy.world
      link
      fedilink
      English
      171 year ago

      Efforts have been put in for several decades now

      I still remember all the hype around “IPv6” day about 12 years ago…

      Any day now…

      • @Scrollone@feddit.it
        link
        fedilink
        English
        -41 year ago

        Honestly I’m on a IPv6 provider (with CGNAT for IPv4-only services) and everything works fine.

        I think people are just lazy.

        • @9point6@lemmy.world
          link
          fedilink
          English
          71 year ago

          I don’t think it’s laziness, it’s financial incentive—there’s not much demand for something that might be quite a lot of work from a lot of companies’ perspectives.

          Hell, IIRC AWS only started supporting IPv6 completely on the cloud service that hosts a huge percentage of the internet’s traffic about 3 years ago

          I’m a little curious about your situation though—with regards to the CGNAT, does everyone on your ISP effectively share one (or a small pool of) IPv4 address(es)? Do you ever see issues with IP restrictions? (e.g. buying tickets for events, etc)

          • @Scrollone@feddit.it
            link
            fedilink
            English
            5
            edit-2
            1 year ago

            Luckily I haven’t noticed any restrictions.

            My provider uses the same IPv4 for four different customers, and it lets each one of them use a different range of 12000 ports each (of course, the random user on ports 1-12000 is the “luckiest” one because he could theoretically host a website on port 80 or 443).

            But this means I can expose my Torrent client or Plex or any other services on a custom port, directly forwarded.

            It works really well in my experience. The provider is Free (France).

            • @ChuckEffingNorris@lemmy.ml
              link
              fedilink
              English
              31 year ago

              CGNAT is certainly becoming a real issue. In the UK at least legacy providers have millions of IP addresses in the bank and new disruptive providers do not have access to these except at extremely inflated rates.

              When I changed one of these new disruptive providers I was unaware that CGNat would be imposed and all of my security cameras were no longer accessible. Fortunately they did move me off CGNat when I asked but they said it may not be forever.

              Like always I don’t think this will be dealt with in any speedy capacity, unless we get lucky and some correctly positioned legislator can’t do what they want to do with their internet connection. Then it might get expedited.