通过构造shellcode并利用堆栈控制,成功实现对目标程序的远程代码执行。
-
cbctf2023 - 123go
通过利用格式字符串和scanf漏洞,成功控制返回地址,实现代码执行。
-
DASCTF 4月赛 - exception
利用C++异常处理漏洞,通过修改
main
函数返回地址实现提权。 -
DASCTF 4月赛 - dynamic_or_static
通过栈溢出和libc泄露,绕过限制并成功读取flag。
-
puts中调用的got表
在千岛湖团建时,讨论了强网杯中
_exit
题目涉及的puts@got@libc
,发现与strlen
相关。通过分析glibc
的ifunc
机制,得知strlen
的优化版本__strlen_avx2
嵌入库中,利用Partial RELRO可修改跳表*ABS*
,从而在执行puts
时运行任意代码。这与近期的xz风波类似,表明多个库函数存在利用可能性。 -
greatwall2024 初赛 - votestore
通过修改堆块和GOT表,利用libc漏洞获取shell。
-
greatwall2024 初赛 - kawayi
利用双重释放和使用-after-free漏洞,通过tcache dup将free_hook指向system,最终获取shell。
-
hgame2024 final 剩余题解
解出4道题目,涉及反混淆、解密、零宽字符和多层文件解压。
-
hgame2024 final - 1988
利用vax780的栈溢出和suid权限,通过定时任务实现RCE并获取flag。
-
hgame2024 week4 剩余题解
CTF题解总结:通过逆向工程和解密手段,成功解决多个挑战,包括Python反编译、异或解密、破解Zip文件、解析OpenWRT固件等,最终获得flag。