图片:center (2).jpg


我的下一个自动尝试是输入google.com && ls
这返回与上述相同的输出,这意味着应用程序忽略了我提供的附加命令。同样的故事继续我所有的尝试,如google.com || ls
当我尝试输入google.com> /tmp/test.txt时,输出窗口是空白的,这是奇怪的。这建议可能应用程序是过滤空间,所以我尝试了相同的命令,但没有空格和...
![]() |
成功! |
![]() |
:( |
那么我下一个明显的举动就是在Google上搜索这个问题,因为如果我面临这个问题,有人必须已经面临类似的情况。不用说,Google并没有让人失望。
输入“ Bash Brace Expansion ”。 据此,如果您在bash终端上提供如下所示的输入:{echo,hello,world},它将执行命令echo hello world
对我来说,这是一个整洁和TIL的时刻。我在我的应用程序中尝试过,但没有成功。也许是因为我的目标应用是嵌入式设备,而shell是一个busybox shell。在Google上,我的疑点得到证实。
所以我再次回到Google寻找不同的解决方案。然后我遇到这个线程 - https://seclists.org/pauldotcom/2012/q2/200据此,您可以执行无空格的命令:CMD = $'\ x20a \ x20b \ x20c'; echo $ CMD
看看那个聪明才智!更多TIL!这里,CMD是包含编码空间的环境变量。在运行时,我们得到回声abc
现在,我在我的应用程序中尝试了很少的修改CMD = $'\ x20a \ x20b \ x20c'&& echo $ CMD
![]() |
答对了! |
从这里,执行任意命令是一个cakewalk。输入 google.com && CMD = $'\ x20 / etc / passwd'&& cat $ CMD
![]() |
/ etc / passwd文件 |
本文标题:没有空格的命令注入
本文作者:admin
本文来自:蚁安黑客官网
转载请注明本文链接:http://www.mayidui.net/t784-1.html