Hlavní třída: VirWare
Viry a červy jsou škodlivé programy, které se samy replikují v počítačích nebo prostřednictvím počítačových sítí, aniž by si uživatel uvědomoval; každá další kopie takových škodlivých programů je také schopna samoregistrace.Škodlivé programy, které se šíří prostřednictvím sítí nebo infikují vzdálené počítače, pokud jim to pověřil "vlastník" (např. Backdoors) nebo programy, které vytvářejí více kopií, které nejsou schopné samoregistrace, nejsou součástí podtřídy Viruses and Worms.
Hlavní charakteristikou používanou k určení, zda je program klasifikován jako samostatné chování v podtřídě Viruses a Worms, je způsob, jakým se program šíří (tj. Jak škodlivý program šíří vlastní kopie prostřednictvím lokálních nebo síťových zdrojů).
Většina známých červů se šíří jako soubory odeslané jako přílohy e-mailů prostřednictvím odkazu na web nebo zdroj FTP prostřednictvím odkazu odeslaného v ICQ nebo IRC zprávě prostřednictvím P2P sdílení souborů atd.
Někteří červi se šíří jako síťové pakety; tyto přímo proniknou do paměti počítače a aktivuje se kód červů.
Worms používají k průniku vzdálených počítačů následující metody: sociální inženýrství (například e-mailová zpráva naznačující, že uživatel otevře připojený soubor), využívající chyby v konfiguraci sítě (například kopírování na plně přístupný disk) a využívání mezery v zabezpečení operačního systému a aplikací.
Viry lze rozdělit podle metody používané k infikování počítače:
souborů virů
viry zaváděcího sektoru
makro viry
virů skriptu
Každý program v rámci této podtřídy může mít další funkce trojan.
Je třeba také poznamenat, že mnoho červů používá více než jednu metodu k šíření kopií prostřednictvím sítí. Pravidla pro klasifikaci detekovaných objektů s více funkcemi by měla být použita pro klasifikaci těchto typů červů.
Třída: Virus
Viry se replikují na prostředcích místního počítače.Na rozdíl od červů, viry nepoužívají síťové služby k šíření nebo pronikání do jiných počítačů. Kopie viru dosáhne vzdálených počítačů pouze v případě, že infikovaný objekt je z nějakého důvodu nesouvisející s virální funkcí aktivován na jiném počítači. Například:
když infikuje dostupné disky, virus proniká do souboru umístěného na síťovém zdroji
virus se zkopíruje na vyměnitelné úložné zařízení nebo infikuje soubor na vyměnitelném zařízení
uživatel pošle e-mail s infikovanou přílohou.
Platfoma: DOS
No platform descriptionPopis
Technické údaje
Jedná se o rodinu velmi nebezpečných, polymorfních a tajných parazitických virů. Tyto viry jsou delší než 7K, velmi složité a možná i nejsložitější DOS-viry. Tyto viry infikují soubory EXE, OBJ a LIB a připojují COM-droppers k archivům ZIP, ARJ a RAR. Viry obsahují interní textové řetězce:
Abnormální ukončení programuVirus / DOS 0.54 Autorská práva (c) 1995 Zhengxi LtdVarování! Tento program je určen pouze pro interní použití!
Instalace
Kód viru získá kontrolu z různých bodů v závislosti na způsobu infekce, ale ve všech případech je cílem polymorfní rutina dešifrování. V systémech EXE (připojování) rutina dešifrování obdrží ovládací prvek okamžitě, když je soubor EXE načten do paměti pro provedení, v souborech EXE (vložení) - z kódu načíst (viz infekce EXE) do souborů spojených s infikovanými OBJ / Soubory LIB - z instrukce CALL (viz OBJ / LIB infekce), kapátka COM mají instrukce JMP v jejich počátcích, že JMP přináší kontrolu do rutiny dešifrování.Dešifrován, instalační rutina viru obdrží ovládací prvek. Virus háčky INT 1 (One Step Tracing) a stopy INT 21h. Během sledování virus vyhledá nějaký konkrétní kód v rámci obslužného programu INT 21h (tento kód je přítomen v DOS 5.x a DOS 6.x). Pokud je tento kód nalezen, virus kontroluje několik podmínek a v některých případech ukončí instalaci.
Virus ukončí instalaci, pokud:
- MS Windows je nainstalován
- bootovací jednotka je A: nebo B:
- INT 8, 13h, 28h ukazuje na stejný segment (ukončení instalace, pokud je nainstalován antivirový monitor?)
- den hostitelského souboru (datum a časová razítka) je stejný nebo v blízkosti aktuálního dne (dva nejvyšší bity současného čísla dne XORed s datem souboru se rovnají nule)
INT 21h handler:... ...+ ------- 2E FF 1F ???? CALL FAR CS: Int25 � C7 06 ???? ; kouzelné slovo? � Int25: ???? ???? ???? ???? ; daleko addr INT 25h � ... ... � +> INT 25h handler:+ -------- EA ???? ???? JMP FAR VirusHandler � ... ... � +> Virus handler:2E 8F 06 ... POP CS: Caller_IP... ...Výsledkem je, že virus má stejného obslužného programu, který zachycuje volání INT 21h i INT 25h. Chcete-li tyto hovory oddělit, virus kontroluje adresu volajícího (Caller_IP). Pokud volání přechází z obslužného programu INT 21h, virus přenáší kontrolu na rutinu pro obsluhu Virus INT 21h, v jiném případě obslužný program Virus INT 25h obdrží ovládací prvek.
Rutina instalace je dokončena, ale virus může přesunout kód do jiných paměťových bloků (viz analýza obsluhy INT 21h). Kópia viru TSR tedy nezahrnuje stejné bloky systémové paměti, ale může se přesunout na jiné adresy, včetně UMB.
Poté virus vrátí ovládací prvek do hostitelského programu. Existují tři různé varianty takového návratu, které závisí na způsobu infekce. V případě kvapkadla COM virus zobrazí pouze zprávu:
Abnormální ukončení programua vrátí se do DOS s funkcí Terminate (INT 21h, AH = 4Ch). V případě metody infekce připojené k EXE virus obnoví původní hlavičku souboru pomocí polymorfního stroje (generuje polymorfní rutinu dešifrování a provede ji k obnovení původního záhlaví, viz infekce EXE níže). V případě vkládání EXE se virus vrací pouze do hostitelského programu, protože virův zaváděč vložený do souboru obnoví původní kód sám. V případě souboru OBJ / LIB se virus také vrátí do hostitelského programu (viz níže uvedená infekce OBJ / LIB).
INT 21h Handler
Virus zachycuje 18 funkcí INT 21h:3Dh, 6Ch - Otevřít / Vytvořit soubor3Eh - Zavřít soubor3Fh - Číst soubor42h - Lseek4Bh - Spustit soubor41h - Odstranit soubor11h, 12h - FindFist / Next FCB4Eh, 4Fh - FindFist / další ASCII00h, 4Ch - Ukončení31h - Zůstaňte TSR67h - Nastavení počtu rukojetí48h, 49h, 4Ah - funkce správy paměti (Allocate, Free, Resize)Funkce Set Handle Count, Execute File management a správu paměti jsou používány virem pro skrytí jeho kódu do systémové paměti - virus manipuluje s bloky MCB, aby nebyly viditelné na mapě paměti při použití nástrojů pro prohlížení paměti.
Při zachycování funkcí Terminate, Stay TSR a FreeMemory virus přesune svůj kód na novou adresu v systémové paměti. Virus přiděluje nový blok paměti (což může být konvenční nebo UMB paměťový blok) a tam se zkopíruje. Takže při instalaci viru neovlivňuje bloky UMB umístit jeho kopii TSR, ale pak se může přesunout do UMB a skrýt se tam sama.
Zatímco soubor otevírající virus provádí několik různých hovorů. Za prvé, virus kontroluje režim otevření a pokud je soubor otevřen pro psaní, virus dezinfikuje soubor.
Před dezinfekcí virus kontroluje přístup k souboru a program, který přistupuje k tomuto souboru (volajícímu). Virus porovnává název přístupového programu (volajícího) se seznamem názvů (viz níže) a dezinfikuje přístupný soubor, pokud je název přístupového programu z tohoto seznamu. Názvy souborů jsou:
UUENCODE.EXE, PKLITE.EXE, LZEXE.EXE, NDD.EXE, DIET.EXE, AFD.EXE, SD.EXE,SPEEDDSK.EXE, DEFRAG.EXE, TLINK.EXE, LINK.EXEV případě funkce AH = 3D00h (Open ReadOnly) virus provádí některé zvláštní akce. Sleduje kód volajícího a opraví ho. Vypadá to, že je to nějaký antivirový skener. Naštěstí má virus chybu a tato větev není nikdy provedena.
Při otevírání souboru virus také přináší kontrolu na stealth rutinu - virus nahrazuje délku souboru s původním.
Při čtení ze souboru virus nazývá stealth rutinou. V případě čtení z hlavičky infikovaného souboru čte, dešifruje a zkopíruje původní hlavičku do vyrovnávací paměti pro čtení.
V případě funkce Lseek virus přenáší kontrolu na další stealth rutinu viru - virus neumožňuje hledat původní délku souboru.
Během mazání infikovaného souboru jej virus dezinfikuje.
Při hledání souborů s voláním FindFirst / Next virus v případě, že je soubor infikován, nahrazuje délku souboru původní.
Volby FindFist / Next ASCII jsou také používány virem k zachycení souborů pro infekci. Virus uloží jméno libovolného souboru, ke kterému je přístupná funkce FindFirst, a přibližně každý pátý soubor (pravděpodobnost 3/16) přistupuje k funkci FindNext. Virus obsahuje pouze jeden vyrovnávací paměť pro název souboru, takže každé další jméno přepisuje předchozí.
Při zavírání libovolného souboru virus kontroluje a infikuje soubor s jménem uloženým v vyrovnávací paměti. Virus také infikuje soubor, který je zavřený, ale je to s pravděpodobností 1/4 (výsledkem viru "náhodný generátor)
Infekce
Před infikováním souboru virus kontroluje několik podmínek:- soubor není "jen vytváří" porovnáním aktuálního čísla dne s datem a časovým razítkem souboru (stejně jako při instalaci)
- soubor je lokální a nikoli na jednotce A: nebo B: jednotka
- název souboru není *.? V? (* .OVL?)
- je dostatek volného místa na disku (kontroly s INT 21h, AH = 36h)
Nahrazení souborů EXE
Virus infikuje EXE třemi různými metodami - přidáváním, vkládáním a infikováním archivů do samorozbalovacích souborů.Za prvé, virus kontroluje strukturu souborů a pokud je to samorozbalovací soubor EXE (vytvořený například ZIP2EXE), virus infikuje připojený archiv (ZIP, ARJ, RAR) metodou popsanou níže - vytvoří kapátko COM , a přidá jej do obsahu archivu.
Poté virus kontroluje délku souboru a neinfikuje soubory o délce menší než 400h (1024) bajtů. Pokud je délka načteného modulu (poznámka: ne délka souboru) větší než 32 kB, virus vloží jeho nakladač do středu souboru. V jiném případě virus infikuje soubor připojením metody.
Při infikování souborů metodou připojování virus čte záhlaví souboru, šifruje jej a uloží jej na konec souboru. Pak virus spustí svůj polymorfní generátor a uloží šifrované vírové tělo a polymorfní smyčky do konce souboru. Chcete-li dokončit infekci, virus zvětší délku souboru na hodnotu, která je rozdělena na 9Dh. Zvyšuje 25h (detekuje již infikované soubory, je to "ID" razítko) a upravuje pole záhlaví EXE (registru a délku modulu).
Poznámka: Virus šifruje původní hlavičku hostitelského souboru s polymorfní šifrovací smyčkou a tato smyčka se liší od rutiny, která se používá při šifrování těla viru. Virus volá polymorfní motor dvakrát - při šifrování původní hlavičky EXE a při šifrování hlavního těla.
Během provádění infikovaného souboru EXE obnoví dešifrovací smyčky hlavní tělo viru, ale ne záhlaví původního souboru. K návratu do hostitelského programu musí virus dešifrovat hostitelská data, ale motor generuje náhodné smyčky s náhodnými vybranými šifrovacími funkcemi. Pro vyřešení tohoto problému virus uchovává počáteční hodnoty náhodného generátoru při šifrování hostitelských dat a spouští generátor polymorfního signálu se stejnými hodnotami při dešifrování těchto dat. Výsledkem je, že generátor přináší stejný kód, který byl použit při šifrování hostitelských dat a byl proveden tak, že rutina ji dešifruje.
Nahrazení souborů EXE (vkládání)
Je-li délka souboru nad 32K, virus se pokusí spustit hlavní modul EXE (těsně za záhlaví EXE), čte 6K kódu a hledá rutiny C / Pascal tam. Obvykle rutiny C / Pascal začínají ze stejného "záhlaví", který ukládá registr BP a přesune ukazatel zásobníku SP na BP.Virus skenuje kód pro tyto "záhlaví" a pokud je tento kód nalezen, virus prohledává další 54h bytů kódu pro instrukce RET nebo CALL FAR, aby se zabránilo překrývání dalšího podprogramu nebo přemístěné adresy. Pokud je nalezen takovýto kód (RET nebo CALL FAR), virus opouští rutinní infekci.
Poté virus čte 54h bajtů této rutiny, přepíše je kódem virového načítače, pak šifruje hlavní virové tělo polymorfním motorem a uloží ho do konce souboru. Pak virus šifruje jednoduchou funkcí SUB původní kód podprogramu a druhou část načítače a uloží jej na konec souboru. Poté virus na konci souboru píše náhodné údaje stejným způsobem jako při "připojování" metody infekce.
Neinfikováno infikováno------------ --------+ -------------- + + -------------- + �Exe záhlaví � �Exe záhlaví � + -------------- � + -------------- � �Main EXE kód � �Main EXE kód � � -------------- � � -------------- � �C / Pascal subr � - + �Virusový nakladač � Část 1, 52h bajtů, nešifrovaný � -------------- � � � -------------- � � � � � Hlavní kód EXE � � � � � (pokračování) � + -------------- + � + -------------- � � �Virus � Šifrováno pomocí polymorfních smyček � � -------------- � � �Virus loader � Část 2, šifrovaná příkazem SUB � � -------------- � 70h bajtů+ -> �Saved code � Původní kód patched podprogramu, � -------------- � 52h bajtů, šifrovaných SUB �Radomová data � délka souboru / 9Dh, zbytek je 25h+ -------------- +Při spuštění je načtena vyhledává název hostitelského souboru pomocí polí PSP, otevírá soubory, vyhledává konec souboru, čte, dešifruje a spustí druhou část kapátka. Tato část obnoví patched podprogram, alokuje systémovou paměť (konvenční nebo UMB), přečte hlavní tělo viru a předá řídící jednotku do dešifrovací polymorfní smyčky. Tato smyčka dešifruje tělo viru a předá řídicímu programu rutině instalace.
To je velmi zákeřný způsob infekce. Kód viru je v souboru skrytý a ze kódu záhlaví souboru není přímý zápis virového kódu. Podprogram nahrazený virem načítáním může být "zřídka proveden" jeden. Například podprogram, který zobrazuje chybovou zprávu. Takže virus může spát v takových souborech po dlouhou dobu a pak vyskočit a infikovat systém za určitých omezených podmínek.
Infikování archivů
V případě archivu virus vytvoří v paměti obraz infikovaného dropperu COM a připojí jej do archivu. Tyto zaváděče COM vždy začínají instrukcí JMP, následované náhodnými daty, šifrovaným kódem viru a polymorfní smyčkou dešifrování. Instrukce JMP přináší kontrolu do dešifrovací smyčky.Název dropperu je náhodně vybrán a dokončen s příponou .COM, například:
HAIF.COM, UCM.COM, DOO.COM, VLG.COM a tak dále.Během zpracování archivních polí virus nepoužívá žádné externí nástroje, ale sám vyplňuje všechna potřebná pole. Virus nezavazuje kapátko, ale používá "uloženou" metodu - virus je uložen v archivu "tak jak je". Zatímco infikování viru kontroluje obsah archivů a neinfikuje je dvakrát.
Infikování souborů OBJ a LIB
Během infekce modulů OBJ / LIB virus kontroluje pole souboru, vytváří a vkládá do něj nové záznamy o objektech, které obsahují kód viru šifrovaný polymorfními smyčky.Během skenování objektového souboru virus kontroluje kód tohoto souboru pro záhlaví podprogramu C / Pascal stejně jako při vkládání do souborů EXE a infikuje soubory pouze v případě, že je tento kód nalezen. V případě modulu OBJ nebo LIB však virus neupustí kód nakladače, ale přepíše záhlaví C / Pascal příkazem CALL (E8xxxx).
Byla propojena do spustitelného souboru, který CALL přináší kontrolu na polymorfní dešifrovací smyčku viru. Tato smyčka dešifruje kód viru a předá řídicí jednotce rutině instalace viru.
Stejně jako v souborech EXE (vkládání), že CALL nikdy nedostane kontrolu a virus může spát po dlouhou dobu. Ovšem za určitých podmínek může virus vyskočit a infikovat systém.
INT 25h Handler
Tento psovod realizuje rutinu stealth na úrovni INT 25h. Při přístupu k záznamům v adresáři virus nahradí délku souboru původními, při čtení záhlaví infikovaného souboru virus obnoví a přináší původní podobu.Virus nedělá 100% stealth na úrovni INT 25h, samozřejmě. Existují způsoby, jak obejít rutinu stealth. Pokud však některý antivirový program přečte obsah souboru pomocí funkcí INT 21h DOS, čte strukturu adresářů a pak obsah souborů pomocí absolutních volání INT 25h, virus se nezobrazí.
Spuštění rutiny
Pokud při zpracování ZIP souborů virus nalezne nějaký záznam, který je nabitý "uloženým" způsobem, zkontroluje datum a časový soubor ZIP souboru. Pokud rok poslední úpravy tohoto souboru je 1996 nebo více, virus vyhledá všechny soubory všech adresářů všech disků od C: do Z :, pak odstraní soubory a celý podadresářový strom.Zobrazit více
Zjistěte statistiky zranitelností šířících se ve vaší oblasti statistics.securelist.com