前言
本人刚刚入坑二进制不久,因为以前主玩渗透测试,所以喜欢学习理论的同时,做一些实战的题目,这不就在BUU上看到了一道pwn的入门题RIP1,但是这个题也让我知道二进制的门槛不是一般的高,第一次写文章,大佬勿喷!
一、看看程序有没有保护
常规操作,查看程序的位数以及各种保护机制!可以看到程序是linux下的程序为64位,并且没有开启任何保护
二、对程序源码进行分析
1.判断溢出点
把程序拖进ida中进行分析,可以明显看到有一个gets的栈溢出点
Gets函数不限制输入的字符数量,可以无限的输入;
接下来就要判断溢出的字符长度!
这里可以看到,15个字符就可以达到溢出效果,然后我们手动测试一下溢出字符!<