13.07.2015 Views

The art of cracking - Tutoriali

The art of cracking - Tutoriali

The art of cracking - Tutoriali

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.

ReEnable b u t t o n s - APIOvaj deo poglavlja ce vas nauciti kako da pronadjete tacno mestoodakle se iskljucuju / ukljucuju opcije. Naravno posto je Micros<strong>of</strong>t-ovadokumentacija veoma obimna spisak svih raspolozivih API funkcija nije nimalo lako prelistati i naci ono sto vam treba. Naravno kao i svaki drugiveoma nestrpljivi cracker odlucio sam da batalim API reference i da nadjemneki prakticni primer kojim cu lako otkriti kako se to iskljucuju / ukljucujudugmici, meniji, formovi i sl... Slucajno sam pri ruci imao savrsen primer zaovaj problem. Primer …\Casovi\Cas8\editor.exe izgleda ovako:Kao sto se vidi na ovojslici u pitanju je jos jedanNAG ekran koji trebaukloniti. Jedina prednostovog primera nad svimdrugima je to sto on imaiskljuceno dugme koje seposle deset sekundiukljuci propustajuci vasdalje u program. Ovo jebitna karakteristika kojucemo iskoristiti da bi smonasli koja je to APIfunkcija zaduzena zaukljucivanje tog dugmeta.Da bi smo ovo uradilimozemo da koristimo dvanacina: laksi nacin i mojnacin :) Jedini problem salaksim nacinom je da onpredpostavlja da znate API funkcije koje se koriste za simuliranje tajmera. Tojest da znamo kako to program napravi pauzu od 10 sekundi, a ako vam ovonije poznato mozete uvek da koristite moj nacin :)Nacin 1:Laksi nacin pronalaska mesta odakle se poziva funkcija koja ukljucujeiskljuceno dugme je da postavimo break-point na svaku referencu ka APIfunkcijama koje sluze za pravljenje tajmera i / ili pauziranje programa. Ovorade dve API funkcije: kernel32.Sleep i user32.SetTimer pa cemo pronacikoja se od ove dve koristi u ovom primeru. Preko Ollya pogledajte koji se toimporti nalaze u module -> names prozoru. Od ove dve spomenute funkcijepronacicete samo API SetTimer. Naravno da se vreme moze pronaci i prekodrugih APIa kao sto su GetLocalTime, GetSystemTime i slicnih ali je najbrzepreko SetTimer APIa. Dakle postavimo break-point on every reference naovaj API i onda st<strong>art</strong>ujmo program. Program ce zastati na adresi 00401253odakle se poziva SetTimer API. Ako odskrolujemo malo gore i pregledamoceo ovaj CALL videcemo kako se to st<strong>art</strong>uje timer i mozda cemo naci APIfunkciju koja ukljucuje dugme. Ono sto vidimo prikazano je na sledecoj slici:<strong>The</strong> Art <strong>of</strong> Cracking by Ap0x Page 82 <strong>of</strong> 165

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

Saved successfully!

Ooh no, something went wrong!