第一题:
先把下载好的文件扔到ida
然后F5
从反汇编的代码来看,read函数读取100个字节的内容给buf,而buf的大小只有10h(16个字节),所以应该是可以利用进行溢出的,然后又发现bingo函数可以实现读取flag,但是main中没有对bingo函数进行调用,因此我的思路就是利用栈溢出,去覆盖vuln函数的返回地址,让他跳转到去执行bingo函数从而取出flag
然后通过分析需要用于覆盖的payload和bingo函数的地址,输入到linux的命令界面去
(python -c 'print "A" *(0x10+8) +"x\36x\06\40"')
注意函数的地址要采用小端输入
网友评论