题目过滤了很多
看别人题解是用到了linux里的tee命令,
可以看到的是没有过滤|这个符号,然后exec执行是没有回显的,这个题目是需要用linux的一个命令,”tee“将想要执行的命令写入到一个文件里面,然后再去访问这个文件,以此来执行这个命令。
传入 command | tee file.txt。这是格式
?url=l\s / | tee 1.txt 之后访问我们传入的文件1.txt,发现命令被执行。看见flllllaaaaaaggggggg
斜杠后一定要加空格, 否则效果不一样
本来应该是url=ls/ 可是ls被过滤掉了,然后看别的up主说,l\s可以代替ls |是执行以下命令的意思
可以看见flllllaaaaaggggg
tac是没有被过滤的。再传入 ?url=tac /flllll\aaaaaaggggggg | tee 2.txt
然后访问2.txt,记得|前后与字符之间要有空格