Als een aanvaller in staat is om rechtstreeks op uw router commando’s uit te voeren, kan hij:
- Aanval plegen op uw interne netwerk en andere apparaten die daarop zijn aangesloten.
- De router hacken door malware te installeren of de router te verbinden met het Mirai Botnet.
- Het HTTP-verkeer van een gebruiker afluisteren.
- Op afstand commando’s uitvoeren op uw router als een
root
gebruiker. - Uitschakelen of opnieuw opstarten van uw apparaat.
- Steek uw Wi-Fi netwerk credentials samen met het netwerk SSID (naam) af.
Het aanvalsoppervlak is groot genoeg om veel thuisgebruikers en bedrijven schade toe te brengen. Ik zal enkele van deze scenario’s in detail beschrijven om u te laten zien hoe gevaarlijk deze kwetsbaarheid is.
Een aanvaller is in staat om een commando op uw router uit te voeren als een root
gebruiker zonder uw medeweten. Het gebeurt op een transparante manier, u hoeft alleen maar een kwaadaardige website te bezoeken. Als u uw uitgaande verbindingen niet bewaakt, is het niet mogelijk om dit soort activiteit te detecteren zonder de extra tools.
De eenvoudigste payload om de router te herstarten van een persoon die uw website bezoekt:
Code wordt uitgevoerd wanneer image wordt geladen vanaf de externe server (uw router). Het is niet mogelijk om de inhoud van het antwoord te krijgen, maar alleen om op afstand een commando uit te voeren.
Gegevens op afstand uitlezen van uw router
Het uitvoeren van een commando op afstand is niet gecompliceerd omdat het niet nodig is om de inhoud van het antwoord terug te krijgen naar de aanvaller. Het terugkrijgen van een antwoord is niet mogelijk vanwege de Same-Origin Policy (SOP) restricties.
De Same-Origin Policy is een beveiligingsmodel voor zowel browsers als plugins die in een browser werken (d.w.z. Java, Flash of Silverlight). Het belangrijkste doel van deze functionaliteit is om de toegang tot de inhoud van de ene website vanaf de andere website te blokkeren.
De toegang tot de inhoud van de website wordt verleend afhankelijk van de oorsprong die voor beide is opgegeven. De waarheidstabel voor de oorsprong ziet er als volgt uit:
* – Het poortnummer wordt door IE/Edge-browsers niet opgenomen in de component “oorsprong” (meer).
Als website “A” niet dezelfde oorsprong heeft als website “B”, betekent dit dat we de inhoud van website “B” niet vanaf “A” en terug kunnen lezen. We nemen aan dat de Cross-Origin Resource Sharing (CORS) voor geen enkele server is ingeschakeld, wat waar is voor de standaard configuratie.
Router apparaat heeft niet dezelfde oorsprong als de website van de aanvaller. Toch kan de aanvaller die communicatie bereiken met technieken om het Same-Origin beleid te omzeilen. Er waren zelfs kwetsbaarheden in het SOP-mechanisme zelf:
- CVE-2015-7188 – Trailing whitespace in hostnamen van IP-adressen kan same-origin policy omzeilen.
- CVE-2016-1967 – Same-origin policy violation using performance.getEntries and history navigation with session restore.
- CVE-2016-1949 – Same-origin beleidsschending met behulp van Service Workers met plugins.
Het omzeilen van het Same-Origin Policy is mogelijk door kwetsbare browser/plugin uit te buiten of door gebruik te maken van de techniek genaamd DNS Rebinding.
DNS Rebinding attack
DNS Rebinding attack maakt het mogelijk om gegevens van een andere oorsprong te lezen door het Same-Origin Policy mechanisme te omzeilen. In het meest basale scenario is het mogelijk om het DNS record (“A”) van een domein te vervangen terwijl de gebruiker de kwaadaardige website bezoekt.
Als deze aanval succesvol was, is de aanvaller in staat om elk antwoord te lezen van een commando dat op de router op afstand wordt uitgevoerd ( 192.168.1.1
).
Sensitieve gegevens aan de kant van de router
De aanvaller is nu in staat om de inhoud van de router op afstand te lezen. Hij kan een nvram show
commando uitvoeren dat alle configuratie-instellingen van uw router bevat zoals:
Met het genoemde commando worden veel gevoelige gegevens teruggestuurd. De aanvaller kan niet alleen gegevens van de router lezen, maar ook nieuwe waarden voor die instellingen instellen. Dit betekent dat hij in staat is om:
- Wijzig uw Wi-Fi wachtwoord.
- Op afstand beheer in te schakelen (netgear.com – documentatie).
- Firewall uitschakelen.
- VPN instellen naar de door hem gewenste locatie.
- Update nvram settings, it will load saved settings after device restart (
nvram set http_passwd=test; nvram commit
). - …and much more.
Hoe te beschermen tegen dit soort aanvallen?
Er is geen enkele eenvoudige methode om te beschermen tegen alle varianten van deze aanval. Ik zou aanraden om de httpd
daemon op de router uit te schakelen en alle inkomende verbindingen naar je LAN vanaf het Internet te blokkeren.
Bescherming tegen DNS Rebinding aanval.
Het standaard beschermingsmechanisme aan de server kant is het controleren van de Host
header. In een standaard scenario wanneer uw browser verbinding maakt met facebook.com
dan stuurt het Host: facebook.com
header.
Als er sprake is van een DNS Rebinding aanval en de gebruiker bezoekt attacker.com
die probeert misbruik te maken van het SOP mechanisme dan maakt de browser verbinding met facebook.com
en stuurt Host: attacker.com
header. Als de server goed is geconfigureerd dan zou dit verzoek moeten blokkeren omdat Host
header niet overeenkomt met het oorspronkelijke verzoek.
Netgear router blokkeert de verbinding niet, zelfs als Host
header ongeldig is en daarom slaagt deze aanval, wat waar is voor de meeste routers.
Blokkeer verbinding met uw LAN vanaf het Internet.
De eenvoudigste methode is om ALLE verbindingen van het Internet naar uw lokale netwerk te blokkeren. Het blokkeert elke vorm van communicatie van de browser naar uw lokale apparaten zoals routers en andere computers.
Voor iedereen die met Mac OS X werkt is het mogelijk om de applicatie Little Snitch te installeren die in staat is om de toegang te beperken tot gedefinieerde subnetten of specifieke IP-adressen voor elke applicatie of systeemproces.
Herstel dit probleem en u bent niet alleen beschermd tegen deze exploitatietechniek, maar ook tegen toekomstige bedreigingen die zijn gebaseerd op de DNS Rebinding-aanval.