记bugku上做的两道pwn题

在这里插入图片描述

在这里插入图片描述

直接nc 连接成功 查看文件详细资料,发现flag 直接cat flag就出来了。

bugkupwn第二题:
首先将文件拖进ida,发现一个重要函数get shell,发现flag也是在这里,也就是说这里的地址就是flag所在的地址。
在这里插入图片描述

在这里插入图片描述
接着按f5,我们不难发现这是个栈溢出的问题,因为s取了0x30个字节,而后面的read却是0x100个字节。
在这里插入图片描述
我们打开虚拟机打开终端,检查文件保护。
在这里插入图片描述
很好,没有保护。

接着我们用gdb来进行调试,首先我们制造垃圾字符,接着运行这个程序,把垃圾字符复制粘贴上。在这里插入图片描述

接着有地址报错,接着我们用报错的地址来查找偏移量。
在这里插入图片描述
偏移量为56,我们可以开始写脚本了。(注意:这是64位的程序。)

在这里插入图片描述
运行脚本,就可以得到flag了
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/inryyy/article/details/104446171