逆向工程核心原理-第二章-helloworld

图灵社区搜到一本书:

图灵社区

可在线阅读第二章,就读一读吧。

图灵社区

用我的vs2022编写了一个简单的helloworld程序,注意生成的是win32,release

按书上提示,到OllyDbg v1.10 下载了最新的1.10工具,这个工具看网站上说已经停止开发了,可惜了。目前只支持win32, amd64只没有开发完就freeze了,原因不明。还有1个plugin,不知道啥作用,暂不安装。(plugin下载下来,发现还要用古老的BC或者VC5.0编译,那都是90年代的工具,手边并没有)

安装位置:C:\cpp\vc2022\odbg110

看雪学苑有定制版:看雪学苑-看雪-安全培训|安全招聘|www.kanxue.com

用ollydbg打开helloworld.exe, 如图:

很厉害的样子,可以不会用,按书上的一步一步走吧。

在EP代码的00FE126C地址处使用Step Into(F7)指令,进入40270C函数--cookie函数,不知道啥意思,和书上并不一样。

单步调试好像F8走几步就卡住了,不知道怎么解决。

未完待续,这个OllyDbg工具用起来还是比较难的。

2025.04.04 今天学会了单步,走到Messagebox调用的位置,试着改改内存。

单步位置如图:

查看MSDN文档,获取MessageBoxW各参数的功能,找到弹出对话框的标题参数(PUSH Hello OFFSET xxx),此参数保存了字符串的首地址。准备修改www.reservecore.com这一行

细看标红的两个部分,地址应该是0x1F2100.选中数据窗口,使用快捷键Ctrl+G,弹出数据跟随窗口。输入查询地址0x1F2100,单击“确定”快速定位到该地址处。果然不错:

双击HEX数据窗口中“77”处,弹出对应的编辑数据对话框,

去掉“保持大小”的勾选,可向后修改数据。在ASCII文本编辑框中,输入“I Like C++”,由于C\C++中字符串以00结尾,需要将字符串最末尾的数据修改为00。选择十六进制编码文本框,在末尾处插入00。单击“确定”按钮,完成对字符串的修改。

最终改成了乱码:

虽然没有成功,但是已经知道如何修改内存了。今天到此位置。

优快云上别人写的一篇可参考:《逆向工程核心原理》第2章——逆向分析HelloWorld!程序_逆向工程核心原理pdf-优快云博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值