-
-
[求助][求助]直接改跳转,软件可开,但没有取得许可
-
发表于: 2011-5-10 08:19 2778
-
小弟只是个门外汉
最近拿个软件在练练
请指点指点
CPU Disasm
位址 Hex dump Command Comments
006C023F |. 64:8920 MOV DWORD PTR FS:[EAX],ESP ; Installs SE handler 6C04C2
006C0242 |. 8BD3 MOV EDX,EBX
006C0244 |. A1 00E76E00 MOV EAX,DWORD PTR DS:[6EE700]
006C0249 E8 BA7ED4FF CALL 00408108
006C024E |. A1 C4E06E00 MOV EAX,DWORD PTR DS:[6EE0C4] 将值置入EAX,此时EAX如下
006C0253 |. 8038 00 CMP BYTE PTR DS:[EAX],0 比对是否为0,在此下断
006C0256 0F84 69010000 JE 006C03C5 ; free viewer
006C025C |. 8BD3 MOV EDX,EBX
006C025E |. A1 28F26E00 MOV EAX,DWORD PTR DS:[6EF228]
006C0263 |. E8 A07ED4FF CALL 00408108
006C0268 |. A1 A4E56E00 MOV EAX,DWORD PTR DS:[6EE5A4]
006C026D |. 8B00 MOV EAX,DWORD PTR DS:[EAX]
006C026F |. 0FB640 40 MOVZX EAX,BYTE PTR DS:[EAX+40]
006C0273 |. 8B15 B8ED6E00 MOV EDX,DWORD PTR DS:[6EEDB8]
006C0279 |. 2202 AND AL,BYTE PTR DS:[EDX]
我在006C0253这下断,并前往006F8ECC位址
把值改为0即可破解
问题是006F8ECC这区段无法修改(如下文,该址一片空白)
技术不足,请高手指点
为何不能修改,该如何处置
这软件多处保护都是用这种方式
如果没有修改006F8ECC这值
直接改跳转,软件可开,但没有取得许可
第二个问题是OD的跟纵如何使用
这个问题是否能用跟纵功能得知哪一指令行把值推到006F8ECC呢
EAX 006F8ECC Tool.006F8ECC
ECX 00000003
EDX 00000000
EBX 00C1F634
ESP 00C1F5EC
EBP 00C1F608
ESI 004D1E60 Tool.004D1E60
EDI 05C66600
EIP 006C0253 Tool.006C0253
CPU Disasm
位址 Hex dump Command Comments
006F8EC0 0000 ADD BYTE PTR DS:[EAX],AL
006F8EC2 0000 ADD BYTE PTR DS:[EAX],AL
006F8EC4 0000 ADD BYTE PTR DS:[EAX],AL
006F8EC6 0000 ADD BYTE PTR DS:[EAX],AL
006F8EC8 0000 ADD BYTE PTR DS:[EAX],AL
006F8ECA 0000 ADD BYTE PTR DS:[EAX],AL
006F8ECC 0000 ADD BYTE PTR DS:[EAX],AL
006F8ECE 0000 ADD BYTE PTR DS:[EAX],AL
006F8ED0 0000 ADD BYTE PTR DS:[EAX],AL
006F8ED2 0000 ADD BYTE PTR DS:[EAX],AL
006F8ED4 0000 ADD BYTE PTR DS:[EAX],AL
006F8ED6 0000 ADD BYTE PTR DS:[EAX],AL
006F8ED8 0000 ADD BYTE PTR DS:[EAX],AL
006F8EDA 0000 ADD BYTE PTR DS:[EAX],AL
最近拿个软件在练练
请指点指点
CPU Disasm
位址 Hex dump Command Comments
006C023F |. 64:8920 MOV DWORD PTR FS:[EAX],ESP ; Installs SE handler 6C04C2
006C0242 |. 8BD3 MOV EDX,EBX
006C0244 |. A1 00E76E00 MOV EAX,DWORD PTR DS:[6EE700]
006C0249 E8 BA7ED4FF CALL 00408108
006C024E |. A1 C4E06E00 MOV EAX,DWORD PTR DS:[6EE0C4] 将值置入EAX,此时EAX如下
006C0253 |. 8038 00 CMP BYTE PTR DS:[EAX],0 比对是否为0,在此下断
006C0256 0F84 69010000 JE 006C03C5 ; free viewer
006C025C |. 8BD3 MOV EDX,EBX
006C025E |. A1 28F26E00 MOV EAX,DWORD PTR DS:[6EF228]
006C0263 |. E8 A07ED4FF CALL 00408108
006C0268 |. A1 A4E56E00 MOV EAX,DWORD PTR DS:[6EE5A4]
006C026D |. 8B00 MOV EAX,DWORD PTR DS:[EAX]
006C026F |. 0FB640 40 MOVZX EAX,BYTE PTR DS:[EAX+40]
006C0273 |. 8B15 B8ED6E00 MOV EDX,DWORD PTR DS:[6EEDB8]
006C0279 |. 2202 AND AL,BYTE PTR DS:[EDX]
我在006C0253这下断,并前往006F8ECC位址
把值改为0即可破解
问题是006F8ECC这区段无法修改(如下文,该址一片空白)
技术不足,请高手指点
为何不能修改,该如何处置
这软件多处保护都是用这种方式
如果没有修改006F8ECC这值
直接改跳转,软件可开,但没有取得许可
第二个问题是OD的跟纵如何使用
这个问题是否能用跟纵功能得知哪一指令行把值推到006F8ECC呢
EAX 006F8ECC Tool.006F8ECC
ECX 00000003
EDX 00000000
EBX 00C1F634
ESP 00C1F5EC
EBP 00C1F608
ESI 004D1E60 Tool.004D1E60
EDI 05C66600
EIP 006C0253 Tool.006C0253
CPU Disasm
位址 Hex dump Command Comments
006F8EC0 0000 ADD BYTE PTR DS:[EAX],AL
006F8EC2 0000 ADD BYTE PTR DS:[EAX],AL
006F8EC4 0000 ADD BYTE PTR DS:[EAX],AL
006F8EC6 0000 ADD BYTE PTR DS:[EAX],AL
006F8EC8 0000 ADD BYTE PTR DS:[EAX],AL
006F8ECA 0000 ADD BYTE PTR DS:[EAX],AL
006F8ECC 0000 ADD BYTE PTR DS:[EAX],AL
006F8ECE 0000 ADD BYTE PTR DS:[EAX],AL
006F8ED0 0000 ADD BYTE PTR DS:[EAX],AL
006F8ED2 0000 ADD BYTE PTR DS:[EAX],AL
006F8ED4 0000 ADD BYTE PTR DS:[EAX],AL
006F8ED6 0000 ADD BYTE PTR DS:[EAX],AL
006F8ED8 0000 ADD BYTE PTR DS:[EAX],AL
006F8EDA 0000 ADD BYTE PTR DS:[EAX],AL
赞赏
他的文章
- [求助].NET软件内码 , 请高人赐教 6798
- [求助]NET编译的要怎么破解 11549
- [求助]64位调试问题请教 4209
- [求助]请教od数据溢出问题 2666
- [求助]ida代码修改请教 26064
看原图
赞赏
雪币:
留言: