Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Detecting Complex Viruses

[es] :: Security :: Detecting Complex Viruses

[ Pregleda: 1943 | Odgovora: 1 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

_Super_Ellite_Bug_
Novi Sad, konacno!!!

Član broj: 41318
Poruke: 145
*.nat-pool.nsad.sbb.co.yu.

Sajt: www.searchlores.org


Profil

icon Detecting Complex Viruses02.01.2005. u 14:28 - pre 235 meseci
http://www.securityfocus.com/infocus/1813
ISO/IEC JTC1/SC22/WG14-ISO/IEC 9899:1999
 
Odgovor na temu

Sundance

Član broj: 7510
Poruke: 2559
*.sava.sczg.hr.



Profil

icon Re: Detecting Complex Viruses05.01.2005. u 11:09 - pre 234 meseci
Super je clanak, procitah ga cak prosle godine :)

Ferrie se vec dokazao clancima u vbulletin kao vrhunski strucnjak, a ovaj overview kompleksnih virusa samo to pokazuje.

I Peter Ferrie!

Citat:
One of these morphing techniques used by metamorphic viruses is with the insertion and removal of "garbage" instructions. These are instructions that have no effect on the function of the virus, but simply take up space and which can make analysis more difficult when they appear in large quantities.


junkcode se sve vise napusta u poly i meta engine-ima, vec su se pojavili papiri i neki konceptualni primjeri junk-logic koda. Problem je sa tim "garbage" instrukcijama koje nista ne rade da AV heuristike kroz njih sijeku kao kroz maslac i da prakticno nemaju efekta na opcu definiciju polimorfnog dekriptora.

Citat:
Another technique is to change the basic encoding of instructions at the opcode level. That is, switching between two different opcodes that are functionally-equivalent.


Permutacija nekih najbazicnijih sekvenci instrukcija ce vecinu najpopularniji trojana (sub7, netbus i sl.) uciniti undetectable. POC su z0mbie-vi PERVERT alatichi.

Citat:
Examples of infamous "zoo" viruses include the complex Win32 viruses known as W95/SK (PDF document), W95/Zmist (PDF document), W32/Simile (PDF document), W32/Efish (PDF document) (from the W32/Chiton family), and W95/Perenast. Just mention any of these names to an AV researcher and watch their terror-stricken face.


Ovo je ziva istina :) Vecina gore nabrojanih su remek-djela koda.

Simile (MetePHOR) ima ~ 725K asembler (!) koda i najbolji je primjer metamorfnog virusa na svijetu. Dezinfekcija je trivijalna jer je autor (The Mental Driller) namjerno stavio da se virus poziva patchanjem exit() syscalla na linuxu i ExitProcess() na win32. Medjutim, postoje i nesluzbene verzije koje koriste malo kompleksniji EPO. Ne trebam ni spominjati da vecina AV nije u stanju detektirati vise od prvih par generacija ove bestije...

Zmist je takodjer vijedan spomena jer je rijec o engine-u nakon cije je promocije u svom zine-u Total Zombification z0mbie natjerao vecinu AV strucnjaka da provjere da nije datum Apokalipse na kalendaru. Radi se engine-u koji je u stanju uzeti neki PE fajl (recimo .exe), disasemblirati ga, analizirati staticku logiku izvodjenja i napraviti tablicu statickih adresa, emulirati koristeci debug API dinamiku izvodjenja i pratiti koji se dijelovi koda izvrsavaju a koji ne, integrirati tijelo virusa sa exe-om tako da recimo svakih 100-200 instrukcija domacina dodje jedan jmp na tijelo virusa, sve reasemblirati natrag i patchati tako da radi kao i prije. Domacin se udebljao za nekoliko desetaka K, ali radi kao i prije a virus je nemoguce razdvojiti od domacina.

Nije bas istina da ga nema in-the-wild, s vremena na vrijeme netko na alt.comp.virus dodje i kaze da mu ga AV detektira u memoriji (prvu generaciju!) ali kad skenira disk da nista ne nadje :))

Mistfall engine je takodjer popularan medju haxorima za trojaniziranje benignih exe-a. Tko je jos vidio inficirati source code pa rekompajlirat, hehe :)

Citat:
Unfortunately AV researchers do not have the luxury to write standalone programs from scratch to respond to new viruses. Instead they are constrained by a framework imposed by an AV product.


Zbog ove cinjenice kompleksni virusi nikad nece imati veliku razinu detekcije.

Citat:
Two examples of these new viruses, both released in early 2004, are MSIL/Impanate (PDF) and MSIL/Gastropod (PDF document) - viruses for the Microsoft .NET framework. The first of these, MSIL/Impanate, is an EPO virus. It appends its code to a random method in the file, and rebuilds the host around it. The second of these, MSIL/Gastropod, is a metamorphic virus. Its appearance is altered by the virus intentionally adding and removing "garbage" instructions.


.NET API-ji za refleksiju (Reflection) omogucavaju za MSIL ono o cemu win32 virusi mogu za win32asm samo sanjati. Po prvi put u povijesti sa win dolazi kompajler kojeg virusi mogu i hoce iskoristiti za svoje morfiranje. Zasto potrostiti 100 godina pisuci svoje disasembler, junkcode generator koji nista ne valja i reasembler kad mozes generirati malo C# koda koji ce, recimo, stvoriti 10 niti koji ce sinkronizirano dekriptirati tijelo virusa, i jos izmedju masa junkcode poziva API-ja - sve je to jako tesko za AV emulirati u malom vremenskom intervalu koliko traje skeniranje pojedinog izvrsnog fajla, a tako lagano za napraviti..

.NET virusi buducnosti ce biti jako opaka gamad. Sva sreca, radit ce i na linuxu, *BSD, MaC OS, Solaris-u... preko mono/dotGNU tako da ce linux zealoti imati jedan argument manje :)

Citat:
such viruses can reveal a lot about limitations in the engine technology available, and perhaps the skill and dedication of the response teams. Some companies provide detection quickly, in a matter of hours or days, while some others finally ship a solution after months of work (or years in some extreme cases, like W95/Zmist!), and yet other companies simply give up.


Nazalost. Simulirati izvodjenje kompleksnih virusa u AV laboratorijskim "farmama" virtualnih racunala je vrlo tezak i zamoran posao. Lako je napraviti update za neki malware koji je statican, za par sati mozes imati AV definiciju.

Imate na Ferrie-vom homepage-u dosta zanimljivih clanaka ako koga zanima. Cak i studija unajmljena od strane matematicara da objasni nelinearnu enkripciju koju koristi Simile, hehe.

Cheers.
 
Odgovor na temu

[es] :: Security :: Detecting Complex Viruses

[ Pregleda: 1943 | Odgovora: 1 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.