gpt4 book ai didi

c++ - 更改已编译二进制文件的部分

转载 作者:太空宇宙 更新时间:2023-11-04 06:43:15 24 4
gpt4 key购买 nike

作为第二语言学习英语,对于错误和尴尬感到抱歉

我给了一个特殊的项目来处理。公司丢失了应用程序的源代码,我必须对其进行更改。现在,对整个事情进行逆向工程对于一个人来说是不可能的,它太大了,但是修补单个功能是可行的,因为变化不是那么巨大。

因此,一种可能的解决方案是编译 C 代码并以某种方式 - 在重写地址之后 - 将其修补到实际的二进制文件中,理想情况下,替换 CALL 指令跳转到的代码,或者在我的代码中插入一个 JMP。

有什么方法可以使用 MingW32 完成此操作吗?如果是,你能提供一个简单的例子吗?我也对可以帮助我完成任务的书籍感兴趣。

感谢您的帮助

最佳答案

我使用 OllyDBG对于这种事情。它允许您查看反汇编和调试它,您可以放置​​断点等,您还可以编辑二进制文件。因此,您可以编辑该程序的 PE header ,添加一个代码段,其中包含您的(已编译)代码,然后从原始程序中调用它。
我不能给你任何建议,因为我从来没有尝试过,尽管我想过很多次。你知道,懒惰.. :)

关于c++ - 更改已编译二进制文件的部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5059930/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com