13.07.2015 Views

The art of cracking - Tutoriali

The art of cracking - Tutoriali

The art of cracking - Tutoriali

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

ASProtect 1.2 / 1 .2cDugo vremena sam bio plasen od strane drugih (doduse manjeiskusnih) crackera kako je najvece zlo koje stoji omah uz Armadillo, protectorpod imenom ASProtect. Danas ja pokusavam da dokazem suprotno. Iako jeverzija koju cemo mi reversovati pomalo zastarela, jer je u opticaju verzija1.3x, idalje je dobar primer kako se to reversuje ASProtect. Ne shatite ovajdeo knjige olako, jer idalje postoji mnogo komercijalnih programa pakovanihbas ovom verzijom programa. Postoje neke prednosti kod reversinga oveverzije ASProtecta, a to su: nema previse teskih importa, nema “ukradenihbajtova” i sto je najlepse od svega ima exceptiona koji nam pomazu dapronadjemo pravi OEP. Meta se zove crackme.asprotect.exe a nalazi se ufolderu Cas10. Ucitacemo je u Olly i na pakerovom OEPu cemo imati sledece:00401000 >/$ 68 01704000 PUSH crackme_.0040700100401005 \. C3 RETZanimljivo ili ne, ali mi se necemo bakcati sa ovim. Kao sto sam rekao Ollyce nam pomoci preko exceptiona da nadjemo OEP. Pritisnite F9 i nacicete seovde:0087009D 31000087009F EB 01008700A1 68 648F0500008700A6 0000XOR DWORD PTR DS:[EAX],EAXJMP SHORT 008700A2PUSH 58F64ADD BYTE PTR DS:[EAX],ALSada cemo pritiskati CTRL+F9 da bi smo presli preko ovih exceptiona. Ovocemo uraditi onoliko puta koliko je potrebno da se sama zapakovana meta nest<strong>art</strong>uje. To jest docicemo do dela koda gde kada bi pritisnuli CTRL+F9 josjednom NAG ekran iz crackmea bi se pojavio. Neki to rade brojanjem ali ovdenema potrebe za brojanjem jer je to mesto isto za sve programe i izgledaovako:00882FCC FE0200882FCE ^ EB E8INC BYTE PTR DS:[EDX]JMP SHORT 00882FB800882FD0 E8 0A000000 CALL 00882FDFZnaci pritiskacemo CTRL+F9 sve dok ne dodjemo do ovog mesta u kodu.Sada cemo umesto CTRL+F9 pritisnuti CTRL+F8 da bi smo presli preko ovogexceptiona za jednu liniju koda i kao poruceno zavrsavamo ovde:77FB4DB3 |. 8B1C2477FB4DB6 |. 5177FB4DB7 |. 5377FB4DB8 |. E8 ACBDFAFF77FB4DBD |. 0AC0MOV EBX,DWORD PTR SS:[ESP]PUSH ECXPUSH EBXCALL ntdll.77F60B69OR AL,ALDa, da zahvaljujuci Windowsu XP zavrsavamo u ntdll.dll-u. Ovo je dobrastvar jer cemo odatle izaci tacno ispod exceptiona. Pritiskajte F8 sve dok nedodjete do prvog CALL, a onda pritisnite F7 da udjete u njega. Idalje smo uistom dll-u pa cemo se kretati sa F8 sve dok ne dodjemo do ovog CALLa:77F60BEA . FF75 0C PUSH DWORD PTR SS:[EBP+C]77F60BED . 53PUSH EBX77F60BEE . 56PUSH ESI77F60BEF . E8 528F0100 CALL ntdll.77F79B46 TEST BYTE PTR DS:[77FC324A],8077F60BFB . 8BF8MOV EDI,EAX77F60BFD . 0F85 896F0200 JNZ ntdll.77F87B8Cu koji cemo uci sa F7. A to nas vodi dublje u sam dll fajl. Sada smo ovde:77F79B46 $ BA B89BF77777F79B4B . EB 0777F79B4D /$ BA DF9BF777MOV EDX,ntdll.77F79BB8JMP SHORT ntdll.77F79B54MOV EDX,ntdll.77F79BDF<strong>The</strong> Art <strong>of</strong> Cracking by Ap0x Page 137 <strong>of</strong> 165

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!