题源:基本 ROP - CTF Wiki (ctf-wiki.org) 的ret2syscall
①:老套路,先检查。
没有RXW可执行段。而且NX保护打开了。
②:拉到IDA反汇编。
没有system,也没有可直接利用的后门函数,但是有bin/sh。什么也没有。而且段都是不可执行段,也不能直接写入整个shellcode段。
但是还有gets函数,天无绝人之路,又是栈溢出的类型。看来得自己拿碎片构造rop了(得存在所有的碎片才行)。
(这个过程起始就类似于堆积木:积木碎片在房子的各个角落,我们得找到所有的积木碎片,放在这里就是在整个程序中找到可以组合成调用execve('/bin/sh"