Hlavní navigace

Motherfucker: virus v bezdrátových zařízeních Ubiquiti (AirOS)

Aktualizováno 17. 5. 2016 12:43
Martin Kratochvíl

Zařízení s operačním systémem AirOS jsou ohrožena kvůli vážné bezpečnostní mezeře, která dovoluje modifikovat souborový systém bez znalosti přihlašovacích údajů. Jak se bránit?

Před pěti lety se kvůli bezpečnostní díře začal šířit virus Skynet. Možná si pamatujete na nahodilé restartovaní zařízení. Před měsícem byla popsána nová bezpečnostní díra ve všech typech zařízení AirOS. Ta umožňuje útočníkovi nahrát jakýkoliv soubor kamkoliv do souborového systému Wi-Fi zařízení bez znalosti přihlašovacích údajů.

V pondělí 16. května byl konečně vydán opravný firmware verze 5.6.5, který tuto chybu řeší. Jak se vlastně dostane do nezabezpečeného zařízení?

Infekce zařízení

Jelikož exploit umožňuje nahrání souboru kamkoliv do souborového systému, virus si nahraje veřejný klíč SSH do routeru (bez nutnosti autentizace). Také zkopíruje sám sebe do zařízení. Přihlásí se pomocí SSH a nainstaluje se. Tedy rozbalí si tar, zapíše se do souboru rc.poststart a zapíše se do perzistentní paměti. Pak se restartuje.

Po restartu

Znovu se rozbalí z taru, a spustí soubor mother. Tato matka si nastaví firewall na HTTP/HTTPS – tím můžete poznat infikované zařízení. Dále inicializuje stažení příkazu curl a několika knihoven pomocí wget. Příkaz curl potřebuje pro své šíření a nevejde se do perzistentní paměti.

Následně spustí search a začne skenovat adresní prostor. Pokud najde zařízení, které by mohlo být „airos“, zkusí na něj nahrát pomocí HTTP (HTTPS) opět svůj veřejný klíč a následně se zkusí pomocí SSH přihlásit do zařízení a nainstalovat se.

To však není vše. Skript si ukládá IP adresu pravděpodobně infikovaných zařízení a zkusí je všechny přibližně jednou za 66 666 sekund (18,5 hodiny) resetovat pomocí webového přístupu do továrního nastavení – skript fucker. Reset se podaří jen na zařízení, které se nepodařilo správně infikovat a samozřejmě mají zranitelný firmware.

Dále na hostitelském zařízení pustí odpočet na 666 666 sekund (7,5 dne) a po uplynutí přenastaví ESSID na „motherfucker“ a následně zařízení vypne. Detaily naleznete na fóru ubnt.

Jak se bránit?

Především aktualizovat na firmware 5.6.5! Zároveň je dobré nasadit firewall na HTTP nebo HTTPS, stačí jej nastavit ve webovém rozhraní zařízení. Dále je možné nastavit naslouchání zařízení na jiný než výchozí port 80 či 443. Zkušenější samozřejmě mohou využít vlastních skriptů v ubnt.

Pokud už jste byli napadeni, můžete manuálně odstranit virus pomocí SSH:

# cd /etc/persistent/
# rm mf.tar
# rm rc.poststart
# rm -R .mf
# sed -i "/^mother/d" /etc/passwd
# cfgmtd -p /etc/ -w
# reboot

Doufám, že všichni stihnete aktualizovat dříve, než naši republiku pokryje Wi-Fi nápis „motherfucker“.

Našli jste v článku chybu?