Tut2


UCS lesson 7 tut 3
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Bardzo proste zabezpieczenie. Program nie jest spakowany, crackmes to messagebox.
Coraz czesciej takie "zabezpieczenie" maja komercyjne programy. No wiec odpalamy.
pojawia sie nagscreen z napisem "Spathuj tak, zeby tego nie widziec". No wiec do dziela.
Odpalamy wdasm'a i diasemblerujemy program {Diasembler/Open file for Disassemlbe..}
Sprobujmy poszukac tekstu z naga{Search/Search Text}. Nic. Trzeba inaczej. W Soft-Ice
zakladamy pulapke na funkcje MessageBoxA {"bpx MessageBoxA"}. Odpalamy crackme. SI zaskoczyl.
Wciskamy F12. Znowu program. Wcisnij OK, i jestesmy w SI.Sprawdz adres wywolania funkcji
MessageBoxA(Jak ??? Powinienes wiedziec. No dobra.Musisz zapisac sobie 8 cyfr z pierwszej
kolumny okna danych [zaczynajac od miejsca 5]). Wroc do Wdasm'a. W funkcji Goto/Code Location
wpisz nasz adres (00401079). Jestesmy przy interesujacej nas instrukcji.

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0040102F(C) {1}
|
:0040106B 6A00 push 00000000

* Possible StringData Ref from Data Obj ->"About"

:0040106D 6832304000 push 00403032
:00401072 686E304000 push 0040306E
:00401077 6A00 push 00000000

* Reference To: USER32.MessageBoxA, Ord:01BBh

:00401079 E80E000000 Call 0040108C

Widzimy adres z ktore program skakal do tej instrukcji {1}
Sprawdzmy to.
:0040102B 663D1001 cmp ax, 0110
:0040102F 743A je 0040106B {bad/good boy}
:00401031 6683F802 cmp ax, 0002
:00401035 7412 je 00401049
:00401037 6683F810 cmp ax, 0010
:0040103B 740C je 00401049
:0040103D 663D1101 cmp ax, 0111
:00401041 741D je 00401060
:00401043 2BC0 sub eax, eax

No wiec teraz easy. W hex edytorze zmieniamy offset 0000042F z 74(je) na 90(nop), a takze
offset wyzej na NOP(90).Oki gotowe. Crackme dziala.

made by holus^Un
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Wyszukiwarka