Web渗透测试中命令执行漏洞详解

什么是命令执行漏洞

代码调用系统命令的时候,过滤没做好,从而导致攻击者可以使用命令来干一些xxxx的事情。

那DVWA来演示一下

这是DVWA演练平台的在线地址:http://43.247.91.228:81

首先我们需要先了解一下Linux的特殊字符

1、’;’的用法:

Web渗透测试中命令执行漏洞详解

我们可以看到,在这里’;’的用法就是先执行他前面的命令,直到前面命令执行完(无论对与错)就立即执行后面的命令

我们输入错误看看:

Web渗透测试中命令执行漏洞详解

2、’|’的用法:

Web渗透测试中命令执行漏洞详解

上一条命令的输出,作为下一条命令参数

3、’&&’的用法:

Web渗透测试中命令执行漏洞详解

我们可以看到这里就是说只有前面的命令成功执行,才能执行后面的命令。

开始代码执行漏洞演示:

首先我们把等级设置为LOW,来看看:

Web渗透测试中命令执行漏洞详解

这里呢就是输入IP,会把PING出来的内容打印出来

我们打开DVWA自带的源代码查看:

Web渗透测试中命令执行漏洞详解

首先我们来看看在WINDOW操作系统下执行ping命令会有啥结果:

Web渗透测试中命令执行漏洞详解

(可以看到这里只ping了4次)

我们再来看看LINUX里的ping命令有啥结果:

Web渗透测试中命令执行漏洞详解

(可以看到,他会无限的PING下去)

而判断操作系统就是为了,如果是linux环境的话就会执行 ping -c 4 www.baidu.com,这样就会像WINDOW一样,只执行4次:

Web渗透测试中命令执行漏洞详解

我们现在DVWA的命令执行漏洞处输入一下www.baidu.com:

Web渗透测试中命令执行漏洞详解

那么我们是否可以试一下,上面所讲的特殊字符功能,我们来试一下,我输入了www.baidu.com;ls:

Web渗透测试中命令执行漏洞详解

(那么可以看见,这里是存在命令执行漏洞的,很多人就会问了,这个漏洞有啥用,其实呢,当你有修改文件的权限,并且知道网站首页的路径,你就可以更改首页内容。)

我来演示一下(只是本地演示):

Web渗透测试中命令执行漏洞详解

我们将等级改为中:

我们输入一下www.baidu.com;ls:

Web渗透测试中命令执行漏洞详解

(啥都没返回)

我们来看看源代码:

Web渗透测试中命令执行漏洞详解

(如果还不明白啥是转换成空,我来举个例子,看下图)

我输入了www.&&baidu.com:

Web渗透测试中命令执行漏洞详解

(这里因为将&&转换成空,所以www.&&baidu.com等于是www.baidu.com)

但是,这没有过滤’|’,我们还是可以输入www.baidu.com|ls:

Web渗透测试中命令执行漏洞详解

(成功执行~~)

我们将等级这是为HIGH:

这里的DVWA只有三个等级,所以高等级也就相当于不可能完成等级

我们来照常看看源代码:

Web渗透测试中命令执行漏洞详解

(看不懂,但是我知道这里只能输入数字,并且是1.1.1.1的格式)

就连输入www.baidu.com都不可以了:

Web渗透测试中命令执行漏洞详解

(这防御措施做得,有点…内个了~)

版权声明:若无特殊注明,本文作者:颓废,如若转载,请注明出处。

本文链接:Web渗透测试中命令执行漏洞详解 - https://www.0dayhack.com/websec/179.html

严重声明:本站内容来自于互联网,仅适于网络安全技术爱好者学习研究使用,学习中请遵循国家相关法律法规,黑客不是骇客,黑客维护网络安全

发表评论

电子邮件地址不会被公开。 必填项已用*标注

联系我们

在线咨询:点击这里给我发消息
邮件:admin@0dayhack.com
工作时间:周一至周五,9:30-18:30,节假日休息