Somnus0816 发表于 2024-11-15 15:13

某科手动成功后打补丁一直失败,请大佬帮忙看看打补丁的操作是否有问题

本帖最后由 Somnus0816 于 2024-11-15 15:31 编辑

设置大白补丁:补丁的模块和进程默认,因为就是对主进程和模块打补丁。

因为是加了VMP的壳,需要解码后在进行补丁操作,这里尝试过createWindowExW的HOOK API方式,也没成功,因为是先通过createWindowExW下断,才通过特征找到关键数据,故认为createWindowExW时已解码。

通过关键入口断点信息,填写中断地址信息。

根据关键入口断点信息填写补丁数据内容信息:
[+0],重点理解这个表达式:
前提知道[ ]操作符有取值的作用,ESP+150获取到ESP偏移150的内存地址,取到ESP偏移150的内存地址存储的值,因为存储的值是一个地址,因此还需要从存储的地址取值,还需要一个取值操作,故最终表达式为[+0],这样才能取到存储“781ce59f26e06c6c”的内存地址。

设置频率

设置条件断点




执行补丁后运行程序,运行程序记得关闭调试器,因为大白有反调试的检测,运行前有大白的Logo显示,表示已经通过补丁运行程序:

表示补丁已成功,但是程序还是启动了,证明修改平台用户编码失败了。查看大白帮助文档,可以生成调试版的劫持补丁,生成调试版劫持补丁后查看日志。

通过查看日志,解析断点成功,但是设置断点失败了,思考下断点方式,修改为硬件断点后,查看日志

设置断点还是失败,修改为智能断点,查看日志                     

通过查看日志发现,解析断点成功了,设置断点也成功了,但是程序还是能正常启动,说明修改平台编码未成功。
请大佬帮忙看一下打动态补丁的思路和操作是否正确,为什么补丁打成功了没生效,解码时间也从500毫秒到3秒尝试了,都没成功,还请大佬指点一下打补丁的过程。
软件附件下载地址:
https://wwtx.lanzout.com/i5Dds2f501hg

jiachenhui 发表于 2024-11-15 17:13

用易语言打补丁简单点,搜特征码替换就行了

Somnus0816 发表于 2024-11-15 17:39

jiachenhui 发表于 2024-11-15 17:13
用易语言打补丁简单点,搜特征码替换就行了

主要不是替换特征码的位置,还得根据寄存器偏移

jiachenhui 发表于 2024-11-15 18:02

软件编码不是固定字符串么

Somnus0816 发表于 2024-11-15 21:27

jiachenhui 发表于 2024-11-15 18:02
软件编码不是固定字符串么

用搜索替换的补丁也试过,也没成
页: [1]
查看完整版本: 某科手动成功后打补丁一直失败,请大佬帮忙看看打补丁的操作是否有问题