EasyRMtoMP3Converter.exe 栈溢出无果之因

    近日开始学起了漏洞挖掘&分析,随着《Exploit 编写系列教程》来学习,首先第一章有关EasyRMtoMPConvert.exe的栈溢出,用mona来产生pattern定位时,发现我的ret_eip在26084偏移处,而教程中ret_eip在26094偏移处,开始没太上心。后面动态调试,探究了一下它的溢出过程,有如下发现

  1. 左边的地址标签代表分配空间的顺序,依次从底向上分配4914h,8918h字节空间;
  2. 之后第一次从文件中读取前400h字节到000FF748处,第二次将文件路径与文件内容组合起来复制到000F9128处(以00结尾),第三次再将000F9128处的内容复制到000F6E20处。
  3. 最后,收回8914h字节的栈空间并retn 4,此时000FF728处的内容已经被第二次000F9128复制覆盖了,所以这才使得我们能够栈溢出。但是,因为此次复制带有文件路径,所以无法确定文件中固定偏移内容会处于000F728处,这也导致了我们的溢出无法随机产生。                                

    思考:当时有想用01010101之类重复单字节内容来覆盖ret eip,以控制eip到shellcode,可是01010101处太远并且与当前栈不在同一段...(各位师傅如有好方法,请不吝赐教~~~)

转载于:https://my.oschina.net/u/3281747/blog/1603064

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值