Neco malo o cervu I-Worm.Universe

Zdravim fsechny zucastnene,
vypada to, ze pro Igiho zacnu psat na plnej uvazek :-) (leda tak zadarmo, tech.poznßmka Igi) Ano, toto je dalsi clanek pojednavajici o mym dalsim programu. Igi me pozadal jestli bych nemohl napsat neco malo o samotne historii, vlastnostech a schopnostech meho noveho internetoveho cerva, ktereho jsem pojmenoval I-Worm.Universe. Protoze vim, ze Igiho stranka o virech je hodne navstevovana, rozhodl jsem se ze neco malo bych napsat mohl. Na moje posledni clanky jsem dostal mnoho mailu - vesmes slusnych, mnoho lidi me zadalo o pomoc pri programovani, hodne z nich ma pry moje dilka rada - z toho jsem vydedukoval ze moje prace neni zas tak spatna jak o ni nekteri bohati panove z bohatych softwarovych firem hovori a cas od casu vydat nejaky ten clanek neni zas tak od veci.. tak tady je.

Kratce pred dokoncenim cerva XTC jsem si precetl jeden vesmes humorny clanek na internetu, ktery se zabyval moznymi dirami v MSIE 5.0. Byla tam recena jedna zajimava myslenka - pokud by Microsoft potreboval vyuzit vypocetni vykon nekterych pocitacu pripojenych na Internet (treba pro nejake matematicke vypocty, ktere vyzaduji vypocetni vykon nekolikatisettisic az milionu pocitacu), urcite to pro nej nebude velky problem. Vzdyt kolik lidi vyuziva Internet Explorer? Stamiliony a stamiliony uzivatelu. Je teoreticky i prakticky mozne, ze si MSIE dokaze stahnout nejaky "plug-in" umisteny na Microsoftim serveru a vykonat jej. Plug-in muze byt jakakoliv cast programu, treba program pro nejaky vypocet, po jehoz dokonceni se odeslou vysledne informace zpet k Microsoftu. Na velmi podobnem principu pracuje system SETI@home, ktery na kazdem zucastnenem pocitaci analyzuje nektere vybrane informace z vesmiru a vysledek vysle zpet na centralni server. Duvod je jednoduchy. Signalu je takove mnozstvi, ze by to jedna pocitacova jednotka nezvladla zpracovavat, proto se vyuziva tohoto distribuovaneho modelu.

Tato myslenka me velmi zaujala. Vytvorit cerva, ktery by pracoval na bazi modulu, ktere by byly snadno programovatelne a upgradovatelne. Zpocatku by byly k disposici moduly, ktere by zajistovaly samotne sireni. Gdyby se cerv CISTE teoreticky rozsiril, bylo by mozne pridat jiny modul, ktery by napr. vyuzil vypocetniho vykonu treba na crackovani hesel. V pripade velkeho CISTE teoretickeho rozsireni by take bylo mozne naprogramovat a vypustit modul, ktery by se postaral o zniceni samotneho cerva. Proste cokoliv. Take se mi velmi zamlouvala myslenka tzv. komplementarniho cerva, ktery by byl rozdelen na male casti kodu, roztrousene po celem Internetu. Jedna cast neznamena nic, ale 30 casti uz tvori celeho cerva. Toto prinasi radu vyhod pro me, jako autora cerva (absolutni modularita, variabilita) a nevyhod pro tzv. antivirove "specialisty" (nutnost neustale monitorovat moduly).

Rozhodl jsem se tyto dve myslenky realizovat. Architektura mela byt hodne jednoducha. Primarni modul mel pouze za ukol stahnout fsechny dostupne moduly z Internetu a vykonat je. Samozrejme musel umet zakladni veci, jako jsou napr. anti-detekcni schopnosti nebo instalace jako tzv. service do pameti (pozn. neni pravda, jak Igi psal, ze XTC a Universe umi pracovat pouze pod Win2000. tito dva cervi umi pracovat pod fsemi Win32 systemy). Zbyle programove rutiny, ktere mel cerv umet vykonat, byly ulozeny prave v modulech. Tyto moduly byly pouhopouhe DLL knihovny, pri jejichz natahnuti do pameti se automaticky spoustel vykonny kod. Fsechny moduly byly zakryptovane mou oblibenou utilitou "tElock", DLL moduly byly jeste k tomu zasifrovane vcelku silnym algoritmem RSA.

Nyni par technickych detailu tykajicich se samotnych modulu..

Primarni modul:

Ten mel za ukol jak jsem jiz rekl provest pouze ty nejdulezitejsi veci. Tady je schema jeho cinnosti:

  • 1) zkopiruje sam sebe do systemoveho adresare pod jmenem msvbvm60.exe, spusti se tam a zaregistruje se jako service process. funguje podobnym zpusobem jako Energy a XTC.
  • 2) z me stranky si stahne seznam modulu.
  • 3) stahne fsechny moduly specifikovane v seznamu modulu, dekryptuje je a ulozi je pod jmenem msvbvm6(a-z).dll
  • 4) natahne moduly do pameti, cimz se zajisti jejich automaticke spusteni
  • 5) pozastavi se na 0-5 minut, zrusi se a spusti znovu, obdobne jako Energy a XTC.

    Modul pro sireni postou:

    Tento modul se pokusi vyparsovat fsechny mailove adresy ze souboru ulozene v cachi (adresar "Temporary Internet Files") a pokusi se na ne odeslat. Toto je take zpusob jak lze virus upgradovat - neposila pres mail totiz primarni modul ulozeny v systemovem adresari, ale modul umisteny v jeho samotnem tele (vypustenim modulu s novym cervem uvnitr se rozesle novejsi varianta cerva).

    Modul "payload":

    V zavislosti na internim citaci systemu provede nasledujici 3 veci:

  • 1) nastavi fsechny defaultni adresy Internet Exploreru na http://www.therainforestsite.com, tak jak to dela XTC. na teto adrese se nachazi nadace pro zachranu destnych pralesu. a pak ze jsou cervi a viry spatny.. :-)
  • 2) stahne z me stranky obrazek universe.jpg, ulozi ho do systemoveho adresare a nastavi jako standardni tapetu Windows.
  • 3) vypise na obrazovku zmet nahodnych znaku, zeleny text, cerny pozadi, to cele v nekonecne smycce.

    Modul pro zpetne ohlaseni:

    Tento modul se stara o zaslani tzv. "feedbacku" na moji mailovou adresu. Tato zprava obsahuje IP adresu a jmeno stroje, ktery byl infikovan.

    Modul pro sireni pres mIRC32:

    Pokud existuje c:\mirc\mirc32.exe, vytvori c:\mirc\script.ini, ktery se stara o sireni pres IRC klienta mIRC32.

    Modul pro sireni v RAR archivech:

    Tento, zatim posledni modul, zjisti standardni "Download" adresar Internet Exploreru a tam se pokusi infikovat vsechny archivy RAR.

    Jak jsem jiz rekl, cerv je plne variabilni. Pridat novy modul neni nic tezkeho. Staci naprogramovat DLL knihovnu, zakryptovat ji, umistit ji KDEKOLIV na Internet a pridat URL adresu do seznamu modulu na me strance. Behem par minut si fsichni aktivni cervi tento novy modul stahnou a spusti. Opravdu to funguje.

    Mensi perlicka z Ruska:

    Nyni vam jeste napisu o mensim incidentu, ktery se v souvislosti s timto cervem stal. Asi den po zverejneni cerva na me strance vydalo AVP popis. Byly tam zminene nektere "zavazne" chyby. Byl jsem schopen najit chybu pouze jedinou - byla to moje chyba, pri testovani fsechno fungovalo spravne, ale pred finalni kompilaci jsem zapomnel zaZIPovat primarni modul v modulu pro sireni pres postu. Toto znemoznilo CISTE teoreticke rozsireni cerva mailem. Chybu jsem okamzite opravil, jak jsem jiz napsal, prace s modulama je velmi jednoducha. Jine chyby jsem nenasel, testoval jsem to na nekolika masinach, ale zda se ze problemove stroje maji jenom v Rusku. Par hodin po aktualizaci stranky byl muj website zrusen. Gdo jiny mohl poslat hlasku na hyperlink.cz (muj drahy web-space provider) nez Kaspersky, ze?
    Napsal jsem velmi slusny dopis do hyperlinku, ve kterem jsem dal najevo svuj nesouhlas. Zadne stanovy jsem neporusil (dokonce i ikonku hyperlinku jsem si na stranku pridal), zadne porno, zadny spam, zadne poruseni zakona. Jediny cim jsem se prohresil byla pritomnost zakryptovanych modulu, ktere je nemozne umyslne ci neumyslne jakymkoliv zpusobem spustit. Cerva jsem JAKO VZDYCKY nerozsiril, pouze jsem jej dal k disposici tem, kteri o nej maji zajem - na sve strance. Zadny zakon, zadny pravidla jsem timto neporusil. Musim priznat, ze me to hodne vytocilo - nejaka softwarova firma z Ruska napise na bonusweb.cz, ze Igi si doma udelal destruktivni program FORMAT.COM, ktery muze udelat i miliardove skody, zverejnil jej na sve strance a do jedne hodiny je Igi bez stranky. Je to fer?
    Odpovedi jsem se bohuzel od hyperlinku nedockal, protoze hned druhy den byla zrusena i moje e-mailova adresa benny_29a@hushmail.com, z ktere jsem odesilal mail. Proc byla zrusena? Jenom kvuli samotne EXISTENCI modulu, ktery se stara o odesilani mailu na moji adresu (modul pro zpetne ohlaseni). Opet jsem napsal mail, tentokrat na hushmail.com, vysvetlil jsem ze se jedna o nedorozumeni, ze zakon ani pravidla neporusuju.. nebylo mi to nic platne, dodnes na adresu benny@post.cz nedosla odpoved.
    Az me presla zlost, kontaktoval jsem jineho providera (obdoba jiz nefungujiciho coderz.net), na kterem jsou nyni umisteny moje stranky, vcetne cerva a fsech modulu. Jediny mail, co me vzdy fungoval, funguje a doufam ze i bude fungovat je benny@post.cz. Na hushmailu jsem si vytvoril novou schranku a upravil onen zmineny modul tak, aby maily odesilal tam. Toto hodlam delat do te doby, nez to toho ducha Kaspera prestane bavit. Ja mam casu dost na vytvoreni nove schranky a aktualizaci modulu, jsem zvedavy kolik casu ma on na delani nesmyslnych veci (jako treba bezduvodne ruseni mailove schranky kazdy den dvakrat ;-).

    Umeni je rehole :-) V soucasne dobe pracuju na novem "programu". Bude to virus a bude to bomba, jako vzdycky :-) To je to jedine, co vam k tomu ted muzu rict. Dekuju za to, ze jste zabili cas prave s timto clankem. Pokud budete mit neco (cokoliv) na srdci, rad si prectu vas mail a odpovim na nej, pokud mi zase nezrusi schranku :-/


    Autorem Φerva I-Worm.Universe i Φlßnku je Benny/29A - benny@post.cz