HUST大三下信安实践之逆向分析(二)

整个实验可以看做寻找溢出后函数地址和寻找文件内对应位置两部分

寻找溢出后地址:

从结果的截图判断,我们需要输出success和flag两部分:

但是shift+f12后没找到success,只能从flag入手。

进行溯源后,找到该函数,便于接下来的工作,我将它重命名为print_flag:

回到汇编代码:

从结果可以看出,print flag前的输出只有success,那么401282处的输出应该就是success。输出的部分都在这部分,那么溢出后的返回地址应该就是这个函数的入口00401230处:

于是我们找到了溢出后的地址:00401230h。

寻找文件内对应位置:

直接寻找调用了strcpy函数的位置,第一个就是:

所以,我们需要构造255+3到255+8大小的文件。

 回到汇编代码,将断点设在strcpy处。

随后我们打开在dbgsrv目录下的32remote后进行动态调试,弹窗填127.0.0.1:

内容如下:

retn后,ebp指向下个地址,即19fc54处,对照源txt文件可看出,就是10h-13h字节处,将该位置内容改为溢出后地址即可。

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值