文章预览
1. ezstack(csu+magic) 这题给了libc,建议用2.27-3ubuntu1_amd64做。 极致精简的栈溢出,除了NX其他保护全关。但是,没有puts/write/printf,got表上仅仅只有gets。没有任何输出函数意味着我们没法泄露libc,没有syscall意味着我们没法间接的使用输出函数。回想以前做过的题,还有什么呢? 理论上如果有call esp,或者允许跳转到任意地址执行,还可能是直接写shellcode,但这题开了NX,意味着栈不可执行,同时内存上没有同时允许写和执行的段。这条路也封死了。 经验老道的人看到Partial RELRO,会想到ret2dlresolve,这是一种比较复杂的万能gadget,条件之一就是Partial RELRO或者NO RELRO。 https://blog.csdn.net/qq_51868336/article/details/114644569 但是ret2dlresolve似乎在Partial RELRO需要用到write,这题不一定符合条件。 仔细在text段上找可利用的汇编,会发现一段不属于任何函数的magic gadge
………………………………