对于Web安全与渗透测试的初学者而言,理论结合实践是快速成长的关键。在安全可控的环境中进行实操练习,漏洞靶场是不可或缺的工具。本文将详细指导你在Windows 11系统下,使用PHPStudy集成环境,一次性成功搭建Pikachu、DVWA、SQLi-Labs、Upload-Labs和XSS-Labs这五大经典漏洞靶场。
一、基础环境准备:PHPStudy安装与配置
PHPStudy是一款集成了Apache、Nginx、MySQL、PHP等服务的开发环境套件,免去了手动配置的繁琐,非常适合本地快速搭建Web测试环境。
1. 下载与安装
访问 PHPStudy官网,下载Windows 64位版本。安装时需注意两点:选择自定义安装路径,且路径中不能包含中文或空格。

2. 启动服务与问题排查
安装完成后,打开PHPStudy,在“软件管理”或“网站”模块中启动Apache和MySQL服务。

若MySQL启动失败或自动停止,通常是由于端口冲突或与系统已安装的MySQL实例冲突所致。可尝试以下步骤:
- 修改MySQL配置:在PHPStudy中点击MySQL的“配置”,将字符集修改为
utf8mb4。

- 检查服务冲突:打开系统“服务”,查找并停止可能与PHPStudy冲突的MySQL服务。

- 若上述方法无效,可能需要备份数据后,卸载系统原有的MySQL服务。成功启动后,访问
http://localhost 将显示PHPStudy默认页面。

3. 配置数据库管理工具
为了方便管理后续靶场的数据库,建议在PHPStudy中安装phpMyAdmin。安装后,可修改MySQL root用户的密码以增强安全性。

成功登录phpMyAdmin,表示数据库环境运行正常。
基础环境配置妥当后,我们即可开始搭建各个漏洞靶场。理解本地Web服务的运行原理,是进行后续Web安全学习与实践的第一步。
二、Pikachu靶场搭建
Pikachu是一个覆盖了多种常见Web漏洞(如SQL注入、XSS、文件上传等)的综合性漏洞练习平台。
1. 获取项目文件
从GitHub下载Pikachu源码包:
https://github.com/zhuifengshaonianhanlu/pikachu
下载后解压,将文件夹重命名为 pikachu,并放置于PHPStudy的 WWW 根目录下。

2. 创建并配置数据库
在PHPStudy的数据库管理界面,新建一个名为 pikachu 的数据库,并创建同名用户(如密码设为 123456)。

出于安全考虑,不建议直接使用root账户。登录phpMyAdmin,为新建的 pikachu 用户授予对 pikachu 数据库的完整操作权限。

3. 修改项目配置文件
Pikachu的数据库连接配置位于两个文件中,需要根据实际情况修改:
- 文件1:
WWW/pikachu/inc/config.inc.php
- 文件2:
WWW/pikachu/pkxss/inc/config.inc.php
打开这两个文件,找到数据库连接部分,更新对应的数据库名、用户名和密码。
// 示例配置段,需根据你的设置修改
$_config['db']['dbhost'] = 'localhost';
$_config['db']['dbuser'] = 'pikachu'; // 修改为你的用户名
$_config['db']['dbpw'] = '123456'; // 修改为你的密码
$_config['db']['dbname'] = 'pikachu'; // 修改为你的数据库名

4. 创建网站并初始化
在PHPStudy的“网站”模块中创建新站点,域名填写 pikachu,根目录指向 WWW/pikachu。
访问 http://pikachu 或 http://localhost/pikachu,点击页面上的“安装/初始化”按钮,完成数据库表的创建。

看到安装成功的提示后,Pikachu靶场即可正常使用。

三、DVWA靶场搭建
DVWA(Damn Vulnerable Web Application)是另一个极受欢迎的漏洞练习平台,其漏洞难度可调,适合不同阶段的学习者。
1. 获取项目文件
从GitHub下载DVWA源码:
https://github.com/digininja/DVWA
解压后,将文件夹重命名为 DVWA 并放入 WWW 目录。
2. 创建数据库
在PHPStudy中创建一个名为 dvwa 的数据库。
3. 配置数据库连接
进入 WWW/DVWA/config 目录,将配置文件 config.inc.php.dist 重命名为 config.inc.php。

用文本编辑器打开此文件,修改以下配置项:
$_DVWA[ 'db_server' ] = '127.0.0.1';
$_DVWA[ 'db_database' ] = 'dvwa'; // 数据库名
$_DVWA[ 'db_user' ] = 'dvwa'; // 用户名(需在phpMyAdmin中创建并授权)
$_DVWA[ 'db_password' ] = '123456'; // 密码

4. 创建网站并完成安装
在PHPStudy中创建新网站,域名为 dvwa,根目录指向 WWW/DVWA。
访问 http://dvwa,点击页面下方的 Create / Reset Database 按钮初始化数据库。

使用默认账号(admin)和密码(password)登录,即可进入DVWA主界面开始练习。

四、SQLi-Labs靶场搭建
SQLi-Labs专注于SQL注入漏洞的专项训练,包含了从基础到高级的大量注入场景。
1. 获取项目文件
从GitHub下载项目:
https://github.com/Audi-1/sqli-labs
解压后重命名为 sqli-labs,放入 WWW 目录。
2. 创建数据库并导入数据
在PHPStudy中创建名为 security 的数据库。
登录phpMyAdmin,选择 security 数据库,通过“导入”功能,执行 WWW/sqli-labs/sql-lab.sql 文件来创建所需的数据表。

3. 创建网站
在PHPStudy中为 sqli-labs 目录创建网站,域名设为 sqli-labs。
访问 http://sqli-labs,点击首页的链接进行环境设置,看到成功信息即表示靶场搭建完成。这个靶场是深入理解数据库安全漏洞的绝佳工具。

五、Upload-Labs靶场搭建
Upload-Labs是一个专注于文件上传漏洞的闯关式练习平台,包含了多种前端和后端的上传绕过技巧。
1. 获取项目文件
从GitHub下载:
https://github.com/c0ny1/upload-labs
解压后重命名为 upload-labs,放入 WWW 目录。
2. 创建网站
在PHPStudy中创建网站,域名设为 upload-labs,根目录指向对应文件夹。
访问 http://upload-labs 即可直接开始文件上传漏洞的挑战,无需额外的数据库配置。
六、XSS-Labs靶场搭建
XSS-Labs是一个专注于跨站脚本攻击(XSS)的练习靶场,通过通关模式帮助学习者理解不同场景下的XSS利用与防御。
1. 获取项目文件
从GitHub下载:
https://github.com/do0dl3/xss-labs
解压后重命名为 xss-labs,放入 WWW 目录。
2. 创建网站
在PHPStudy中创建网站,域名设为 xss-labs,根目录指向对应文件夹。
访问 http://xss-labs 即可开始XSS漏洞的练习。
总结与建议
至此,我们已在本地Windows环境下,使用PHPStudy成功搭建了五个主流的Web安全漏洞靶场。每个靶场侧重点不同:
- Pikachu & DVWA:综合漏洞平台,适合全面了解Web安全威胁。
- SQLi-Labs:深度专精SQL注入。
- Upload-Labs:聚焦文件上传漏洞。
- XSS-Labs:专注跨站脚本攻击。
建议初学者从DVWA或Pikachu开始,由易到难进行练习。在实战中,务必遵循仅在自己的测试环境操作的原则。掌握这些靶场的搭建与利用,是迈向专业渗透测试工程师的重要一步,同时也帮助你更好地理解如何通过运维手段加固Web应用安全。