前几天PPP307送给我一个路桥CAD软件(XCHT14),说实话,
软件编制的不是很好,但是他体现了初学者
的crack思路,和忽视的方面。在这里把他补上,总共改动4个字节就收工了。
主程序:newxcht.arx
读狗主控程序:TDMD.vxd(不用我说,大家也知道是什么狗了)
工具:softICE4.0 w32dasm
反编译后可以找到以下字串,不过ppp307为了表示自己的恒心和毅力。把它都改掉了。
由以下
代码可以知道,调用10006520的共17处。但是我们没有必要path每一处
代码,只要看
程序从这个call返回了什么就行了。通常我们知道早期的狗都是返回一个标志。
而这个程序非常聪明的返回了一个标志并且携带了一个种子
=================================================================================
* Referenced by a
CALL at Addresses:
|:100084C9 , :1000AABC , :1000B091 , :1000BD46 , :1000C704
|:1000E15A , :1000E8DA , :100151FC , :1001A680 , :1001A7AC
|:1001AA71 , :1001B5BB , :1001DF45 , :10021FE2 , :10022CC1
|:10023074 , :10023154
|
:10006520 83EC40
sub esp, 00000040
:10006523 B907000000
mov ecx, 00000007
:10006528 56
push esi :10006529 57
push edi * Possible StringData Ref from Data Obj ->"我要解密! 我要解密!!! 1974"
|
:1000652A BE84190310
mov esi, 10031984
:1000652F 8D7C2408
lea edi,
dword ptr [
esp+08]
:10006533 F3
repz :10006534 A5
movsd :10006535 66A5
movsw :10006537 A4
movsb * Possible StringData Ref from Data Obj ->"我要解密! 我要解密!!! 1972"
|
:10006538 BE64190310
mov esi, 10031964
:1000653D 8D7C2428
lea edi,
dword ptr [
esp+28]
:10006541 B907000000
mov ecx, 00000007
:10006546 F3
repz :10006547 A5
movsd :10006548 66A5
movsw :1000654A A4
movsb :1000654B C705E4500310E9F40000
mov dword ptr [100350E4], 0000F4E9
:10006555 C705EC50031000000000
mov dword ptr [100350EC], 00000000
:1000655F C705E85003101E000000
mov dword ptr [100350E8], 0000001E
:10006569 8D442408
lea eax,
dword ptr [
esp+08]
:1000656D A3E0500310
mov dword ptr [100350E0],
eax :10006572 E8C9D3FFFF
call 10003940------------->进入狗调用
:10006577 85C0
test eax,
eax :10006579 740D
je 10006588
------------------------------------------------------------------
:10006572 EB38
jmp 100065AC
:10006574 D3FF
sar edi,
cl :10006576 FF85C0740D68
inc dword ptr [
ebp+680D74C0]
:1000657C 50
push eax ------------------------------------------------------------------我改动的地方
* Possible StringData Ref from Data Obj ->"
Dog reading error:"
|
:1000657B 6850190310
push 10031950
* Reference To: ACAD.acrx_abort, Ord:0D5Dh
|
:10006580 E8D1D30100
Call 10023956
:10006585 83C404
add esp, 00000004
* Referenced by a (U)nconditional
or (C)onditional Jump at Address:
|:10006579(C)
|
:10006588 8D442408 &nb