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

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

PUSH 443600<br />

Kod za otvaranje web-strane<br />

PUSH 443616<br />

PUSH 1<br />

CALL 00408388 }<br />

JMP 00408625<br />

Prvo cemo uporediti ESI sa 0BBD, to jest sa dugmetom Visit Web site. Ako je<br />

pritisnuto ovo dugme onda cemo ga posetiti pomocu ShellExecuteA funkcije.<br />

Napominjem da adresu na kojoj se nalazi ova funkcija u fajlu morate naci u<br />

View Names opciji u modulima. I poslednje, ali i najvaznije je da se<br />

postaramo da se novi dijalog i pojavi na ekranu. Selektovacemo adresu<br />

00443673 i unecemo sledece:<br />

CMP ESI,0BBA<br />

JNZ 00408625<br />

PUSH 0 {<br />

PUSH 4085C8<br />

PUSH 0<br />

PUSH 3E7<br />

Kod za prikazivanje dijaloga<br />

PUSH DWORD PTR DS:[40A84C]<br />

CALL 00404BFC }<br />

JMP 00408625<br />

Ovde smo prvo uporedili ESI sa 0BBA, odnosno sa starim dugmetom , ovo<br />

nas je podsetilo da ovakav CMP nismo NOPovali gore pa cemo se posle vratiti<br />

na to. Ako je pritisnuto staro dugme onda cemo prikazati dijalog na ekran.<br />

Ovo je samo copy / paste backupovanog koda sa 00408722 koji sluzi za<br />

prikazivanje prvog dijaloga na ekran. Posle ovoga se jednostavno vracamo u<br />

gornji loop za proveru WM poruka sa obicnom JMP komandom. Sada cemo<br />

snimiti nase promene, selektovacemo kod od 00443600 do 0044369D (jer<br />

smo taj deo koda dodali) i pritisnucemo desno dugme -> Copy to executable -<br />

> Section i snimicemo ovaj fajl kao Addon2.exe, pa cemo otvoriti ovaj novi<br />

fajl pomocu Ollyja.<br />

Sada cemo se vratiti da povezemo stari loop sa novim loopom poruka.<br />

NOPovacemo sve od 00408611 pa do 00408624 jer nam taj dao koda ne<br />

treba. Na njegovo mesto cemo ubaciti pojavljivanje novog dijaloga i obradu<br />

poruka. Selektovacemo adresu 00408611 i na to mesto cemo ubaciti sledeci<br />

kod:<br />

JMP 00443620<br />

Posle ovoga nam ostaje samo da ubijemo staru proveru za dugme , BBA.<br />

Zato cemo NOPovati adrese:<br />

00408609 |> \81FE BA0B0000 CMP ESI,0BBA<br />

0040860F |. 75 14<br />

JNZ SHORT AddOn2.00408625<br />

Sada kada smo sve zavrsili mozemo da snimimo promene pritiskom na desno<br />

dugme -> Copy to executable -> All modifications -> Copy All -> desno -><br />

Save file... i mozemo probati fajl. Ako ste nesto propustili ili niste dobro<br />

uradili program ce vam se srusiti, dobro uradjen primer imate u istom folderu<br />

pod imenom AddOn3.exe, pa mozete videti kako to treba da izgleda.<br />

NAPOMENA: Ovo je izuzetno teska tehnika i zahteva zaista dosta prakse. Zbog<br />

ovoga ne ocajavajte ako ne razumete sve sada ili ne mozete da naterate<br />

program da se startuje. Posle kad sakupite dosta reverserskog iskustva<br />

vratite se na ovo poglavlje.<br />

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

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

Saved successfully!

Ooh no, something went wrong!