-
-
[旧帖]
穿山甲写好补丁后不能替换机器码!!!
0.00雪花
-
发表于:
2009-12-7 21:18
4325
-
[旧帖] 穿山甲写好补丁后不能替换机器码!!!
0.00雪花
!- 保护系统级别为 (专业版)
!-<所使用的保护模式>
屏蔽调试器
双进程模式
防止内存补丁模式
!- <备份密钥设置>
固定的备份密钥
!- <目标程序压缩设置>
较好 / 较慢 的压缩方式
!<其它保护设置>
版本号 4.40 01-11-2005
<- 共消耗时间 00时00分01秒703毫秒 ->
我写好补丁F9运行弹出窗口还是原来的机器码,我想办法改变机器码后,但提示用户名和注册码有效并保存,运行到后面就会出错,重装系统机器码就会变!
010459EF C1E0 06 SHL EAX,6
010459F2 034424 08 ADD EAX,DWORD PTR SS:[ESP+8]
010459F6 8B4481 18 MOV EAX,DWORD PTR DS:[ECX+EAX*4+18]中断
010459FA 35 8AC0E665 XOR EAX,65E6C08A----JMP 401000跳到补丁
010459FF C2 0800 RETN 8
01045A02 E8 05000000 CALL 01045A0C
01045A07 E9 0C000000 JMP 01045A18
01045A0C 68 78300701 PUSH 1073078
01045A11 FF15 70620601 CALL DWORD PTR DS:[1066270] ; kernel32.InitializeCriticalSection
01045A17 C3 RETN
01045A18 68 245A0401 PUSH 1045A24
这个壳很奇怪,中断在处,单步走,到010459FA 35 8AC0E665 XOR EAX,65E6C08A这里寄存器的EAX里出现的不是机器码,所以我在这里写补丁是没有用的
010382E5 3386 60200000 XOR EAX,DWORD PTR DS:[ESI+2060]这里写补丁,可以替换,但程序会出错,
010382EB 5E POP ESI ; 012130E0到这里寄存器里才出现机器码
010382EC C2 0400 RETN 4
010382EF 55 PUSH EBP
010382F0 8BEC MOV EBP,ESP
010382F2 51 PUSH ECX
请高手指点,
程序下载xzc.rar
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)