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.

Bruteforce the encryptionOvaj deo poglavlja spaja dve jako bitne celine u jednu. Ovde ce bitidetaljno objasnjene tehnike koriscenja bruteforsinga u razbijanju enkripcija.Morate da shvatite da kada je upitanju reversing slozenih ili relativnoslozenih enkripcija nije moguce naci pravi nacin za njihovo dekriptovanje kaosto je to bio slucaj u predhodnom delu poglavlja. Jedini nacin da se pronadjepravi password za enkriptovani fajl je da proverimo sve oblike koje seriskibroj moze da ima i da dekriptujemo fajl sa njima. Ovo moze bitikomplikovano ako pokusavamo da dekriptujemo ceo fajl, da bi smo ubrzaliovaj proces mi cemo dekriptovati samo prvih sest bajtova fajla. Ako su svihsest bajtova ispravni onda je velika verovatnoca da ce ceo fajl bitidekriptovan kako treba. Ja sam delimicno olaksao posao dekriptovanja takosto sam koristio password duzine 6 karaktera, gde su svi karakteri velikaslova. Iako se koriste samo velika slova broj kombinacija slova koje mogupredstavljati tacan seriski broj iznosi 244,140,625 seriskih brojeva duzinesest karaktera. Ovaj neverovatan broj postaje samo veci ako se koriste malaslova i brojevi zajedno sa velikim slovima. Naravno da nalazenje passwordarucno moze da potraje dosta dugo vremena pa se zbog toga pisuspecijalizovane aplikacije koje nam olaksavaju posao proveravajucu svemoguce kombinacije slova i brojeva.Za potrebe ovog poglavlja je napisan poseban algoritam kojiencryptuje odredjeni fajl pomocu nekog passworda i nekog algoritma zaenkriptovanje. Primer enkripcije se vidi na sliciispod. Naravno password sa kojim je enkriptovanfajl encrypted.exe nije AAAAAB nego neki drugikoji mi treba da otkrijemo. Pre samog pisanjadecryptera-bruteforcera moracemo prvo davidimo kako to algoritam za enkripciju radi da bismo mogli na osnovu toga da napisemoodgovarajuci bruteforcer. Ne brinite algoritamnije komplikovan ali je dovoljno tezak da se fajlne moze dekriptovati bez bruteforcera. Otvorimoprogram encryptFile.exe pomocu Ollya. Posto program izbaci stringencrypting done!!! kada se zavrsi enkriptovanje mozemo lako da nadjemoCALL koji je zaduzen za enkripciju. Taj CALL pocinje na adresi 00453A64.Kao parametre u program unesite original.exe, new.exe i PSWORD. Postavitebreak-point na pocetak CALLa za racunanje i pritisnite Encrypt File dugme.Olly je zastao na break-pointu i sada treba da se krecemo kroz kod sa F8kako bi videli sta se to desava u ovom CALLu. Sve ovo nam je totalnonebitno dok ne stignemo do ovde:00453BD5 |. BB 0100000000453BDA |. 8B0700453BDC |. 3347 0400453BDF |. 3347 0800453BE2 |. 3347 0C00453BE5 |. 3347 1000453BE8 |. 33C600453BEA |. 8BF0MOV EBX,1MOV EAX,DWORD PTR DS:[EDI]XOR EAX,DWORD PTR DS:[EDI+4]XOR EAX,DWORD PTR DS:[EDI+8]XOR EAX,DWORD PTR DS:[EDI+C]XOR EAX,DWORD PTR DS:[EDI+10]XOR EAX,ESIMOV ESI,EAX<strong>The</strong> Art <strong>of</strong> Cracking by Ap0x Page 103 <strong>of</strong> 165

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

Saved successfully!

Ooh no, something went wrong!