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

  • A+
所属分类:颓废's Blog
摘要

但是,这没有过滤’|’,我们还是可以输入www.baidu.com|ls : 我们来照常看看源代码:


什么是命令执行漏洞

代码调用系统命令的时候,过滤没做好,从而导致攻击者可以使用命令来干一些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渗透测试中命令执行漏洞详解

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

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: