asd0109 发表于 2023-10-3 21:40

程序在调试后运行直接退出应该如何设置断点?(应该是对自身有校验)

最近用X64DBG调试了一个程序,调试过程都很正常,然后也保存了。但是保存的新文件在执行的时候直接退出,怀疑是对自身文件进行了是否修改的判断,如果判断为修改过的那么就直接退出。
像这样的程序应该如何破解才能让它不退出呢?

我在 exitprocess 这里下了断点,但是往上找到跳转修改后还是不管用,感觉应该是用 call 实现的退出程序。

请各位老师指点迷津,感谢!

666888tzq 发表于 2023-10-4 08:17

可能程序有自校验,换个思路,打补丁,不修改代码。

asd0109 发表于 2023-10-4 09:29

感谢帮助,的确是个好思路,茅塞顿开。目前内存补丁有没有什么好工具?麻烦推荐一下。


666888tzq 发表于 2023-10-4 10:10

asd0109 发表于 2023-10-4 09:29
感谢帮助,的确是个好思路,茅塞顿开。目前内存补丁有没有什么好工具?麻烦推荐一下。

大白baymax补丁工具,支持内存补丁和异常中断补丁,功能强大,论坛里就有,自行搜索下载。:lol

asd0109 发表于 2023-10-4 18:00

666888tzq 发表于 2023-10-4 10:10
大白baymax补丁工具,支持内存补丁和异常中断补丁,功能强大,论坛里就有,自行搜索下载。

感谢帮助

冥界3大法王 发表于 2023-10-6 08:49

这说的不就是IDM。。。
齐头并进,在关键公共点下断,触发时不执行也就成功了。
经测试再也没退出过。

asd0109 发表于 2023-10-6 09:48

冥界3大法王 发表于 2023-10-6 08:49
这说的不就是IDM。。。
齐头并进,在关键公共点下断,触发时不执行也就成功了。
经测试再也没退出过。
感谢回复,我在弄的是mirc一个很古老的 irc 聊天工具,在修改完后再启动就会直接退出,很苦恼。

不过现在用了内存补丁后就没有这个问题了。

最近也在一直研究IDM ,IDM 的区别在于运行一段时间后会退出,我尝试过断在exitprocess 这个断点然后向后找,结果也是没有找到调用退出的地方。

正好您要是在这方面有经验的话可以给我讲讲,感谢!

冥界3大法王 发表于 2023-10-6 10:22

asd0109 发表于 2023-10-6 09:48
感谢回复,我在弄的是mirc一个很古老的 irc 聊天工具,在修改完后再启动就会直接退出,很苦恼。

...
最上层是由xxxxxx组成的一个数字串
再往上会找到FName ,FSerial,Mdate(注册表键值过期标志)
硬盘卷标
还有就是升级检测,联网检测,hosts检测
xxxxx执行后。。。退出标志的代码就触发了
(电脑主板寄走维修去了,完全凭记忆说的)

asd0109 发表于 2023-10-6 15:23

冥界3大法王 发表于 2023-10-6 10:22
最上层是由xxxxxx组成的一个数字串
再往上会找到FName ,FSerial,Mdate(注册表键值过期标志)
硬盘卷标 ...

通过修改寄存器值的方式现在我已经可以不退出程序了,但是现在还会不定时的弹一个提示fake 序列号的窗口,然后还弹开ie 打开它的官网,不过即使这样也不退出主程序了,挺好的。

再慢慢研究研究,我感觉弹窗并不是主 exe 干的,应该是另一个 exe 或者 DLL 干的。
页: [1]
查看完整版本: 程序在调试后运行直接退出应该如何设置断点?(应该是对自身有校验)