Det avslöjades nyligen att en metod upptäckts som gör det möjligt för en angripare att tvinga ut en användares trafik ur deras VPN-tunnel med hjälp av inbyggda funktioner i DHCP-protokollet.
Denna nya angreppsmetod , kallad "TunnelVision", gör det möjligt att omdirigera ett offers trafik via en angripares värd (förutsatt att angriparen har tillgång till det lokala nätverket eller kontrollerar ett trådlöst nätverk).
Det är viktigt att notera att idén med lokala routingändringar inte är ny och har använts ofta i attacker utformade för att förfalska DNS-servrar. Till exempel påverkade TunnelCrack, som omdirigerade trafik via en ersättande standardgateway, alla testade iOS VPN-klienter, såväl som macOS-, Windows-, Linux- och Android-VPN:er.
Om TunnelVision
Det nämns att kärnan i TunnelVision är att angriparen kan starta sin egen DHCP-server och använda den för att skicka information till klienten för att ändra routningen . Mer specifikt kan en angripare använda DHCP-alternativ 121, som är utformat för att överföra statisk routinformation , för att modifiera routingtabellen på offrets maskin och dirigera trafik utan att gå via VPN.
Syftet med denna forskning var att testa denna teknik mot moderna VPN-leverantörer för att fastställa deras sårbarhet och meddela allmänheten om detta problem. Det är därför vi kom överens med CISA om att lämna in en CVE när vi avslöjar för dem och varför vi bestämde oss för att namnge sårbarheten.
Omdirigeringen uppnås genom att konfigurera en serie rutter för subnät med prefixet /1 , vilka har högre prioritet än standardrutten med prefixet /0. Följaktligen kommer trafiken, istället för det virtuella nätverksgränssnittet som konfigurerats för VPN, att dirigeras via det fysiska nätverksgränssnittet till angriparens värd på det lokala nätverket.
Istället för att skickas via VPN:et skickas trafiken i klartext utan tunnel till angriparens system. Detta problem påverkar alla VPN-klienter som inte använder isolerade nätverksnamnrymder för att dirigera trafik till tunneln eller som inte upprättar paketfiltreringsregler som förbjuder dirigering av VPN-trafik genom befintliga fysiska nätverksgränssnitt.
TunnelVision kan utföras på alla system som stöder DHCP-alternativ 121 , inklusive Linux, Windows, iOS och macOS, oavsett vilket VPN-protokoll som används (Wireguard, OpenVPN, IPsec) och vilken krypteringssvit som används.
Det nämns att Android inte är mottagligt för denna attack eftersom det inte bearbetar alternativet 121 i DHCP. Även om attacken tillåter åtkomst till trafik, tillåter den inte avlyssning av anslutningar eller bestämning av innehåll som överförs via säkra protokoll på applikationsnivå, såsom TLS och SSH. Till exempel kan angriparen inte bestämma innehållet i förfrågningar som skickas via HTTPS, men kan förstå vilka servrar förfrågningarna skickas till.
För att skydda mot en attack kan flera åtgärder implementeras på paketfiltreringsnivå: förbjuda att paket som är avsedda för VPN-gränssnittet skickas via andra nätverksgränssnitt, blockera DHCP-paket med alternativ 121, använda ett VPN i en separat virtuell maskin eller container isolerad från det externa nätverket, eller använda speciella tunnelkonfigurationslägen som använder Linux-nätverksnamnrymder.
För att förfalska rutter har man också utvecklat en specialdesignad USB-dongel som simulerar funktionen hos ett nätverkskort och, när den är ansluten till en dator via DHCP, deklarerar sig själv som en gateway. Dessutom, när gatewayen är under angriparens kontroll (till exempel när ett offer ansluter till ett trådlöst nätverk som kontrolleras av en angripare), har man utvecklat en teknik för att injicera paket i tunneln som uppfattas som att de kommer från VPN-nätverksgränssnittet. Flera skript har också publicerats för att experimentera med dessa attacker.
Slutligen, om du är intresserad av att lära dig mer om detta , kan du hitta detaljerna på följande länk.