NAT slipstreaming, een bypass-aanval, geeft toegang tot elke TCP / UDP-service

Samy kamkar (een beroemde beveiligingsonderzoeker die bekend staat om het maken van verschillende geavanceerde aanvalsapparaten, zoals een keylogger op een USB-telefoonoplader) heeft een nieuwe aanvalstechniek geïntroduceerd genaamd "NAT slipstreaming".

De aanval maakt het mogelijk om bij het openen van een pagina in een browser een verbinding tot stand te brengen vanaf de server van de aanvaller naar elke UDP- of TCP-poort op het systeem van de gebruiker die zich achter de adresvertaler bevindt. De Attack Toolkit is gepubliceerd op GitHub.

De methode vertrouwt op het voor de gek houden van het ALG-verbindingsopsporingsmechanisme (Application Level Gateways) in adresvertalers of firewalls, die wordt gebruikt om de NAT-doorsturing te organiseren van protocollen die meerdere netwerkpoorten gebruiken (één voor gegevens en één voor controle), zoals SIP. H323, IRC DCC en FTP.

De aanval is van toepassing op gebruikers die verbinding maken met het netwerk gebruikmakend van interne adressen uit het intranetbereik (192.168.xx, 10.xxx) en staat toe dat alle gegevens naar elke poort worden verzonden (geen HTTP-headers).

Om een ​​aanval uit te voeren, het is voldoende als het slachtoffer de JavaScript-code uitvoert die door de aanvaller is voorbereidBijvoorbeeld door een pagina op de website van de aanvaller te openen of door een kwaadwillende advertentie op een legitieme website te bekijken.

In een eerste fase de aanvaller verkrijgt informatie over het interne adres van de gebruiker, Dit kan worden bepaald door WebRTC of, als WebRTC is uitgeschakeld, door brute force-aanvallen met responstijdmeting bij het aanvragen van een verborgen afbeelding (voor bestaande hosts is een poging om een ​​afbeelding op te vragen sneller dan voor niet-bestaande hosts vanwege time-out voordat een TCP RST-antwoord wordt geretourneerd).

In de tweede fase, de JavaScript-code uitgevoerd in de browser van het slachtoffer genereert een groot HTTP POST-verzoek (die niet in een pakket past) naar de server van de aanvaller met behulp van een niet-standaard netwerkpoortnummer om de afstemming van de TCP-fragmentatieparameters en de MTU-grootte op de TCP-stack van het slachtoffer te starten.

Als reactie hierop de server van de aanvaller retourneert een TCP-pakket met de MSS-optie (Maximale segmentgrootte), die de maximale grootte van het ontvangen pakket bepaalt. In het geval van UDP is de manipulatie vergelijkbaar, maar wordt er een groot WebRTC TURN-verzoek verzonden om fragmentatie op IP-niveau te activeren.

«NAT Slipstreaming maakt gebruik van de browser van de gebruiker in combinatie met het Application Level Gateway (ALG) -verbindingsopsporingsmechanisme dat is ingebouwd in NAT, routers en firewalls door interne IP-extractie te koppelen via een time-attack of WebRTC, fragmentatieopsporing van geautomatiseerde externe IP en MTU, masseren van TCP-pakketgrootte, misbruik van TURN-authenticatie, nauwkeurige controle van pakketlimieten en protocolverwarring door browsermisbruik, "zei Kamkar in een analyse.

Het belangrijkste idee is dat, met kennis van de fragmentatieparameters, kan stuur een groot HTTP-verzoek, waarvan de wachtrij op het tweede pakket valt. Tegelijkertijd wordt de wachtrij die naar het tweede pakket gaat, zodanig geselecteerd dat het geen HTTP-headers bevat en wordt geknipt op gegevens die volledig overeenkomen met een ander protocol waarvoor NAT-traversal wordt ondersteund.

In de derde fase, met behulp van de bovenstaande manipulatie, genereert de JavaScript-code een speciaal geselecteerd HTTP-verzoek (of TURN voor UDP) en stuurt het naar de TCP-poort 5060 van de server van de aanvaller, die na fragmentatie in twee pakketten wordt opgesplitst: pakket met HTTP-headers en een deel van de gegevens en een geldig SIP-pakket met het interne IP-adres van het slachtoffer.

Het systeem voor het volgen van verbindingen op de netwerkstack beschouwt dit pakket als het begin van een SIP-sessie en het zal pakket doorsturen mogelijk maken voor elke poort die door de aanvaller is geselecteerd, ervan uitgaande dat deze poort wordt gebruikt voor gegevensoverdracht.

De aanval kan worden uitgevoerd ongeacht de gebruikte browser. Om het probleem op te lossen, stelden Mozilla-ontwikkelaars voor om de mogelijkheid te blokkeren om HTTP-verzoeken te verzenden naar netwerkpoorten 5060 en 5061 die zijn gekoppeld aan het SIP-protocol.

De ontwikkelaars van de Chromium-, Blink- en WebKit-engines zijn ook van plan een vergelijkbare beschermingsmaatregel te implementeren.

bron: https://samy.pl


Laat je reactie achter

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *

*

*

  1. Verantwoordelijk voor de gegevens: Miguel Ángel Gatón
  2. Doel van de gegevens: Controle SPAM, commentaarbeheer.
  3. Legitimatie: uw toestemming
  4. Mededeling van de gegevens: De gegevens worden niet aan derden meegedeeld, behalve op grond van wettelijke verplichting.
  5. Gegevensopslag: database gehost door Occentus Networks (EU)
  6. Rechten: u kunt uw gegevens op elk moment beperken, herstellen en verwijderen.