尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

phpStudy 本地搭建 DVWA、Pikachu、sqli-labs 靶场完整教程

phpStudy 本地搭建 DVWA、Pikachu、sqli-labs 靶场完整教程 1. 引言对于刚接触 Web 安全的学习者来说搭建一套本地靶场环境是动手实践的第一步。DVWA、Pikachu 和 sqli-labs 是三个非常经典的 Web 漏洞练习平台分别覆盖了综合漏洞演练、常见 Web 漏洞和 SQL 注入专项训练。本文将基于 Windows 环境下的 phpStudy 集成环境详细介绍这三个靶场的搭建过程包括环境准备、源码部署、数据库配置以及常见问题排查帮助你在本地快速搭建起属于自己的安全学习环境。提示本文涉及的工具与靶场仅用于授权的安全学习与测试请勿将其用于任何未经授权的渗透测试或攻击行为。2. phpStudy 环境准备2.1 下载与安装phpStudy 是一款集成了 Apache、Nginx、MySQL、PHP 等组件的 Windows 集成开发环境下载地址为官网 xp.cn。安装步骤如下下载 phpStudy V8.1 安装包并双击运行。选择安装目录建议使用纯英文路径避免中文目录导致未知错误。安装完成后打开 phpStudy 面板。2.2 启动服务打开 phpStudy 面板后点击「启动」按钮启动Apache和MySQL服务。浏览器访问http://localhost/若出现 phpStudy 默认页面说明服务正常。2.3 切换 PHP 版本关键步骤这一步非常关键。DVWA 和 sqli-labs 属于较老的开源项目对高版本 PHP如 8.x的兼容性较差建议切换到PHP 7.4 及以下版本点击 phpStudy 面板左侧的「软件管理」。找到「PHP」栏目安装php7.4nts或php7.3nts。回到首页点击当前 PHP 版本号切换为刚安装的 7.x 版本。确认 Apache 已重启访问http://localhost/phpinfo.php或使用面板「网站」中的「站点管理」验证 PHP 版本。可以在下面插入一张展示 phpStudy 面板中 PHP 版本切换成功的截图方便对照检查。3. DVWA 靶场搭建DVWADamn Vulnerable Web Application是一个用于安全从业者练习常见 Web 漏洞的 PHP/MySQL 靶场包含 SQL 注入、XSS、文件上传、命令注入等多种漏洞。3.1 下载源码访问 GitHub 仓库github.com/digininja/DVWA。点击「Code」→「Download ZIP」下载压缩包。解压后得到DVWA-master文件夹。3.2 部署到站点目录将DVWA-master文件夹重命名为dvwa。复制到 phpStudy 的网站根目录默认为D:\phpstudy_pro\WWW\在浏览器访问http://localhost/dvwa/应看到 DVWA 的初始化页面。3.3 修改配置文件DVWA 默认配置文件为config/config.inc.php.dist需要将其复制并重命名进入dvwa/config/目录。复制config.inc.php.dist重命名为config.inc.php。用编辑器打开config.inc.php重点检查数据库配置$_DVWA[db_server]127.0.0.1;$_DVWA[db_database]dvwa;$_DVWA[db_user]root;$_DVWA[db_password]root;phpStudy 默认 MySQL 用户名为root密码通常也是root请根据自己实际的数据库账号密码修改。3.4 初始化数据库浏览器访问http://localhost/dvwa/setup.php。点击页面底部的「Create / Reset Database」按钮。若显示数据库创建成功页面会自动跳转到登录页。可以在下面插入一张 DVWA 数据库创建成功页面的截图便于确认初始化结果。3.5 登录使用DVWA 默认账号密码用户名admin 密码password登录后建议先在左侧DVWA Security中把安全等级调整为Low方便初学者练习。4. Pikachu 靶场搭建Pikachu 是一个包含漏洞类型较为全面的中文靶场界面友好适合初学者逐步理解和练习各类 Web 漏洞。4.1 下载源码访问 GitHub 仓库github.com/zhuifengshaonianhanlu/pikachu。点击「Code」→「Download ZIP」下载压缩包。解压后得到pikachu-master文件夹。4.2 部署到站点目录将解压后的文件夹重命名为pikachu。复制到站点根目录D:\phpstudy_pro\WWW\浏览器访问http://localhost/pikachu/应当看到 Pikachu 的欢迎页面。4.3 修改配置文件Pikachu 的数据库配置文件位于inc/config.inc.php进入pikachu/inc/目录。打开config.inc.php确认数据库连接配置define(DBHOST,127.0.0.1);define(DBUSER,root);define(DBPW,root);define(DBNAME,pikachu);同样请根据 phpStudy 实际的 MySQL 账号密码进行调整。4.4 初始化数据库访问http://localhost/pikachu/后点击页面上的「初始化安装」按钮程序会自动创建数据库和表结构。初始化成功后即可进入靶场首页开始练习。5. sqli-labs 靶场搭建sqli-labs 是由印度安全研究者开发的 SQL 注入专项练习平台包含 GET 注入、POST 注入、报错注入、盲注、堆叠注入等多种场景是学习 SQL 注入的经典教材。5.1 下载源码访问 GitHub 仓库github.com/Audi-1/sqli-labs。点击「Code」→「Download ZIP」下载压缩包。解压后得到sqli-labs-master文件夹。5.2 部署到站点目录将解压后的文件夹重命名为sqli-labs。复制到站点根目录D:\phpstudy_pro\WWW\浏览器访问http://localhost/sqli-labs/正常情况下会看到 sqli-labs 的主页面一张图片界面。5.3 修改数据库连接配置sqli-labs 的数据库配置文件位于sql-connections/db-creds.inc进入sqli-labs/sql-connections/目录。打开db-creds.inc修改数据库账号密码?php$dbuserroot;$dbpassroot;$dbnamesecurity;$hostlocalhost;$dbname1challenges;?同样把$dbuser和$dbpass修改为 phpStudy 的实际账号密码。5.4 初始化数据库浏览器访问http://localhost/sqli-labs/sql-connections/setup-db.php页面显示数据库创建成功信息后即完成初始化。返回http://localhost/sqli-labs/点击页面图片进入关卡列表即可开始练习。6. 常见问题排查6.1 访问页面出现 404检查文件夹是否放在 phpStudy 网站根目录下。检查文件夹名称是否与访问 URL 一致区分大小写。确认 Apache 服务已正常启动。6.2 提示数据库连接失败确认config.inc.php或db-creds.inc中的账号密码与 phpStudy MySQL 实际账号密码一致。确认 MySQL 服务已启动。确认对应数据库已经创建可运行初始化脚本。6.3 DVWA 页面出现一堆报错如reCAPTCHA相关DVWA 新版加入了 reCAPTCHA 校验本地环境无外网或未配置密钥时会报错。解决办法是打开config/config.inc.php找到以下两行并把 key 留空$_DVWA[recaptcha_public_key];$_DVWA[recaptcha_private_key];6.4 PHP 版本过高导致页面空白或报错DVWA、sqli-labs 等项目在高版本 PHP8.x下经常出现函数已废弃导致的报错。请回到 phpStudy 面板将 PHP 切换为 7.4 或更低版本再刷新页面。6.5 MySQL 权限不足如果初始化数据库时提示权限错误可以在 phpMyAdminphpStudy 面板可一键打开中确认root用户拥有创建数据库的权限或直接新建一个专用数据库用户并授权。8. 总结个靶场对比与选择建议下面从五个维度对 DVWA、Pikachu 和 sqli-labs 进行横向对比靶场主要漏洞类型上手难度界面语言适合人群学习侧重点DVWASQL 注入、XSS、文件上传、命令注入、CSRF 等中等英文已具备一定基础、希望综合练习的学习者综合漏洞演练与安全等级提升PikachuSQL 注入、XSS、文件包含、越权、任意文件上传等常见 Web 漏洞较低中文零基础或刚入门的初学者理解漏洞原理与基础利用sqli-labsSQL 注入专项GET 注入、POST 注入、报错注入、盲注、堆叠注入等较高英文希望深入学习 SQL 注入的学习者SQL 注入专项训练选择建议如下如果你是零基础或刚开始接触 Web 安全建议先从Pikachu开始。它的中文界面和图文说明更友好漏洞类型覆盖较广适合快速理解各类漏洞的基本原理。如果你已经具备一定基础希望把不同漏洞放到同一个环境中综合练习可以以DVWA为主。通过调整Low、Medium、High等安全等级可以循序渐进地提升难度。如果你想集中突破 SQL 注入建议在完成基础学习后进入sqli-labs进行专项训练。它提供了大量分类关卡适合针对不同注入类型反复练习。整体学习顺序可参考Pikachu → DVWA → sqli-labs也可以根据自己的学习目标灵活调整。7. 总结本文基于 phpStudy 集成环境完整介绍了 DVWA、Pikachu、sqli-labs 三个经典靶场的搭建方法。整体流程可以归纳为安装 phpStudy 并启动 Apache、MySQL将 PHP 版本切换为 7.x 以保证老项目兼容下载靶场源码并解压到网站根目录修改各自的数据库配置文件通过浏览器访问并初始化数据库。搭建完成后建议先从 Pikachu 或 DVWA 开始熟悉各类漏洞的基本原理再利用 sqli-labs 针对 SQL 注入进行专项训练。学习过程中请始终遵守法律法规只在本地或获得授权授权的环境中进行安全测试切勿将所学技术用于任何非法用途。
返回列表