0
Trick Penyimpanan Registry -> Directory Printer 2.0

.
Program ini ditujukan untuk mencetak daftar directory pada Windows 9x, yang dengan sangat "terkejut" tidak dimiliki oleh Windows itu sendiri, sehingga membutuhkan utility pihak ketiga ini.

Protection program ini tidaklah sukar, dia hanya meminta semacam unlocking code, yang dengan mudah dapat kita cari. Yang menarik ada cara software ini memberi "tanda" jika ia sudah diregister. Kita akan lihat bagaimana caranya.
Ketika teregister program akan membuat key ini di registry :

[HKEY_LOCAL_MACHINE\Software\XMS]
"Reg"=dword:00000007


Jalankan Directory Printer, pilih option untuk memasukkan Unlocking Code. Dan masukkan sembarang unlocking code, katakanlah 11111, tekan OK. "Incorrect registration code" kata si Dirprint ini.

sekarang kembali kita pake deadlisting, bikin deadlisting dengan Wdasm. Buka string reference pada menu refs, dan cari kata Inccorect ... tadi. Ok, begitu kamu menemukannya segera double click pada kalimat tersebut, dan kamu akan diantarkan ke kode yang bersangkutan. Untuk meyakinkan bahwa kode yang ditemukan hanya satu, double click sekali lagi. Ya! Sekarang kita bisa yakin kalau dia hanya muncul sekali :

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0044702A(C)
|
:00447120 6A30 push 00000030

* Possible StringData Ref from Code Obj ->"Error"
|
:00447122 68D8714400 push 004471D8

* Possible StringData Ref from Code Obj ->"Incorrect registration code"
|
:00447127 68E0714400 push 004471E0
:0044712C 8BC3 mov eax, ebx
:0044712E E8C9BBFDFF call 00422CFC
:00447133 50 push eax

* Reference To: user32.MessageBoxA, Ord:0000h
|
:00447134 E87FEFFBFF Call 004060B8

' Tampilkan messageboxa dengan Inccorect ... "



Lihat di atas sana ada conditional Jump, Pergi ke alamat tersebut :

:00447021 8B55F4 mov edx, dword ptr [ebp-0C]
:00447024 58 pop eax
:00447025 E856CCFBFF call 00403C80
:0044702A 0F85F0000000 jne 00447120

"Lihat diatas, kode ini akan mengantarkan kita ke Inccorect ... "

" Ketika kamu berada di 447025, ketikkan d eax dan d edx, kamu akan melihat serial asli dan palsunya"


:00447030 B201 mov dl, 01
:00447032 A128654400 mov eax, dword ptr [00446528]
:00447037 E8E8F5FFFF call 00446624
:0044703C 8BF0 mov esi, eax
:0044703E BA02000080 mov edx, 80000002
:00447043 8BC6 mov eax, esi
:00447045 E86EF6FFFF call 004466B8
:0044704A 8B0D58DD4400 mov ecx, dword ptr [0044DD58]
:00447050 8B09 mov ecx, dword ptr [ecx]
:00447052 8D45FC lea eax, dword ptr [ebp-04]

* Possible StringData Ref from Code Obj ->"Software\"
|
:00447055 BA74714400 mov edx, 00447174
:0044705A E85DCBFBFF call 00403BBC
:0044705F 8B55FC mov edx, dword ptr [ebp-04]
:00447062 8BC6 mov eax, esi
:00447064 E8E3FBFFFF call 00446C4C
:00447069 84C0 test al, al
:0044706B 751F jne 0044708C
:0044706D 8B0D58DD4400 mov ecx, dword ptr [0044DD58]
:00447073 8B09 mov ecx, dword ptr [ecx]
:00447075 8D45FC lea eax, dword ptr [ebp-04]

* Possible StringData Ref from Code Obj ->"Software\"
|
:00447078 BA74714400 mov edx, 00447174
:0044707D E83ACBFBFF call 00403BBC
:00447082 8B55FC mov edx, dword ptr [ebp-04]
:00447085 8BC6 mov eax, esi
:00447087 E890F6FFFF call 0044671C

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0044706B(C)
|
:0044708C 8B0D58DD4400 mov ecx, dword ptr [0044DD58]
:00447092 8B09 mov ecx, dword ptr [ecx]
:00447094 8D45FC lea eax, dword ptr [ebp-04]

* Possible StringData Ref from Code Obj ->"Software\"
|
:00447097 BA74714400 mov edx, 00447174
:0044709C E81BCBFBFF call 00403BBC
:004470A1 8B55FC mov edx, dword ptr [ebp-04]
:004470A4 33C9 xor ecx, ecx
:004470A6 8BC6 mov eax, esi
:004470A8 E863F7FFFF call 00446810
:004470AD B907000000 mov ecx, 00000007

* Possible StringData Ref from Code Obj ->"Reg"
|
:004470B2 BA88714400 mov edx, 00447188
:004470B7 8BC6 mov eax, esi
:004470B9 E89EF8FFFF call 0044695C
:004470BE 8BC6 mov eax, esi
:004470C0 E833BDFBFF call 00402DF8
:004470C5 6A40 push 00000040

Nah diatas adalah bagian menarik, ternyata software setelah berhasil diregister akan meletakkan suatu nilai di reg sebagai penanda bahwa software telah diregister. Dugaan gua pertama adalah bahwa reg berisi unlocking codenya, tapi ternyata gua salah reg berisi dword bernilai 7, Jadi penanda software ini adalah nilai 7 tadi, coba hapus key tersebut, maka software akan terunregister lagi, coba masukkan lagi nilai 7 maka software akan terigester lagi

Source: SoftIce 3.23

Bookmark and Share


0 komentar :

Posting Komentar

Silahkan tinggalkan komentar anda disini...

 
Ujie Caprone | © 2011 Blogger Template by Ujiecaprone.com