由于考研等种种原因,好久没有看pwn题了,这两天熟悉了一下,继续研究哈
这次分析的是攻防世界上的pwn练习题dice_game,可能太久没看pwn题了,已经有点忘记思路了,今天就当回顾一下啦
首先我们在ubuntu中看一下可执行文件基本信息:
没有canary保护,启用了栈不可执行,pie保护措施。64bit的elf文件,并且stripped
我们先尝试运行一下,看看程序功能,然后直接丢进IDA,分析代码:
主函数是这样的,我们可以明显地发现存在缓冲区溢出漏洞,开始的时候我在想能不能直接覆盖掉返回地址,还琢磨了半天,果然是许久没看,手生了哈
buf偏移为0x50,read的最大字节数也是0x5