这是十分经典的栈迁移题目

拿到题目例行检查

32位程序开启了nx保护

进入ida,发现了很明显的system

我们进入main函数查看vul

可以看到溢出的部分不够我们rop所以这道题通过栈迁移去做

首先先通过溢出泄露出ebp的地址然后通过ebp的地址进行偏移

可以看到我们输入的a的地址是0xd140ebp的地址是0xd178所以我们可以用ebp-0x38使栈迁移到这里

leave的地址我们可以随便找一个,

完整exp如下

注意:system前面的a不可以去掉,否则拿不到shell(多次试验后的结果)

成功拿到flag

结束!!!

最新文章

  1. 连载《一个程序猿的生命周期》-《发展篇》 - 3.农民与软件工程师,农业与IT业
  2. IE兼容问题,各类css hack代码(亲测有效)
  3. 给Nginx配置一个自签名的SSL证书
  4. 全面理解面向对象的 JavaScript
  5. OAF_EO系列1 - Definition定义(概念)
  6. Eclipse无法通过FileExplore打开真机data目录
  7. 【阿里云产品公测】离线归档OAS,在也不用备份担心空间了
  8. CSS3秘笈第三版涵盖HTML5学习笔记1~5章
  9. win 10 安装 mysql解压版 步骤
  10. linux的exec命令
  11. Javascript之学习笔记每日更新
  12. shell第四篇(上)
  13. js项目练习第一课
  14. 4月27号开学! 第6期《jmeter实战接口自动化+性能》课程,零基础也能学
  15. 【转】redis-cluster安装配置
  16. python命令里运行正确但是pycharm里面运行就是报错的问题
  17. python数据分析系列(1)
  18. 邮件中的CC和BCC含义
  19. (转)MFC:Windows如何区分鼠标双击和两次单击
  20. 航空公司客户价值分析(KMeans聚类)

热门文章

  1. [atARC105F]Lights Out on Connected Graph
  2. jvm的小练习
  3. pyinstaller进行打包exe文件
  4. Codeforces 986E - Prince's Problem(树上前缀和)
  5. R合并数据框有重复匹配时只保留第一行
  6. JS简单入门
  7. js浮点运算的坑
  8. 2019java面试
  9. hbase调优
  10. 23. 关于Ubuntu中Could not get lock /var/lib/dpkg/lock解决方案