1. 项目概述
DVWA(Damn Vulnerable Web Application)是一个专门用于安全测试的PHP/MySQL Web应用程序,旨在帮助安全专业人员测试他们的技能和工具。存储型XSS(Cross-Site Scripting)是其中一种常见的高危漏洞,攻击者可以将恶意脚本永久存储在目标服务器上,当其他用户访问受感染页面时,脚本就会自动执行。
这个实战项目将带你在10分钟内完成DVWA环境中的存储型XSS漏洞复现,包括基础的弹窗演示和进阶的Cookie窃取技术。通过这个练习,你不仅能理解XSS的攻击原理,还能掌握实际渗透测试中的关键技巧。
2. 环境准备与配置
2.1 DVWA环境搭建
首先需要准备一个可运行的DVWA环境。推荐使用以下两种方式之一:
-
本地部署:
- 下载最新版DVWA(https://github.com/digininja/DVWA)
- 配置PHP环境(XAMPP/WAMP等集成环境即可)
- 将DVWA解压到Web服务器根目录
- 修改config/config.inc.php中的数据库配置
- 访问http://localhost/DVWA/setup.php完成初始化
-
Docker快速部署:
bash复制
docker pull vulnerables/web-dvwa docker run -d -p 80:80 vulnerables/web-dvwa
注意:首次登录默认凭证为admin/password,务必在测试后修改密码或销毁环境,避免安全风险。
2.2 安全等级设置
DVWA提供四种安全等级,我们需要将其设为最低以便演示:
- 登录后点击左侧"DVWA Security"
- 选择安全等级为"Low"
- 点击"Submit"保存设置
这个设置会禁用大部分防护措施,使我们能够专注于XSS漏洞的本质。
3. 存储型XSS基础攻击
3.1 弹窗攻击演示
存储型XSS的特点是恶意输入会被服务器保存并在后续页面加载时执行。让我们从最简单的弹窗开始:
- 导航到"XSS (Stored)"页面
- 在留言板输入:
html复制
解锁全文
加入我们的会员,获取最新、最热、最精彩的开发者技术内容