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.

PeX 0.99<br />

PeX je jedan jako zanimljiv a ujedno i lak paker za reversing. Zasto<br />

zanimljiv Iz razloga sto ima jako zanimljivu tehniku kojom detektuje<br />

debuggere. Meta pakovana ovim pakerom se nalazi u folderu Cas10 a zove se<br />

Phoenix2.PEX099. Naime program pakovan ovim pakerom se ne moze<br />

startovati pomocu Ollyja jer ce biti detektovan i program se nece startovati<br />

jer program detektuje takozvani stepping kroz kod. Ovo znaci da ce PeX<br />

detektovati Olly samo ako debuggujemo program sa F7/F8 ali ne i sa F9!<br />

Sada ostaje samo da se resimo par problema koji ce nas “zaustaviti” i<br />

onemoguciti PeXu da odmah otpakuje metu. Ova dva problema su INT3 stop<br />

i Illegal Instruction greska. Na njih smo naisli prilikom pritiska na F9 i<br />

startovanja mete. Stoga cemo podesiti Olly ovako (Debugging options):<br />

Posle ovoga ostaje da odemo u Memory map prozor (ALT+M) i postavimo<br />

jedan memorijski break point (on access) na .code sekciju nase mete.<br />

Sada cemo pokrenuti program sa F9 i sacekacemo da se on zaustavi na<br />

OEPu. Ali na zalost nismo se zaustavili odmah na OEPu, nasli smo se ovde:<br />

0085006B F3:A4 REP MOVS BYTE PTR ES:[EDI],BYTE PTR DS:[ESI]<br />

Posto se REP komanda izvrsava mnogo puta vraticemo se u Memory map<br />

prozor i skinucemo memory break point, pa cemo se vratiti u CPU prozor gde<br />

cemo postaviti obican breakpoint na adresu 0085006D. Sada cemo pritisnuti<br />

F9 da bismo stigli do tog breakpointa, a kada se to desi uklonicemo ga sa F2<br />

i ponovo cemo postaviti memory breakpoint na .CODE sekciju. I posle jos<br />

jednog pritiska na F9 doci cemo do samog OEPa nase mete. Ovde mozete<br />

uraditi dump, dok cete prilikom popravljanja importa morati da uradite<br />

Level1 trace da bi ste vratili sve importe.<br />

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

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

Saved successfully!

Ooh no, something went wrong!