HTB: Mirai Botnet
Mirai Malware
Mirai je malware typu botnet, ktorý sa prvýkrát objavil v roku 2016. Vytvorila ho skupina mladých programátorov v USA (Paras Jha, Josiah White a Dalton Norman). Bol určený na infikovanie IoT zariadení (kamery, routery, DVR rekordéry a pod.) ktoré mali predvolené alebo slabé prihlasovacie údaje. Po infikovaní zariadenie vstúpilo do botnetu ktorý útočníci využívali na DDoS útoky. Mirai automaticky skenoval internet a hľadal zariadenia prístupné cez Telnet alebo SSH. Potom skúšal zoznam známych predvolených používateľských mien a hesiel. Najznámejšie použitie Mirai botnetu bol masívny útok na DNS poskytovateľa Dyn v októbri 2016, ktorý spôsobil výpadky veľkých služieb ako Twitter, Netflix, Reddit či Spotify. Mirai(Malware))
Toto HTB Mirailaboratórium demonštruje aké rizikové je ponechať zariadenie s predvolenými prihlasovacími údajmi bez zmeny.
Prieskum
Po prihlásení do laboratória a priradení cieľovej IP adresy je prvým krokom vždy získať prehľad o tom, aké služby stroj ponúka. Na to je najjednoduchšie použiť nástroj nmap ktorý nám umožní zistiť otvorené porty, spustené služby a aj ich verzie. Vďaka tomu vieme určiť ďalší smer prieskumu a hľadať potenciálne zraniteľnosti. Preto začnem skenom cieľa.
Na rýchle odhalenie všetkých portov použijem príkaz:

-p- skenujem všetkých 65 535 portov. --min-rate 10000 nastavuje minimálnu rýchlosť odosielania paketov (10 000 za sekundu), aby bol sken výrazne rýchlejší.
Po ukončení skenu si otvorené porty oskenujem hlbšie:

-sC spustí default NSE skripty (Nmap Scripting Engine). Tieto skripty skúšajú získať extra info o službách (verzia SSH, SSL certifikát, HTTP titulok, FTP info atď.). -sV spustí detekciu verzií služieb na otvorených portoch. Nmap sa pokúsi zistiť presný softvér a verziu.
Poprípade môžme použiť hlbši sken hneď pomocou nmap -A -Pn -T4 -p- $IP -A spustí default NSE skripty (Nmap Scripting Engine). A zapne viacero pokročilých možností: * OS detection (skúsi uhádnuť operačný systém) * version detection (zistí verzie služieb) * script scanning (default NSE skripty) * traceroute -Pn ignoruje ping (host discovery). Nmap sa bude tváriť, že host je živý a rovno skúsi porty (užitočné ak ICMP/ping je blokovaný firewallom). -T4 časovanie/agresivita. T0 = stealth, super pomalé T4 = rýchle skenovanie vhodné pre lokálne siete alebo keď vieš že nechceš čakať. T5 = extrémne rýchle ale môže spôsobiť chybovosť. -p- skenuje všetky porty (1–65535) nie len default 1000.
80/TCP
Predtým ako sa pokúsime o zneužitie tak sa pokúsime otvoriť web http://cieľová_IP:80 Stránka nám nič nevráti. Hlavičky odpovede HTTP poskytujú niekoľko náznakov:

Zaujímavá je časť X-Pi-hole. Vraví nám že sa jedná o Pi-hole. Jedná sa o DNS server ktorý beží na Raspberry Pi, linuxoch alebo dockeroch. Používa sa na blokovanie reklám a celkovo ku zlepšeniu súkromia.
Máme niekoľko možností ako zistiť viac informácií o webovej stránke napr. pomocu: Gobuster, Nikto, feroxbuster… Pre naše účely použijeme gobuster

-w určuje wordlist, teda zoznam slov alebo názvov adresárov/súborov ktoré bude nástroj skúšať. -u je cieľová URL. -x = prípony súborov ktoré má skúšať. 2>/dev/null Presmerovanie chybných alebo varovných výstupov (stderr) do „temnoty“. -k Tento prepínač hovorí Gobusteru ignorovať problémy s HTTPS certifikátmi ak by bol cieľ HTTPS. V tomto prípade hoci je URL HTTP -k väčšinou neškodí ale ak by bol cieľ HTTPS zabezpečí že certifikát self-signed neblokuje scan.
Určite navštívim /admin panel.
Site

Po preskúmaní admin panelu nevidím nič nezvyčajné. Vyskúšam default login ktorý som našiel na officiálnej stránke Pi-hole. Neúspešne
32400/TCP – Plex Media Server
Po pripojení na (http://cieľová_IP:32400) sa vyskúšame registrovať. Po prihlásení vidím verziu 3.9.1 Pokúsim sa vyhľadať exploity pre túto verziu no nič nenájdem.

Port 1877/tcp patrí historicky HP-UX WebQoS databáze, dnes už nepoužívanej takže nemá zmysel sa ním ďalej zaoberať.
Port 53/tcp dnsmasq – ľahký DNS forwarder a DHCP server často používaný v routeroch a IoT zariadeniach. (2.76 starý a zraniteľný) Skúsim recursion test či DNS odpovedá na dotazy ktoré by nemal. dig axfr @10.10.10.48 google.com mi nič nevracia.
22/tcp – SSH
Banner prezrádza že zariadenie alebo server používa Debian, konkrétne staršiu verziu Debian 8 čo umožňuje pripojenie buď s predvoleným heslom alebo cez brute-force nástroje ako Medusa a predstavuje tak riziko napadnutia zariadenia.

-h 10.10.10.48 Cieľová IP adresa, na ktorú sa Medusa pripojí. -u pi Používateľské meno. -p raspberry Heslo. -M ssh Modul Medusy ktorý určuje protokol: SSH v tomto prípade.
Po úspešnom prihlásení vyhľadám flag v user.txt Zistíme aké príkazy môžme používať ako užívateľ a ako root: sudo -l Zobrazí zoznam príkazov ktoré môže aktuálny používateľ spustiť cez sudo bez zadania hesla alebo s heslom.
sudo su - úplné root prostredie, vrátane PATH, domovského adresára (/root) a profilových premenných. find / -type f -name "user.txt" 2>/dev/null cat user.txt 
Ďalej hľadáme root flag. find / -type f -name "root.txt" 2>/dev/null 
Súbor root.txt je stratený a zrejme bude na USB kľúči. Použijeme príkazy df -h alebo mount

🙂 súbory sú vymazané. Šťastie že sme v linuxe. Skúsime použiť grep alebo string. grep --binary-files=text --context=100 'root' /dev/sdb > /tmp/root.txt strings /dev/sbd/
Pomocou obidvoch príkazov sa mi podarilo vytiahnúť root flag.

Záver
Cieľom tohto cvičenia bolo ukázať aké jednoduché je kompromitovať zariadenie s predvolenými prihlasovacími údajmi alebo so zraniteľnými službami. Na príklade Mirai sme si pripomenuli že:
- Malware využíva automatizované skenovanie internetu a hľadá slabé miesta (Telnet/SSH, default login).
- Raspberry Pi alebo iné IoT zariadenia sú častým cieľom pretože používatelia často nemenia predvolené heslá.
- Aj keď súbory zmažeme tak v Linuxe sa dajú forenzne obnoviť priamo čítaním z disku.
Mirai botnet sa stal známym nielen tým že spôsobil masívne DDoS útoky (napr. na DNS poskytovateľa Dyn v roku 2016) ale aj tým že jeho zdrojový kód bol neskôr zverejnený na internete. To viedlo k vzniku desiatok klonov a mutácií Mirai ktoré dodnes útočia na nezabezpečené IoT zariadenia. Ukázalo sa že hoci pôvodní autori boli chytení, zverejnenie kódu rozšírilo problém a dnes je Mirai základom mnohých botnetov využívaných na kybernetický zločin.