Web 安全靶场搭建教程(Pikachu+DVWA)
免责声明:靶场仅用于本地网络安全学习,搭建完成后仅在本机虚拟机环境进行漏洞复现,严禁将靶场暴露到公网,严禁对公网未授权网站进行渗透测试,违规操作将承担相应法律责任。
前言
学习 Web 安全,只看文章、看视频是远远不够的。漏洞的原理、数据包交互、Payload 的触发逻辑,必须亲手操作一遍才能真正理解。很多小白看完漏洞原理视频觉得自己全会了,上手复现就各种报错,抓包看不懂请求响应,就是缺少靶场实操。
对于 Web 安全入门,DVWA和Pikachu是公认新手首选两大靶场,二者各有侧重,搭配练习效果最好。
- DVWA(Damn Vulnerable Web Application):国外老牌开源漏洞靶场,难度分级 Low/Medium/High/Impossible。非常适合循序渐进理解漏洞过滤、绕过思路,能直观看到防护代码是如何一点点增加,漏洞如何被限制。缺点是全英文界面,对新手阅读有一点门槛。
- Pikachu(皮卡丘):国内安全开发者开发的中文漏洞靶场,界面、提示、漏洞介绍全部中文。除了传统注入、XSS、文件上传之外,内置大量逻辑漏洞,例如越权、验证码漏洞、任意密码重置,非常贴近国内真实业务场景,学完可以直接衔接后面 SRC 漏洞挖掘。
重要建议:靶场不要直接装在物理主机上。靶场本身存在大量高危漏洞,如果物理机被恶意请求利用,会造成本机文件泄露、被入侵。推荐使用虚拟机,VMware Workstation 或者 VirtualBox 都可以,虚拟机做隔离,就算靶场被 “拿下”,也不会影响你的电脑主机。
一、环境准备清单
- 虚拟机软件:VMware Workstation 或者 VirtualBox,二选一即可。
- 虚拟机操作系统:推荐 Windows10 精简版 / Windows Server2008。不推荐直接用 Linux 新手搭建靶场,对零基础门槛偏高。
- PHP 集成环境:phpstudy_pro(小皮面板),一键安装 Apache、PHP、MySQL,不用手动配置环境变量、修改服务,小白友好。
- 靶场源码:
Github 下载源码速度慢的同学,可以去国内 Gitee 镜像仓库下载压缩包,下载完成后解压,不要使用中文文件夹名称。
环境版本关键点:PHP 选择 5.5~5.6 版本。高版本 PHP7/8 大量移除、禁用旧的危险函数,很多漏洞无法触发,直接导致复现失败。MySQL 使用 5.5 或者 5.6 版本。
二、phpstudy 集成环境安装与基础配置
- 在虚拟机内安装 phpstudy,安装路径绝对不能包含中文、空格、特殊符号。推荐路径
D:\phpstudy_pro。 - 打开 phpstudy 控制面板,找到【网站】【数据库】【软件管理】。在软件管理里面找到 Apache、MySQL、PHP5.6,一键安装。
- 启动 Apache 服务、MySQL 服务。两个服务状态必须显示绿色 “运行中”。
- 创建数据库账号:进入数据库管理,root 账号默认密码可以自行设置,建议简单记忆,统一设置为
root,方便后续靶场配置。 - 网站根目录:phpstudy 默认站点根目录为
D:\phpstudy_pro\WWW,所有网站源码解压后都要放到这个 WWW 文件夹下面。 - 附加配置:打开 php.ini 配置文件,找到
file_uploads = On,确保文件上传功能开启;allow_url_include = On(开启后才可以练习文件包含漏洞)。修改完成后重启 Apache 服务,配置生效。
新手踩坑点:修改 php.ini 之后必须重启 Apache,否则参数不会生效。
三、DVWA 靶场详细搭建步骤
- 将 DVWA 源码压缩包解压,把解压后的文件夹重命名为
dvwa,放入 WWW 目录,路径为D:\phpstudy_pro\WWW\dvwa。 - 进入
dvwa/config文件夹,找到文件config.inc.php.dist。复制一份副本,将副本重命名为config.inc.php。不要直接修改 dist 原始文件。 - 使用记事本或者 Notepad++ 打开
config.inc.php,修改数据库相关配置项,和 phpstudy 数据库信息保持一致:
$_DVWA[ 'db_server' ] = '127.0.0.1';
$_DVWA[ 'db_database' ] = 'dvwa';
$_DVWA[ 'db_user' ] = 'root';
$_DVWA[ 'db_password' ] = 'root';
db_database 代表数据库名称,待会访问页面会自动创建 dvwa 库。
- 虚拟机浏览器访问地址:
http://127.0.0.1/dvwa/setup.php,进入 DVWA 初始化页面。 - 页面会自动检测环境状态,检查 PHP 版本、文件读写权限、GD 库等。如果提示红色报错,按提示修复;黄色警告可以暂时忽略。
- 页面拉到最底部,点击【Create / Reset Database】按钮,自动创建 dvwa 数据库,导入数据表。
- 数据库创建成功后,页面自动跳转登录页面。DVWA 默认账号:
admin,密码:password。 - 登录成功进入 DVWA 主页面。点击左侧菜单【DVWA Security】可以调整安全等级:Low、Medium、High、Impossible。
DVWA 安全等级说明与练习规划
- Low:无任何过滤防护,没有代码防御。适合新手第一次上手复现漏洞,直接理解漏洞原生原理。推荐第一个阶段全部用 Low 练习。
- Medium:增加简单过滤,比如替换关键字、转义特殊字符。用来学习基础绕过思路,比如大小写、编码绕过。
- High:较强的防护代码,加入 token、严格字符过滤,需要思考复杂 Payload 构造。适合进阶练习。
- Impossible:修复完成,漏洞不存在,用来学习正确安全编码方式,理解漏洞如何被修复。
DVWA 包含漏洞模块:SQL Injection、XSS(Stored/Reflected)、File Upload、CSRF、File Inclusion、Command Injection 等基础漏洞。
提示:页面出现 reCAPTCHA 谷歌验证码缺失警告,可以直接忽略,不影响绝大多数漏洞练习。
四、Pikachu 靶场详细搭建步骤
- 解压 Pikachu 源码包,文件夹命名为
pikachu,放到 WWW 目录,路径D:\phpstudy_pro\WWW\pikachu。 - 浏览器访问:
http://127.0.0.1/pikachu,进入初始化安装界面。 - 在安装页面填写数据库信息:
数据库地址:127.0.0.1
数据库用户名:root
数据库密码:root
数据库名称:pikachu
点击【安装 / 初始化】,程序自动创建数据库并导入数据表。 - 安装完成,直接进入皮卡丘靶场首页,无需额外配置,开箱即用。
Pikachu 靶场优势与练习顺序
- 全中文界面,每个漏洞页面附带漏洞简介、提示信息,对零基础非常友好。
- 除传统 Web 漏洞外,专门增加业务逻辑漏洞模块:水平越权、垂直越权、验证码绕过、短信验证码、任意密码重置。这部分内容就是 SRC 挖洞最常遇到的漏洞,提前在靶场练习,实战上手更快。
- 漏洞分类清晰:注入、XSS、文件上传、文件包含、CSRF、SSRF、逻辑漏洞。
推荐练习顺序:先把 DVWA Low 级基础漏洞全部跑完,再切换 Pikachu 练习,重点吃透 Pikachu 里面的权限逻辑漏洞。
五、搭建过程高频报错排查
- 访问页面空白,没有任何内容
原因:PHP 版本过高,切换为 PHP5.6;Apache 服务未启动;源码文件夹权限不足。
解决:phpstudy 切换 PHP 版本,重启 Apache;检查 WWW 目录文件完整性。 - 数据库连接失败,提示无法连接 MySQL
排查:确认 MySQL 服务启动;核对账号、密码、数据库名称;确认 MySQL 端口 3306 没有被其他程序占用。 - 文件上传功能无法上传文件
排查:php.ini 里面file_uploads = On;上传目录读写权限开启;重启 Apache。 - DVWA 页面提示无法写入配置文件
排查:文件夹只读属性,右键 dvwa 文件夹,取消只读勾选。 - Pikachu 安装提示数据库已存在
解决:可以在 phpstudy 数据库面板删除 pikachu 库,重新安装,或者直接继续使用旧库。
六、靶场使用安全规范与实操建议
- 禁止端口映射、禁止公网暴露。虚拟机只访问本机 127.0.0.1,不要做端口转发,一旦靶场暴露公网,会被攻击者扫描利用,带来法律风险。
- 练习必须循序渐进,不要上来直接复制网上 Payload。每一个漏洞,先读懂页面提示,手动构造 Payload,理解数据包变化。
- 搭配 Burp Suite 抓包练习。复现漏洞的时候,开启 Burp 代理,观察请求包、响应包,看懂参数提交、页面返回内容。
- 建立个人笔记。每复现成功一个漏洞,记录漏洞原理、Payload、触发条件、修复方法。笔记后续面试、复盘非常有用。
- 靶场只是模拟环境,靶场漏洞触发条件简单,真实线上业务防护会复杂很多,不要觉得靶场打通就可以去扫描线上网站。
小结
DVWA + Pikachu 这套本地靶场环境,足够支撑新手吃透 Web 五大基础漏洞,还能拓展学习文件包含、SSRF、越权等高频漏洞。搭建环境本身也是一种学习,能熟悉 web 服务、数据库、PHP 之间的交互关系。环境搭建成功,才是 Web 安全动手实战的起点。
当你可以独立手动复现靶场所有基础漏洞,看懂每一次请求响应,再开始学习 Burp 工具、信息收集,之后进入 SRC 合规漏洞挖掘。
如何系统学习网络安全?
网络安全作为数字时代的核心技术基石,已成为保障各行业安全稳定运行的坚实屏障。筑牢网络安全的防线,掌握先进的防护策略和技能正上升为国家与企业发展的战略优先级。
构建稳固的网络安全能力是一个体系的工程,需要从夯实基础理论出发,持续深化到攻防对抗与应急响应的实战层面。
如果你是准备学习网络安全(黑客)或者正在学习,我可以把我自用的360独家内部资料分享给你,包含以下内容你应该能用得上:
①网络安全学习路线
②20份渗透测试电子书
③安全攻防357页笔记
④50份安全攻防面试指南
⑤安全红队渗透工具包
⑥网络安全必备书籍
⑦100个漏洞实战案例
⑧安全大厂内部视频资源
⑨历年CTF夺旗赛题解析
一、网络安全(黑客)学习路线
网络安全(黑客)学习路线,形成网络安全领域所有的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

二、网络安全教程视频
我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

三、网络安全CTF实战案例
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这里带来的是CTF&SRC资料&HW资料,毕竟实战是检验真理的唯一标准嘛~

四、网络安全面试题
最后,我们所有的作为都是为就业服务的,所以关键的临门一脚就是咱们的面试题内容,所以面试题板块是咱们不可或缺的部分,这里我给大家准备的就是我在面试期间准备的资料。

网安其实不难,难的是坚持和相信自己,我的经验是既然已经选定网安你就要相信它,相信它能成为你日后进阶的高效渠道,这样自己才会更有信念去学习,才能在碰到困难的时候坚持下去。
机会属于有准备的人,这是一个实力的时代。人和人之间的差距不在于智商,而在于如何利用业余时间,只要你想学习,什么时候开始都不晚,不要担心这担心那,你只需努力,剩下的交给时间!
这份完整版的网络安全学习资料已经上传优快云,朋友们如果需要可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费】

647



被折叠的 条评论
为什么被折叠?



