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.

PE Basics<br />

PE je skracenica za Portabile Executable i predstavlja standard po<br />

kojem kompajleri raznih programskih jezika kreiraju exe fajlove. Kao sto<br />

sigurno znate exe fajlovi predstavljaju samo srce Windows operativnog<br />

sistema i zasluzni su za rad svih programa koje koristite u radu. Ali PE format<br />

se ne primenjuje samo na exe fajlovima, PE se primenjuje u specijalnom<br />

obliku i na dll fajlove koji predstavljaju dinamicke biblioteke, o cemu ce reci<br />

biti kasnije. Posto je naveci deo reverserskih problema vezan direktno za<br />

same exe fajlove,analizu PE formata cemo zapoceti bas sa ovim standardom.<br />

PE ExE files - Intro<br />

Svaki klasican PE fajl pocinje uvek sa dva ista bajta, sa MZ ili sa 4D5A<br />

heksadecimalno. Ovako bi izgledao neki PE exe fajl otvoren pomocu nekog<br />

hex editora. Kao sto se vidi sa slike plavo su obelezeni parovi bajtova, dok se<br />

crno sa strane nalazi tumacenje tih istih parova bajtova samo u ASCII obliku.<br />

Svi Hex editori rade automatsko prevodjenje svih heksadecimalnih brojeva u<br />

ASCII, naravno pod uslovom da postoji ASCII slovo sa kodom koji<br />

koresponduje heksadecimalnoj vrednosti. Osnovna ASCII tabela se sastoji od<br />

127 karaktera ili 7F ako broj karaktera predstavljamo heksadecimalno. Posto<br />

je svakom crackeru preko potrebna ASCII tabela predlazem da i vi<br />

preuzmete vasu sa sajta http://www.asciitable.com. Analizu PE formata<br />

pocecemo analizom bilo kojeg exe fajla iz Hex editora po vasem izboru.<br />

Primeticete sledece karakteristicne stvari na samom pocetku svakog exe ili<br />

dll fajla.<br />

Ova analiza se ne razlikuje od analize bilo kog klasicnog fajla otvorenog<br />

pomocu Hex editora. Ovaj prvi deo poglavlja o PEu ce vas samo uvesti u<br />

nacin razmisljanja o fajlovima kao nizovima bajtova.<br />

Adrese, kao sto je oznaceno na slici iznad, predstavljaju lokacije na kojima se<br />

nalaze bajtovi. Posmatrajte ovo kao da su u pitanju redovi u bilo kom tekst<br />

fajlu, gde svaki red sadrzi samo po dva slova koja predstavljaju jedan bajt.<br />

Adrese predstavljaju samo broj reda u kojem se nalazi bajt koji posmatramo.<br />

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

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

Saved successfully!

Ooh no, something went wrong!