XCTF攻防世界的题质量确实很高,还有解题思路和writeup,真是棒极了。
萌新入坑
0x01 babystack
-
保护机制

题目开启了nx,canary
-
题目代码



-
思路分析
①这道题主要是绕过canary,然后栈溢出getshell。
②经分析,read函数读入到s处,可以溢出。
③put函数输出s的内容,遇到’\x00’才停止,即使字符串中存在’\n’,也会继续输出,用来泄露canary的值。
④泄露出canary的值后,通过read函数溢出,泄露出read函数地址,得到libc基址。
⑤用onegadget直接找到execve的地址,再次溢出,跳转到此地址获得shel