DVWA通关之命令注入(command injection)
难度等级:low
过关思路
我们先将其难度设置为
low,看到其界面如下:

通过分析得知,该功能是输入一个
IP地址,然后通过ping进行测试,先输入127.0.0.1和www.baidu.com测试如下:
127.0.0.1

www.baidu.com

可以看到,IP地址和域名都是能够ping通的,接下来就是使用
命令拼接测试了,
输入127.0.0.1 | whoami

命令注入成功。
命令汇总,经过测试,以下命令均可注入成功。
127.0.0.1|whoami
127.0.0.1&whoami
127.0.0.1000 || whoami
127.0.0.1 && whoami
注意:有空格和无空格有时会有意想不到的效果做完了当然得看一下源码:

可以看到,该代码没有对用户的输入做任何的过滤,直接使用shell_exec函数执行用户输入,这是非常危险的。
难度等级:medium
过关思路
这里过关思路和low一致,也没啥可说的,我们主要看一下源码就行。
源代码如下:

通过分析,可以看出,medium关卡比low关卡多了一个黑名单。其通过数组的方式将&&和;进行了过滤,即将其替换为空。但是,这种过滤基本上还是跟没有过滤差不多,因为黑名单里的过滤太少了,黑名单也不安全。
难度等级:high
过关思路
上手先测试几个前面的payload,发下好多都被过滤了,但是还有几个可以用:
127.0.0.1 || whoami
127.0.0.1|whoami
127.0.0.1000||whoami

我们直接看源代码:

可以看到,这次的黑名单过滤明显的多了起来,但是也发现(可能是故意给我们漏出来的
赞 (0)
