命令执行漏洞的原理:
应用程序有时会调用一些执行系统命令的函数,例如在PHP中,使用函数system、exec、shell_exec、passthru、popen、proc_popon等,可以执行系统命令,当黑客能控制函数中的参数时,就可以将系统命令拼接到正常的命令中,从而造成命令执行攻击;
DVWA实验
在操作系统中, & 、&& 、| 、 || 都可以作为命令连接符使用,用户通过浏览器提交执行命令,由于服务器端没有针对执行函数做过滤,导致在没有指定绝对路径的情况下就执行命令
low等级;
可以看到,low级别的代码接收了用户输入的ip,然后根据服务器是否是Windows NT系统,对目标ip进行不同的ping测试。但是这里对用户输入的ip并没有进行任何的过滤,所以我们可以进行命令执行漏洞
我们ping一下百度的ip地址看看,可以看到能ping通
我们尝试输入 220.181.38.149 & ipconfig ,在操作系统中," & 、&& 、| 、 || "都可以作为命令连接符使用,我们在ping完后再执行ipconfig 命令查看ip信息