首页
社区
课程
招聘
如何给加壳的程序打补丁,高手指教,谢谢
发表于: 2004-11-13 18:28 8904

如何给加壳的程序打补丁,高手指教,谢谢

2004-11-13 18:28
8904
原程序是加壳的,我脱壳分析后发现了一个标志位,
00402568  mov eax,01
在程序启动的时候会执行这个指令,我想动态修改这个指令,改成
mov eax ,0      因为程序对代码段有crc校验,所以我修改完了等程序执行完这条指令后必须马上改回去,请教一下高手怎么对这个加壳的程序打补丁?

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 1
支持
分享
最新回复 (25)
雪    币: 216
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
在线等啊,高人快来指点阿
2004-11-13 19:06
0
雪    币: 216
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
5555555,在线的高手帮我看看阿
在线等等等。。。。。。。。
2004-11-13 20:49
0
雪    币: 245
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
1。脱壳
2。修改crc,使crc不发生作用
3。修改指令

可否?

粗浅意见,共同探讨
2004-11-13 20:56
0
雪    币: 216
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
我只是提供一个补丁,不能把原程序脱壳了给别人运行
2004-11-13 20:58
0
雪    币: 245
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
程序启动以后,在 mov eax,01 的前面几行修改指令,指向你自己的dll(挂接).后面在来一个指向你自己程序的指令。
干脆把crc也改了。
(外挂技术)嘿嘿
2004-11-13 21:03
0
雪    币: 216
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
最初由 binglan212 发布
程序启动以后,在 mov eax,01 的前面几行修改指令

程序是加壳了的,你在什么时期来修改指令呢,必须要在壳把代码段释放出来后才能改阿,这个过程怎么把握?
2004-11-13 22:04
0
雪    币: 216
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
高手不要潜水了,出来帮我看看
不解决睡不着啊
2004-11-13 22:06
0
雪    币: 216
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
高手末潜水
高手莫潜水
2004-11-13 22:37
0
雪    币: 216
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
高手快点啊,明天论坛就要关了
急急如即令
我每隔5秒刷一次
2004-11-13 22:41
0
雪    币: 245
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
可不可以这样:
找到 mov eax,01 之前随便一处调用api的地址,然后hook这个api(之前要hook外壳的loadlibary或者GetProcAddress,修改api的调用地址指向自己的代码。达到你说的目的呢?
2004-11-13 23:11
0
雪    币: 216
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
恩,此方法可行,不过麻烦了一点
不知道还有更好的方法没
2004-11-14 02:58
0
雪    币: 216
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
还有没有高手进来看看阿
只有binglan212 肯帮我,论坛里面难道就没有。。。
2004-11-14 02:59
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
你觉得你的思路是可能问题吗?apihook就是比较简单的可行办法了,你想想:你怎么判断程序是不是运行到你要的代码处?要把补丁写成调试器吗?
2004-11-14 10:27
0
雪    币: 431
活跃值: (442)
能力值: ( LV12,RANK:530 )
在线值:
发帖
回帖
粉丝
15
read成功后write,write 成功后再恢复。write中最好包含A-CRC。
2004-11-14 10:31
0
雪    币: 216
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
最初由 yafeng 发布
你觉得你的思路是可能问题吗?apihook就是比较简单的可行办法了,你想想:你怎么判断程序是不是运行到你要的代码处?要把补丁写成调试器吗?

多谢指点,能否多指点一二,非常感谢
2004-11-14 14:02
0
雪    币: 216
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
最初由 Vegeta 发布
read成功后write,write 成功后再恢复。write中最好包含A-CRC。

太深奥了,能说浅显一点吗?
2004-11-14 14:03
0
雪    币: 431
活跃值: (442)
能力值: ( LV12,RANK:530 )
在线值:
发帖
回帖
粉丝
18
就是不停的读内存,写内存呗……方法很傻……
2004-11-14 15:24
0
雪    币: 339
活跃值: (1510)
能力值: ( LV13,RANK:970 )
在线值:
发帖
回帖
粉丝
19
写一个内存补丁(Loader),一次性搞定。
2004-11-14 17:17
0
雪    币: 216
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
20
最初由 nbw 发布
写一个内存补丁(Loader),一次性搞定。


大哥,有没有例子提供参考啊?:D :D
2004-11-14 18:46
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
21
最初由 nbw 发布
写一个内存补丁(Loader),一次性搞定。


不是这么简单的,肯定是写个loader了,不过他的代码是运行后又进行的crc校验的,所以比较麻烦,所以运行后还要改回去,一种方法是:先改过来,然后找一个在代码后边的api然后hook他,在代码中还原内容,不过最好的办法还是加个anti crc吧,直接在loader中把校验去掉,哪样就可以随便改了
2004-11-14 19:29
0
雪    币: 203
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
e5v
22
可以 crc 软件中的一部分代码的么?
用什么api 读写 进程中的代码?
//-----------------------------
2004-11-14 21:10
0
雪    币: 431
活跃值: (442)
能力值: ( LV12,RANK:530 )
在线值:
发帖
回帖
粉丝
23
可以。但我想:如果你只对部分代码进行CRC校验这样会更容易暴露这个程序的突破点。
2004-11-15 10:26
0
雪    币: 3758
活跃值: (3337)
能力值: ( LV15,RANK:500 )
在线值:
发帖
回帖
粉丝
24
Loader或者SMC把
2004-11-15 14:02
0
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
25
试一下直接用keymake 2.0 修改版做个内存补丁。
2004-11-15 15:37
0
游客
登录 | 注册 方可回帖
返回
//