逆向工程核心原理学习笔记(五):实战“打补丁方法”修改字符串
来源:互联网 发布:数据口径 编辑:程序博客网 时间:2024/05/19 23:10
打补丁方法可以修复程序的BUG,给程序添加新功能。
打补丁的对象可以是文件,内存,数据,代码,等等。。。
我们今天就用打补丁的方法来把helloworld程序中的字符串改掉!
首先呢,OD载入程序,
然后,我们跳到程序入口点,也就是main函数,之前我们讲过,可能大家也记得,0x401000.
我们可以清楚的看到helloworld字符串存放在了push 0x40ED00,这个地址,然后,我们在数据区(左下角),跳过去。
我们看到了字符串,然后呢,我们选中helloworld这几个字,然后按下Ctrl+E,快速编辑。
编辑的时候要在Unicode里面编辑,最好字数相同,防止内存溢出。
然后确定。
然后我们F9运行起来,看看效果:
当然,这还没有完事,因为如果我们关掉OD,程序还是没有被修改的,我们现在的修改只是暂时的。
我们如何保存我们修改的程序呢?
很简单,
选中我们修改的字符串,当然也可以往后多选中一点。
鼠标右键:
点击复制到可执行文件,然后在弹出的窗口继续鼠标右键,保存文件:
保存到桌面:
我们双击运行一下测试:
成功!
大家有没有新的收获呢?
0 0
- 逆向工程核心原理学习笔记(五):实战“打补丁方法”修改字符串
- 逆向工程核心原理学习笔记(五):实战“打补丁方法”修改字符串
- 逆向工程核心原理学习笔记(六):实战开辟新内存区域写入缓冲区跳转修改字符串
- 逆向工程核心原理学习笔记(六):实战开辟新内存区域写入缓冲区跳转修改字符串
- 逆向工程核心原理学习笔记(二):字符串检索法查找main函数
- 逆向工程核心原理学习笔记(二):字符串检索法查找main函数
- 逆向工程核心原理学习笔记(七):总结
- 逆向工程核心原理学习笔记(十一):栈
- 逆向工程核心原理学习笔记(十四):栈帧1
- 逆向工程核心原理学习笔记(七):总结
- 逆向工程核心原理学习笔记(十一):栈
- 逆向工程核心原理学习笔记(十四):栈帧1
- 逆向工程核心原理学习笔记(三):检索API方法
- 逆向工程核心原理学习笔记(四):检索API方法2-设置断点
- 逆向工程核心原理学习笔记(三):检索API方法
- 逆向工程核心原理学习笔记(四):检索API方法2-设置断点
- 逆向工程核心原理学习笔记(一):寻找程序的主函数(Main)
- 逆向工程核心原理学习笔记(一):寻找程序的主函数(Main)
- Linux下进度条的编写和实现(gcc 和 Makefile)
- JVM运行时数据区域
- HFOIer4.22题目
- JdbcUtils工具类(c3p0+DbUtils优化)
- easyUI的中文乱码问题
- 逆向工程核心原理学习笔记(五):实战“打补丁方法”修改字符串
- 手把手git教程(10)--github如何删除一个repository(仓库)
- CheckBox的简单使用
- 50.性能调优之重构RDD架构以及RDD持久化
- bzoj1468: Tree
- 51Nod 1596 搬货物 (数学
- pod 更新第三方依赖遇到的 object version 问题
- Java线程池自学手册ScheduledThreadPoolExecutor的使用
- pymongo.errors.ServerSelectionTimeoutError: 127.0.0.1:27017: [WinError 10061