2019.11.6 unctf 的pwn题——简单绕过pie

这篇安全客关于pie和bapass绕过写的蛮好的!
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
看到函数最后返回到v1(),而且上一个函数的开辟的空间比后一个函数开辟的函数大,我们想到可以在前一个函数中提早将后门函数布置好,因为弹栈并不会是栈中的数据变化,除非往栈中写数据。
我们现在就通过gdb我们需要往栈的拿个位置写后门函数。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
我们可以看见第一个数组的位置和后面 的v2()之间隔了0xc个字节。还有需要注意的是程序是将一个函数右移16位(也就是右移2个字节,我们能接收前两个字节,后面的两个字节,有3位是确定的)然后转为10进制打印出来。所以我们在接收后要将其逆过去。
在pie中地址的后三位是绝对不会改变的,所以我们需要爆破倒数第4位。
EXP:
在这里插入图片描述

发布了48 篇原创文章 · 获赞 3 · 访问量 3369

猜你喜欢

转载自blog.csdn.net/DSR446/article/details/102941356
今日推荐