← 返回

攻破 DVWA Command Injection 模块(Low-Medium-High)

安全 • 渗透 • 2026年5月22日

DVWA(Damn Vulnerable Web Application)是一个用于安全测试和学习的 Web 应用程序,包含多个漏洞模块。其中 Command Injection 模块常用于测试命令注入攻击。本篇记录在 Low、Medium、High 三个等级下测试。

一、Low

Command Injection模块可输入一个IP地址,拼接到ping指令之后,后台执行并返回结果,Linux可以通过命令连接符一次执行多个命令。

  1. ;:顺序执行:不管前一个命令是否成功,都会依次执行后续命令。
  2. &&:逻辑与:只有前一个命令成功,才会执行后续命令。
  3. ||:逻辑或:只有前一个命令失败,才会执行后续命令。
  4. |:管道符:将前一个命令的输出作为后一个命令的输入。
  5. &:后台执行:在后台运行命令,不阻塞当前 shell。

因此可以输入 127.0.0.1 & whoami 来获取whoami命令返回的当前用户信息。

Command Injection whoami

输入 127.0.0.1 & ls 来获取ls命令返回的当前目录内容。

Command Injection ls

二、Medium

Medium难度相较于Low难度增加了黑名单,禁用“&&”与“;”,但仍能使用其它连接符,如“&”

因此可以输入 127.0.0.1 & ip addr 来获取ip addr命令返回的网络配置信息。

Medium Level

三、High

High难度增加了更多的黑名单字符:'&'、';'、'| '、'-'、'$'、'('、')'、'`'、'||'

观察源码可得到一个“粗心的程序员”漏洞,代码将‘|’后跟一个空格设为黑名单,对单独的‘|’不设防

因此可以输入 127.0.0.1|ip addr 来获取ip addr命令返回的网络配置信息。

High Level