07.02.2015 Views

The Art of Reversing by Ap0x - Tutoriali.org

The Art of Reversing by Ap0x - Tutoriali.org

The Art of Reversing by Ap0x - Tutoriali.org

SHOW MORE
SHOW LESS

Create successful ePaper yourself

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

MEW v.1.1 SE<br />

Ovo je jos jedan lak paker za otpakivanje. Otvorite primer zapakovan<br />

ovim pakerom koji se zove unpackme18.MEW11SE.exe pomocu Ollyja. Prva<br />

linija pakera ce izgledati ovako:<br />

0040732B >- E9 248EFFFF<br />

JMP unpackme.00400154<br />

00407330 0C 60 OR AL,60<br />

Izvrsite ovaj skok sa F8 i zavrsicete ovde:<br />

00400154 BE 1C604000 MOV ESI,unpackme.0040601C<br />

00400159 8BDE MOV EBX,ESI<br />

0040015B AD LODS DWORD PTR DS:[ESI]<br />

0040015C AD LODS DWORD PTR DS:[ESI]<br />

Iako ovaj kod izgleda malo komplikovano otpakuje se za samo nekoliko<br />

sekundi. Odskrolujte do samog kraja ovog CALLa, to jest do prve RET<br />

komande. Ona se nalazi ovde:<br />

004001F0 FF53 F4 CALL DWORD PTR DS:[EBX-C]<br />

004001F3 AB STOS DWORD PTR ES:[EDI]<br />

004001F4 85C0 TEST EAX,EAX<br />

004001F6 ^ 75 E5<br />

JNZ SHORT unpackme.004001DD<br />

004001F8 C3 RET<br />

Secate se sta smo rekli Do OEPa se moze doci pomocu JMP, CALL, RET<br />

komandi. Probacemo ovu teoriju u praksi i postavicemo jedan breakpoint na<br />

adresu 004001F8, to jest na RET komandu. Posle toga cemo izvrsiti sav kod<br />

koji je potreban da se stigne do nje sa F9. Kada konacno stanemo kod nje<br />

izvrsicemo i nju sa F8 i to ce nas odvesti ovde:<br />

00401000 6A DB 6A ; CHAR 'j'<br />

00401001 00 DB 00<br />

00401002 E8 DB E8<br />

00401003 0D DB 0D<br />

00401004 01 DB 01<br />

00401005 00 DB 00<br />

Da li je ovo mesto koje smo trazili Da li je ovo OEP Znam da vam ovo<br />

izgleda kao neke kuke i kvake ali ako analiziramo ovaj kod pritiskom na CTRL<br />

+ A videcemo sta se to zaista nalazi na adresi 00401000. Videcemo ovo:<br />

00401000 . 6A 00 PUSH 0<br />

00401002 . E8 0D010000 CALL unpackme.00401114<br />

00401007 . A3 00304000 MOV DWORD PTR DS:[403000],EAX<br />

E ovo vec izgleda kao pravi OEP pa stoga ovde mozemo uraditi memory<br />

dump pomocu alata koji vi izaberete. Posto MEW nema nikakve API<br />

redirekcije ili kriptovanje API poziva dump i popravku APIa mozemo da<br />

uradimo preko standardnog OllyDMP plugina i sve ce biti OK.<br />

<strong>The</strong> <strong>Art</strong> <strong>of</strong> <strong>Reversing</strong> <strong>by</strong> <strong>Ap0x</strong> Page 238 <strong>of</strong> 293

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

Saved successfully!

Ooh no, something went wrong!