目录
- 课程
- 回顾
- ret2libc![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/ebe1a9a9e54f4319946621dbe89c5774.png)
- 做题
课程
课程链接:https://www.bilibili.com/video/BV1854y1y7Ro/?vd_source=7b06bd7a9dd90c45c5c9c44d12e7b4e6
课程附件: https://pan.baidu.com/s/1vRCd4bMkqnqqY1nT2uhSYw 提取码: 5rx6
回顾
ret2libc
.got.plt中存放的是代码的地址
nop滑梯,什么都不做执行下一个指令
一路nop到shellcode,只要指向nop区域即可;使得地址随机化变得低效
做题
即使程序中没有call system指令,同时也不知道system libc的真实地址;但是我们一定会有system@plt,只要这个程序在任何地方引用过system这个函数
虽然secure函数中system(“shell?!”)没有任何用处,但是system()被放在了plt;如果连这一项都没有就需要在攻击之前泄露大量的信息,把真实地址泄露出来
还需要加上溢出ebp的四个字节,所以这里又是112
这里的padding 就是112个垃圾数据
可以简化成这个形式,都不需要exit了,不需要老老实实退出程序
逆向题入门也可以这样做