Celý Internet lze zavirovat za 30 vteřin

Experti již dlouho upozorňují na nebezpečí bleskově se šířících červů. Je s podivem, že lidé si neuvědomují, že červy typu Code Red, v jejich očích tak nebezpečné, jsou spíše špatnými kousky kódu. V současnosti prakticky neznáme žádný obranný mechanismus, který by zabránil šíření těch dobře napsaných. Krátká exkurze mezi jejich techniky.
Celý Internet lze zavirovat za 30 vteřin
„Flash wormy a pravděpodobně také Warhol wormy dokáží infikovat téměř všechny zranitelné stroje dříve, než dokáže útok jakákoliv člověkem řízená komunikace identifikovat,“ dočteme se ve studii „Jak se ve volném čase zmocnit Internetu.“

Dvanáctého července 2001 spatřila světlo světa první verze červa Code Red. Ta ovšem obsahovala triviální chybu a tak k jejímu většímu rozšíření nedošlo. Již 19. července se objevila jeho opravená verze, později často označovaná jako Code Red I. S využitím chyby .ida v serverech Microsoft IIS dokázal CR I infikovat téměř všechny zranitelné počítače během pouhých 14 hodin. Potom červ podle plánu usnul. Znovu se vzbudil 1.srpna, aby i přes to, že se o něm již vědělo, napadl ještě více počítačů. To se v patnáctidenních intervalech několikrát opakovalo.

Je však třeba podotknout, že Code Red byl po teoretické stránce velmi špatně navržený červ. Existují i techniky, jak jeho šíření dále výrazně urychlit a nedat tak administrátorům sebemenší šanci reagovat. Nicholas Weaver takového červa nazývá Warhol worm podle citátu Andyho Warhola: „V budoucnu bude mít každý svých 15 minut slávy.“ Přesně tato doba by měla stačit k infikování téměř všech počítačů na internetu obsahujících danou chybu.

Nejprve se ale na chvilku zastavíme a řekneme si, o co vlastně jde. Pod pojmem červ je často myšlen hloupoučký program, který se šíří e-mailem a vždy ke svému šíření potřebuje uživatelskou interakci: buď ve formě spuštění přílohy nebo pouhého prohlédnutí zprávy. Ve světle vyspělejších červů jsou však tyto relativně neškodné a nebudu se jimi zabývat. Zajímat mě bude druhá kategorie, tedy červy, které se šíří po síti sami a napadají počítače přes nějakou chybu v software bez nutnosti uživatelovy interakce. Dobrým příkladem je již zmíněná chyba v MS IIS označovaná jako .ida. Tento typ červa většinou získá na počítači administrátorská práva a může být dále využit téměř k čemukoliv: od DDOS útoků na další cíle přes sbírání citlivých informací až po kompletní destrukci dat na nakaženém stroji.

Před potenciálem takových červů varovalo již několik studií podložených praktickými zkušenostmi, statistikami a simulacemi. Trojice výzkumníků Stuart Staniford, Vern Paxson a Nicholas Weaver vydala studii „Jak ve volném čase ovládnout Internet,“ kde probírají techniky, jak stlačit dobu potřebnou k rozšíření červa pod 15 minut. Současně s ní vznikal dokument Staniforda, Grima a Jonkmana, kteří celkovou dobu dále snižují na pouhých 30 sekund. Alarmující je na tom fakt, že celý koncept je velmi jednoduchý a zvládne jej implementovat každý méně zkušený programátor během pár dní. Jelikož se domnívám, že se o této problematice téměř nemluví, pokusím se alespoň nastínit základní popisované techniky a možná řešení.

Abychom jako autoři červa udeřili co nejvíce, musíme se snažit minimalizovat trvání celého cyklu od uvolnění červa až po jeho úplné rozšíření na téměř všechny počítače (stav nasycení), aby neměli administrátoři čas reagovat. Křivka šíření takového červa je v druhé fázi exponenciální. Většina času bývá ale potřeba k překonání první fáze po vypuštění, kdy je ještě infikováno velmi málo strojů. Po překonání této fáze nastane velmi rychlý růst. Jak ale urychlit nástup červa?

Warhol worm

Weaver navrhuje využít tzv. hit-listu – předem připraveného seznamu vhodných cílů útoku. Cracker provede v předstihu menší scan a vytipuje si stroje s danou verzí operačního systému, příslušného software a dobrou konektivitou. Takové scany jsou natolik běžné, že téměř není možné to zaznamenat. Pokusy se simulátorem údajně ukázaly, že pro Warhol worm postačí seznam 10 000 – 40 000 IP adres. Při vypuštění červ nese seznam celý, ale v dalších generacích ho již dělí mezi své potomky na nově napadených strojích, čímž dojde k jeho rychlému prohledání a infikování napadnutelných adres.

Druhou fázi rychlého exponenciálního růstu můžeme dále podpořit odstraněním problému s duplikovaným testováním již napadených strojů. Code Red zkoušel volit nové adresy k testování náhodně. To je velmi neefektivní, protože se „sondami“ plýtvá i na již napadené/testované stroje. To by měla odstranit technika permutativního scanování. Každý červ má k dispozici jakousi pseudonáhodnou posloupnost všech 2^32 IP adres v adresním prostoru. Tento seznam je pro všechny červy stejný (není nutné ho přenášet celý, k vygenerování permutace postačí šifrovací algoritmus s předem zvoleným klíčem). Na začátku si červ náhodně zvolí místo, ze kterého bude po seznamu postupovat a zkouší všechny adresy v řadě. Pokud nalezne již napadený stroj, ví, že na následující sekvenci již nějaký jiný červ pracuje (posloupnost je pro všechny stejná, takže ji již musí vykonávat někdo jiný) a začne z nového náhodného místa seznamu. Celý mechanismus se tak chová jako náhodný scan, ale omezuje se opakování. V případě, že červ několikrát po sobě narazí na již infikovaný stroj, došlo zřejmě již k nasycení – infikování všech počítačů.

V takovém případě se může červ nejen uspat a vyčkávat dalších příkazů, ale může také provést destrukční aktivitu. Všimněme si, že u klasických virů je problémem zvolit laťku mezi destrukcí a replikací. Virus, který bude ničit brzy po napadení, nebude mít dost času dále se šířit. Naopak virus, který se specializuje na šíření, může být zničen dříve, než se dostane k samotné destrukci. Toto ale u Warhol wormů odpadá, protože červ se dozví, kdy došlo ke stavu nasycení. Může tedy zahájit destrukci v okamžiku, kdy již v podstatě není co infikovat. A zopakujme, že to může být i dříve než 15 minut po jeho vypuštění. Rozměry nákazy mohou být vskutku monumentální: i milion(y) strojů.

Počet cílů však nemusí být omezen pouze na počítače přímo dostupné z Internetu či na jednu konkrétní chybu. V praxi se může spíše osvědčit červ využívající několika různých chyb a komunikačních kanálů. Tím způsobem může snadno přeskočit firewall pomocí kódu zabaleného v mailu a dále se šířit pomocí topologicky orientovaného scanování (prohledávání blízkých adres) i ve vnitřních sítích. Vůbec se nejedná jen o říši snů, takovou techniku využila třeba Nimda.

Flash worm

Koncept flash wormu předpokládá, že cracker provede předem kompletní scan celého internetu. Není to tak nereálné, jak by se mohlo zdát. Na nejrychlejších linkách může takový scan zabrat pouhé dvě hodiny, na „pomalejších“ to bude spíš v řádu dnů. Pokud jej navíc budete provádět náhodně, rozložený na další časový úsek, téměř nikdo si vás nemůže všimnout. Seznam údajně bude mít přibližně 50 MB nekomprimovaný, což se dá vhodnou kompresí snížit na pouhých 13 MB. Toto množství dat se ale v červu nachází pouze při vypuštění. V dalších generacích se opět bude dělit mezi potomky. Vypuštění by na rychlé lince nemělo trvat déle než 2-3 sekundy, poté je již nastartován exponenciální růst, který by měl vrcholit nasycením kolem 30. sekundy.

Wormnet

Poněkud staršího data (2000) je text „I don`t think I really love you“ (název paroduje jméno červa I Love You) s podtitulem „Psaní červů pro zábavu i pro zisk“ od Michala Zalewskiho. Jeho skupina programovala plně portovatelného červa schopného pracovat v tzv. wormnetech, tedy vlastních sítích. (Takovou techniku navrhuje i Weaver pro Warhol wormy.)

Mohli jsme již pozorovat několik červů využívajících poměrně hloupých technik aktualizace. Vždy se snažily připojit na webovou stránku či IRC kanál, které byly po odhalení červa rychle odhaleny a zlikvidovány. Wormnet je ale promyšlenější struktura, kde každý červ zná několik svých „sousedů“ a s těmi může komunikovat. Crackerovi pak postačí vložit do sítě digitálně podepsaný update, který se již sám rozšíří. Ve výše zmiňované studii se jednalo hlavně o nové moduly s exploity bezpečnostních děr, o moduly pro práci červa na nových platformách (jak hardwarových, tak softwarových) a o příkazy k činnosti (červ se šíří neškodný a až později přes wormnet dostává úkoly). Weaver na simulátoru zjistil, že při jednom permutativním scanu získá červ průměrně 5 kontaktů, při každém dalším pak 2. Tím je vytvořena dostatečně redudantní a rychlá síť.

Wormnet, moduly pro nové bezpečnostní díry a přenositelnost spolu s dalšími technikami skrývání, učení a polymorfismu zřejmě mohou zajistit červu daleko delší životnost než oněch 15 minut a místo splnění jednoho konkrétního úkolu může jít o nástroj ještě nebezpečnější a velmi těžko zneškodnitelný. Zdálo by se, že takovéto schéma již je o dost těžší implementovat než koncept jednoduchého Warhol wormu, nicméně minimálně jeden takový červ již existuje.

„Přestal jsem vyvíjet a testovat nový kód v lednu 1999. Samhain byl tehdy ve verzi 2.2 a měl asi 10 000 řádek kódu. Wojtek Bojdol pokračoval ve vývoji svého mnohem pokročilejšího wormnetu a systému infekce/monitorování do února nebo do března, ale já jsem již nenašel čas zakomponovat jeho vylepšení do hlavního stromu projektu. Tehdy jsme také smazali náš repozitář ze síťového serveru, jež jsme využívali k výměně myšlenek. Postupně jsem publikoval některé námi využívané chyby v databázi bugtraqu. Některé, hlavně ty, co jsem neobjevil já, jsme si nechali pro sebe. Příběh tímto končí. Do té doby, než přijde další deštivý den, další tři znudění programátoři,“ končí studie, prokládaná ukázkami vlastního kódu červa.

Problémy červů a možná ochrana

Snad každého napadne, že Warhol wormy a hlavně flash wormy mohou mít v pokročilejších fázích velké problémy s ucpáním sítě. Samotný worm zřejmě nebude mít více než 100 kB, přičemž se přenáší pouze na stroje, o kterých scan dokázal, že mohou být napadeny. Netroufám si však odhadnout, jestli by to mohlo způsobit ucpání sítě a výrazně zvýšit celkový čas potřebný k nasycení. Zastoupeny jsou oba názory a zdá se, že v tento aspekt bude ještě třeba lépe prostudovat.

Jinou námitkou může být, jak provést co nejanonymněji onen úvodní scan. Existuje několik řešení. Cracker může například využít veřejně přístupné databáze jako Netcraft nebo prostě vyrobit robota, který bude procházet weby stejně jako indexovací roboti vyhledávačů typu google.org. Takový robot téměř nemůže být nijak registrován. Jinou metodou je připojit do Internetu vlastní server a prostě poslouchat. Mnoho červů se samo prozradí, až vás budou testovat. Jejich hostitelský stroj samozřejmě trpí danou chybou a vy ji můžete využít také.

Toho v případě Code Red využili někteří hackeři, kteří nasadili antiwormy. Podobně pracovala i Nimda, když se snažila najít otevřená zadní vrátka po Code Red II. Z toho plyne poučení, že ideální červ by měl ihned po nákaze bezpečnostní díru opravit a zabezpečit tak svoji pozici. Z toho plyne, že na tento způsob obrany se spolehnout nemůžeme.

Dokonce jsme řekli, že člověk téměř jistě nestihne zareagovat dříve, než červ dosáhne stavu nasycení. I kdyby to nebylo 30 sekund, i kdyby to nebylo 15 minut, ani u Code Red nedokázali administrátoři rychle zasáhnout a to se jednalo o mnoho hodin. Dokonce i v druhé a následujících vlnách stále ještě bylo mnoho nezabezpečených strojů a to od sebe tyto vlny oddělovaly půlměsíční intervaly.

Profesor Weaver navrhuje vytvoření Centra pro kontrolu digitálních nemocí, které by koordinovalo jak prevenci, tak následný boj proti červu stejně jako minimalizaci škod. Jde však dále a navrhuje v zájmu bezpečnosti i poměrně tvrdé omezení toho, jak Internet funguje dnes. S tím již nelze tak jednoznačně souhlasit a mně osobně se to příliš nelíbí. Bezpečnost založená na skrývání zdrojových kódů také nefunguje.

Snad nejlepší navrhované řešení se mi zdá přechod na IPv6. To rozšíří adresový prostor a klesne tedy poměr infikovatelných strojů v určitém okruhu adres – snad jediný faktor, který výrazně ovlivňuje křivku rychlosti šíření červa. Tím by se mohl na nějaký čas vyřešit problém Warhol wormů, otázka flash wormů však zůstává nedořešena. Pravda, nebude se již jednat o kompletní scan, ale útočník může využít např. již zmíněného Netcraftu nebo sbírat adresy z bookmarků pomocí nějakého toho hloupého klikni-a-jeď e-mailového červa.

Tudíž je důležité vědět, že takové nebezpečí velmi pravděpodobně existuje. Zdá se, že je opravdu jen otázkou času, než jej někdo zneužije (A samozřejmě nemůžeme vědět, zda se tak v tichosti již nestalo.) Ačkoliv to není důvod, proč bychom neměli spát, zdá se mi podivné, že se o tom tak málo píše, zatímco např. kolem Y2k-1 byl takový „humbuk.“ Jedno z možných vysvětlení vidím v tom, že zatímco na „problém roku 2000“ jsme tu měli mnoho komerčních produktů, jak ho řešit, v případě Warhol wormů a flash wormů zatím uspokojivé řešení nemáme a tak na něm nemůže nikdo vydělávat. To je ale poměrně nešťastný přístup k řešení otázek bezpečnosti.

Diskuze (49) Další článek: Trvá vám dlouho otevření souboru ve Windows XP po síti?

Témata článku: Internet, Bezpečnostní díra, Uspokojivé řešení, Vteřina, Celá studie, Rychlá síť, Překonání, Scanování, Rychlá doba, Scan, Celý internet, Následující minuta, Znudění, Nová studie, Celý stroj, Stroj, Rychlý internet, Šíření, Warhol, Šifrovací algoritmus, Microsoft IIS, Jediný faktor, Love, Většina času


Určitě si přečtěte

Čestné prohlášení při cestě mimo okres může být i elektronické. Stačí k tomu mobil
Lukáš Václavík
COVID-19eGovernmentDoprava
Messenger a Instagram přicházejí v Evropě o funkce. Kvůli nové směrnici o soukromí
Vladislav Kluska
EvropaInstagramFacebook Messenger
Elon Musk podpořil Signal jako náhradu WhatsAppu. Aplikaci okamžitě zavalili uživatelé
Markéta Mikešová
WhatsAppElon MuskFacebook
Dostali jste nový počítač? Tohle s ním udělejte, než ho začnete používat

Dostali jste nový počítač? Tohle s ním udělejte, než ho začnete používat

** Každý nový počítač si zaslouží počáteční péči ** Odinstalujte bloatware a nezapomeňte na vhodné nastavení ** Poradíme, jak se o počítač s Windows 10 postarat

David Polesný, Stanislav Janů | 76

David PolesnýStanislav Janů
PočítačeNotebooky
Finanční správa tento měsíc spustí Moje Daně. Přiznání má být hračka
Lukáš Václavík
eIdentitaČeskoeGovernment
Konec modrých obrazovek smrti? Microsoft vydává mimořádnou aktualizaci pro Windows 10
Karel Kilián
Windows UpdateAktualizaceWindows 10
9 nejlepších českých webů, kde lze stáhnout filmy a seriály

9 nejlepších českých webů, kde lze stáhnout filmy a seriály

** Když selžou legální zdroje, můžete se zkusit obrátit na služby pro stahování souborů ** Ulož.to není zdaleka jediné, které nabízí videoobsah ke stažení ** Konkurenční služby nabízí levnější placené účty

redakce | 112

redakce
TipyHudba, filmy, seriályWeb
Čím nahradit WhatsApp: Vyberte si z 10 alternativních komunikátorů

Čím nahradit WhatsApp: Vyberte si z 10 alternativních komunikátorů

** Z WhatsAppu kvůli novým podmínkám utíkají tisíce uživatelů ** Čím nahradit populární aplikaci pro zasílání zpráv? ** Vybrali jsme pro vás 10 alternativních komunikátorů

Karel Kilián | 113

Karel Kilián
KomunikaceWhatsAppInstant Messaging