reklama

Storm botnet - "elegantný" malware

Pamätníci si určite spomenú na DOS-ové víry typu OneHalf, ktoré boli technicky vyspelé - využívali polymorfizmus, rootkitie techniky schovaním sa v protected mode a prepnutím DOSu do VM8086 módu, apod. Windowsie víry boli pritom dlho technicky zaostalé, dlho na úrovni manuálnych vírov, ktoré užívateľ musel sám spustiť. Situácia sa pomaly vyvíjala až prišiel Storm malware - využíva snáď všetky známe techniky - polymorfizmus, rootkitie skrývanie, vírové updaty, plus novinky: decentralizácia cez DHT P2P, aktívna obrana proti narušiteľom botnetu... The Dark Side of Software Engineering.

Písmo: A- | A+
Diskusia  (7)

Trocha histórie

Windowsie víry dlho používali maximálne sociálne inžinierstvo - psychologická metóda jak užívateľa donútiť vír spustiť. Potom nasledovali triky s dvojitou príponou, spamovanie via instant messengery (stále socialne inžinierstvo)... Až sa dostali ku "klasickej metóde" napadania zraniteľných systémov - buffer overflow (Sasser, Slammer, ANI cursor exploit, GDI jpeg exploit, ...).

Nasledovali rozličné techniky ako sa vynúť antivírom - vypínanie procesov antivíru, využívanie "medzivrstvy" layered service provider a iné rootkitie techniky ako "vešanie sa" na systémové služby, prerušenia, skrývanie svojich procesov, sieťových spojení, využívanie ACPI. Zvláštne je, že polymorfizmus sa medzi windowsími vírmi moc neuchytil...

SkryťVypnúť reklamu
Článok pokračuje pod video reklamou

V podstate dosť dlho trvalo (vyše 10 rokov), kým aj windowsie víry začali byť aspoň tak sofistikované ako ich predchodcovia z čias DOSu. Až kým neprišiel Storm malware (má kopu ďalších názvov). Ten používa snáď všetky známe techniky plus kopu novininiek. Neviem koľko stál jeho vývoj/udržovanie, ale musel byť hrozne drahý - kto si to zaplatil, musí mať veľmi dobré dôvody.

Stormworm vitals

Meno je odvodené z predmetu správy spamu, ktorou sa začal šíriť prvý krát: “230 dead as storm batters Europe.” Iné bežné mená: Peacomm, Nuware, Zhelatin, ... Nedá sa presne zaradiť do škatuliek vírus/worm/trojan, pretože je všetkým zároveň. Vďaka decentralizácii je veľmi odolný (vyzerá že perzistencia/reziliencia Storm botnetu je jednou z najpodstatejších vlastností).

SkryťVypnúť reklamu
reklama

Hlavné "fíčury" v skratke:

  • decentralizovaný cez distribuovanú hashtabuľku (skrátene DHT, založené na jednej implementácii Kademlie)

  • používa fast-flux DNS

  • updatovaný a vyvíjaný za behu, polymorfizmus verzií

  • rootkitie techniky skrývania

  • šíri sa snáď všetkými možnými cestami (spam, scanovanie a napadanie známych zraniteľností, ...)

  • heterogénna sieť v zmysle "deľby práce" - jednotlivé časti robia rozličné veci (jedna pre DDoS, ďalšia pre spamovanie, atď).

Stormworm - vývoj

Snáď úplne najvtipnejšiu vlastnosť spomenem hneď na začiatku: blacklistuje si niekedy sám svoje vlastné verzie, ktoré napr. mali implementačné chyby v protokole, aby chybné verzie neznefunkčnili celý botnet (zrejme sa nedá "zákazníkom" zavolať, aby si stiahli novšiu verziu ;-)). Vývoj vyzeral v skratke asi takto:

  1. vír ako nešifrovaný driver wincom32.sys

  2. spakovaný/obfuscovaný driver

  3. pridaná P2P funkcionalita

  4. anti-virtualizačný a anti-debugovací kód pridaný, "opatchuje" tcpip.sys

  5. šifrovanie na P2P vrstve

Ochrana proti napadnutiu botnetu iným útočníkom

Storm botnet má podarený obranný mechanizmus - akonáhle sa niekto neautorizovaný snaží napojiť do botnetu, botnet ho za-DDoS-uje naspäť na jeho IP adresu a zaplaví mu linku obrovským množstvom paketov.

Decentralizácia je v podstate tiež jeden z pasívnych ochranných prvkov - sieť je tým pádom de facto "nevypnuteľná". Už odstaviť jeden server distribuujúci malware napr. v Číne dá dosť práce, ale v prípade decentralizovanej P2P siete je absolútne nemožné odstaviť dostatočný počet uzlov, aby sa sieť rozpadla.

SkryťVypnúť reklamu
reklama

Plus použitie spomínaného fast-flux DNS: skrývanie skutočných "malware delivery sites" za kaskádami niekoľkých proxy, takže vstupný bod aj skutočný delivery site sa môže ľubovolne zmeniť, stačí použiť DNS záznam s krátkou životnosťou. Táto metóda už trocha pripomína vytváranie tunelov v Tore alebo okruhov v I2P .

Už len čakám, kedy si vytvoria aj vlastnú sieť certifikačných autorít, web-of-trust alebo použijú nejaký podobný trust model, aby mohli ďalej vyvíjať šifrovanie/integritu botnetu.

Kademlia/Overnet

Ako už bolo spomenuté, botnet využíva implementáciu Kademlie na DHT. Zrejme použili nejakú hotovú implementáciu namiesto písania vlastnej, pretože štandardné Overnet dissectory vo Wiresharku dokážu rozkódovať (nie rozšifrovať!) správy v DHT sieti.

SkryťVypnúť reklamu
reklama

Na pripojenie (bootstrap) do siete stačí poznať jeden známy uzol. Zoznam "vstupných" uzlov je definovaný pri ďalšej várke rozosielaného malwaru, tj. nestačí zhodiť len pár uzlov, ktoré sa používajú ako vstupné, pretože proste použijú najbližšie iné. Samozrejme už len odpojenie pár uzlov "právnou cestou" je neskutočne náročné.

Kademlia sa naviac veľmi dobre škáluje pri veľkom počte uzlov - ak sa sieť zväčší dvojnásobne, počet správ na nájdenie uzla sa zvýši len o konštantu (1-3). Tj. počet správ na nájdenie uzla a prípadnú replikáciu je logaritmický vzhľadom k veľkosti siete.

Oproti pôvodnej implementácii Kademlie pridali podporu TCP (predtým UDP), šifrovanie, detekciu a prechádzanie cez NAT (podobne I2P implementuje NAT traversal cez UDP hole punching).

Odhadnúť počet živých strojov v botnete je veľmi ťažké kvôli decentralizácie siete, ale je možné napísať crawler. Namerané počty hovoria cca o 50-tisíc živých strojoch v botnete (čo je dolný odhad). Celkový počet vrátane mŕtvych uzlov je cca 300-600 tisíc ("mŕtve" znamená, že môžu byť vypnuté alebo odstránené cez antivíry).

Kto je v pozadí

Existuje pár špekulácií, že Storm botnet majú na svedomí spravodajské služby. Na bežných "komerčných spammerov" je Storm botnet veľmi komplikovaný (alebo vývoj zaplatil veľmi bohatý spammer); evidentne jednou z hlavných vlastností je odolnosť siete, čo nie je až také nutné v prípade komerčného spamovania, pretože sa dá sieť vždy vytvoriť nanovo (a asi je to jednoduchšie než udržovať sieť živú cez updaty - kód Storm malwaru je updatovaný za behu, to je servis!).

Naviac typické "komerčné botnety" pridávajú nové fíčury len keď musia (aby unikli antivírom apod.), Storm botnet je kvalitatívne o niekoľko rádov sofistikovanejší ako ktorýkoľvek iný malware (zrejme si niekto povedal, že keď to už robí, tak to spraví poriadne a zrejme to bolo poriadne drahé).

Linky/references

Ivan Regalis

Ivan Regalis

Bloger 
  • Počet článkov:  6
  •  | 
  • Páči sa:  0x

I am he who says 'I am'. Z vášho pohľadu: prográmator, control freak, konfliktotvorný. (meno je pseudonym, pri krátkom prehľade článkov zistíte rýchlo prečo). The mechanisms of destructive behavior can be an artform in itself. This would be the way of misanthrope - in order to create you must destroy. Zoznam autorových rubrík:  Počítačová bezpečnosťDamned Celestial StateSúkromnéNezaradené

Prémioví blogeri

Iveta Rall

Iveta Rall

88 článkov
Pavol Koprda

Pavol Koprda

10 článkov
Juraj Hipš

Juraj Hipš

12 článkov
Post Bellum SK

Post Bellum SK

75 článkov
Martina Hilbertová

Martina Hilbertová

49 článkov
reklama
reklama
SkryťZatvoriť reklamu