Pokud je útočník schopen provádět příkazy přímo na vašem routeru, může:
- Útočit na vaši vnitřní síť a další zařízení k ní připojená.
- Backdoornout router instalací malwaru nebo jej připojit k botnetu Mirai.
- Odposlouchávat HTTP provoz uživatele.
- Vykonávat vzdáleně příkazy na směrovači jako uživatel
root
. - Vypnout nebo restartovat zařízení.
- Ukrást přihlašovací údaje k síti Wi-Fi spolu s identifikátorem (názvem) sítě SSID.
Povrch útoku je dostatečně velký na to, aby poškodil mnoho domácích uživatelů i firem. Podrobně popíšu některé z těchto scénářů, abych vám ukázal, jak je tato zranitelnost nebezpečná.
Každý útočník je schopen vydat příkaz na vašem směrovači jako root
uživatel bez vašeho vědomí. Děje se tak transparentně, stačí pouze navštívit škodlivou webovou stránku. Pokud nemonitorujete odchozí spojení, není možné takovou aktivitu bez dalších nástrojů odhalit.
Nejjednodušší payload pro restartování routeru osoby, která navštíví vaše webové stránky:
Kód se spustí při načtení obrazu z externího serveru (vašeho routeru). Neumožňuje získat obsah odpovědi, ale pouze vzdáleně spustit příkaz.
Čtení dat na dálku z vašeho směrovače
Vyvolání vzdáleného příkazu není složité, protože nevyžaduje získat obsah odpovědi zpět k útočníkovi. Získání odpovědi zpět není možné z důvodu omezení Same-Origin Policy (SOP).
Same-Origin Policy je bezpečnostní model pro prohlížeče i zásuvné moduly pracující v prohlížeči (tj. Java, Flash nebo Silverlight). Hlavním účelem této funkce je zablokovat přístup k obsahu jedné webové stránky z jiné webové stránky.
Přístup k obsahu webové stránky je povolen v závislosti na původu, který je u obou zadán. Pravdivostní tabulka pro původ vypadá takto:
* – Číslo portu není zahrnuto do komponenty „původ“ prohlížeči IE/Edge (více).
Pokud webová stránka „A“ nemá stejný původ jako webová stránka „B“, pak to znamená, že nemůžeme číst obsah webové stránky „B“ z „A“ a zpět. Předpokládáme, že u žádného serveru není povoleno sdílení zdrojů napříč původem (CORS), což platí pro výchozí konfiguraci.
Zařízení směrovače nemá stejný původ jako webová stránka útočníka. Nicméně útočník může této komunikace dosáhnout pomocí technik pro obcházení zásad stejného původu. Objevily se dokonce zranitelnosti v samotném mechanismu SOP:
- CVE-2015-7188 – Trailing whitespace in IP address hostnames can bypass same-origin policy.
- CVE-2016-1967 – Porušení zásad stejného původu pomocí performance.getEntries a navigace v historii s obnovením relace.
- CVE-2016-1949 – Porušení zásad stejného původu pomocí Service Workers se zásuvnými moduly.
Obejití zásad stejného původu je možné zneužitím zranitelného prohlížeče/pluginu nebo pomocí techniky zvané DNS Rebinding.
Útok DNS Rebinding
Útok DNS Rebinding umožňuje číst data z jiného původu obcházením mechanismu zásad stejného původu. V nejzákladnějším scénáři je možné nahradit záznam DNS („A“) domény, zatímco uživatel navštěvuje škodlivou webovou stránku.
Pokud byl tento útok úspěšný, pak je útočník schopen přečíst jakoukoli odpověď příkazu provedeného na vzdáleném směrovači ( 192.168.1.1
).
Citlivá data na straně směrovače
Útočník je nyní schopen číst obsah vzdáleného směrovače. Může vydat příkaz nvram show
, který obsahuje všechna konfigurační nastavení vašeho směrovače, například:
Zmíněný příkaz vrací mnoho citlivých údajů. Útočník může nejen číst data ze směrovače, ale může také nastavit nové hodnoty těchto nastavení. To znamená, že je schopen:
- Změnit heslo Wi-Fi.
- Zapnout vzdálenou správu (netgear.com – dokumentace).
- Zakázat bránu firewall.
- Nastavit VPN na požadované místo.
- Aktualizovat nastavení nvram, po restartu zařízení načte uložené nastavení (
nvram set http_passwd=test; nvram commit
). - …a mnoho dalšího.
Jak se chránit proti těmto druhům útoků?
Neexistuje jediný jednoduchý způsob ochrany proti všem variantám tohoto útoku. Doporučil bych vypnout démona httpd
na směrovači a zablokovat všechna příchozí spojení do vaší sítě LAN z internetu.
Ochrana proti útoku DNS Rebinding.
Standardním ochranným mechanismem na straně serveru je kontrola hlavičky Host
. Ve standardním scénáři, když se prohlížeč připojí k facebook.com
, pak odešle hlavičku Host: facebook.com
.
Pokud je v provozu útok DNS Rebinding a uživatel navštíví attacker.com
, který se snaží zneužít mechanismus SOP, pak se prohlížeč připojí k facebook.com
a odešle hlavičku Host: attacker.com
. Pokud je server správně nakonfigurován, měl by tento požadavek zablokovat, protože hlavička Host
neodpovídá původnímu požadavku.
Směrovač Netgear neblokuje připojení, i když je hlavička Host
neplatná, a proto tento útok uspěje, což platí pro většinu směrovačů.
Zablokujte připojení k vaší LAN z internetu.
Nejjednodušší metodou je zablokovat VŠECHNA připojení z internetu do vaší místní sítě. Zablokuje jakoukoli komunikaci z Průzkumníka na vaše místní zařízení, jako je směrovač a další počítače.
Pro všechny, kteří pracují v systému Mac OS X, je možné nainstalovat aplikaci Little Snitch, která dokáže omezit přístup do definovaných podsítí nebo na konkrétní IP adresy pro každou aplikaci nebo systémový proces.
Oprava tohoto problému vás ochrání nejen před touto technikou zneužití, ale také před budoucími hrozbami založenými na útoku DNS Rebinding.