DVWA学习-----Command Injection-----命令执行漏洞

一,命令执行漏洞

(1) 定义

当黑客能控制这些执行系统命令的函数中的参数时,就可以将恶意的系统命令拼接到正常命令中,从而造成命令执行攻击,这就是命令执行漏洞。

  • PHP应用程序中常见的脚本漏洞之一;就好比说一句话木马<?php @eval($_POST['cmd']);?>
  • 应用程序有时需要调用一些执行系统命令的函数,如在PHP中,使用system、exec、shell_exec、passthru、 popen、 proc_popen等函数可以执行系统命令

(2)分类

  • 1.代码过滤不严或无过滤;
  • 2.系统漏洞造成的命令执行,bash破壳漏洞,该漏洞可以构造环境变量的值来执行具有攻击力的脚本代码,会影响到bash交互的多种应用,例如:http,ssh,dhcp;
  • 3.调用第三方组件或者函数

php【system(),shell_exec(),exec(),eval()】
java的struts框架 —> 漏洞很多】,thinkphp(老牌的PHP框架);

(3)常用的命令连接符

;      执行完前面的语句再执行后面的.                                                  
|      在前面命令执行成功的前提下 显示后面语句的执行结果【且不显示前面的执行结果】.                            
||     当前面的语句执行出错时,才执行后面的语句.                                      
&      和;一致                    
&&     前面的命令执行成功后执行后面的,若失败不执行后面的命令
#对 ||  的说明

[root@yang log]# ping -c1 127.0.0.1 || date
PING 127.0.0.1 (127.0.0.1) 56(84) bytes of data.
64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.011 ms

--- 127.0.0.1 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.011/0.011/0.011/0.000 ms        ##前面命令执行成功,后面的命令不会执行




[root@yang log]# ging -c1 127.0.0.1 || date
bash: ging: command not found
2019年 08月 20日 星期二 22:42:05 CST

二,漏洞利用

DVWA下的代码过滤不严或无过滤型命令执行漏洞

低级安全模式
在这里插入图片描述
- 利用代码无过滤,使用连接符号连接恶意命令

在这里插入图片描述

【渗透思路】 ---->在可以运用命令执行漏洞处

  • 添加用户并添加到管理员组
  • wget脚本,在运行

高级安全模式
【源码】
在这里插入图片描述
【漏洞利用】
在这里插入图片描述

最高级安全模式

在这里插入图片描述

发布了49 篇原创文章 · 获赞 33 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/Z_Grant/article/details/99890804