实验步骤:
-
首先拿到文件先看看有没有什么栈保护
因为在生成文件的时候我们就已经关掉了地址随机化,所以这里并没有什么栈保护 -
将文件拖入IDA中进行反编译,然后静态分析
这里有先写入hello world ,然后又进入了vulnerable_function函数,我们进入函数看看
我们发现用到了read函数,这里用到的是rbp定位,而它读了200个,实际rbp到ret只有(80+8)h的空间,很显然存在栈溢出漏洞,那我们下面要做的和以往一样,泄露system和bin_sh地址,然后通过ROP链getshell