0x01 寻找漏洞
1 | xfgg@ubuntu:~/Downloads$ checksec forgot |
1 | 发现有两处溢出点 |
1 | 可以观察到箭头处是个函数指针,&v3 是v3在栈上的地址,&v3 + --v14 是根据&v3在栈上移动,上面的for循环是用来改变v14的值,根据溢出点函数指针v3到v12 ,变量v14都可以被我们控制,接下来再找找有没有system函数 |
1 | 发现目标函数 |
0x02 思路分析
1 | 接下来我的想法是利用缓冲区溢出把函数指针v12 覆盖为地址0x080486cc,接下来再控制v14的值为10, 那么 &v3+ --v14 便会指向 |
exp
1 | from pwn import * |