靶场环境搭建【XP、pikachu、dvwa、sqli-labs】

发布时间 2023-10-22 00:20:32作者: 大象只为你

1、前言

在网络安全技能学习过程,有很多需要实战演练的技能点。这时需要有环境和让我们熟悉、从简单到难的练习靶场。本文介绍靶场环境工具phpStudy,和三个常用的靶场:pikachu、dvwa和sqli-labs,后面随着中级和高阶的知识的学习,我再随着知识点一同分享。

2、phpStudy工具安装

phpStudy(简称XP)是一个集成软件工具,里面包含中间件Apache、Nginx,文件上传服务FTP,数据库MySQL。官网:https://www.xp.cn/ 有不系统版本的安装包供下载。我文末有提供windows版本的安装包分享链接。安装过程比较简单,基本上点下一步骤到结束就可以了。但需要特别注意:安装路径不能包含中文或空格。在安装路径里面会有一个WWW的文件夹,这个就是放靶场的地方。

2.1、启动服务访问

安装完成,如果自己本地没有安装过MySQL服务,可以直接启动Apache,MySQL服务了。启动成功如图:

尝试访问: 127.0.0.1,会提示站点创建成功

2.2、有自己安装MySQL服务处理

如果自己的电脑有安装MySQL服务,那么在启动XP里面的MySQL服务会启动不了,默认服务名MySQL,有三种方式解决:

  • 第一种暂时停止自己安装的MySQL服务;
  • 第二种修改自己安装MySQL服务名和端口名(mysql默认端口3306);
  • 第三种XP的MySQL服务不启动,使用自己安装的MySQL服务,有可能会有问题。

我自己的电脑是有安装MySQL,我采用第二种方式修改服务名,XP里面的MySQL端口修改为3307。因为我有很多java项目使用到本地数据库不想动原有的代码。

查看自己本机的服务命令,win+R,输入:services.msc

2.3、查看XP里的MySQL用户名密码

查看默认用户名,密码都是root,在数据库TAB,密码默认是星号隐藏,鼠标放上去就显示出来了。

2.4、修改XP里的MySQL的端口

路径:设置->配置文件->mysql.ini 点击会弹出my.ini配置文件,修改端口3306为3307,注意有两处

3、pikachu配置

把pikachu安装包解压后,复制到XP下的WWW文件夹下。

3.1、有自己安装MySQL服务处理

因修改了XP里的MySQL的端口为3307,所以相应的配置文件都需要修改,如果没有自己安装MySQL服务则按默认的行,该步骤可忽略。

需要修改相关路径如下:

# 需要增加数据库,端口:3307
# 文件路径:WWW/pikachu/index.php 修改1处
@mysqli_connect(DBHOST,DBUSER,DBPW) 修改为--> @mysqli_connect(DBHOST,DBUSER,DBPW,DBNAME,3307)

# 文件路径:WWW/pikachu/install.php  修改2处,都在后面加,数据库'',端口3307
@mysqli_connect($dbhost, $dbuser, $dbpw) 修改为-->	@mysqli_connect($dbhost, $dbuser, $dbpw,'',3307)
@mysqli_connect(DBHOST, DBUSER, DBPW)    修改为-->	mysqli_connect(DBHOST, DBUSER, DBPW,'',3307)

# 文件路径:WWW/pikachu/pkxss/index.php 修改1处
@mysqli_connect(DBHOST,DBUSER,DBPW)  修改为--> @mysqli_connect(DBHOST,DBUSER,DBPW,DBNAME,3307)

# 文件路径:WWW/pikachu/pkxss/pkxss_install.php 修改2处,都在后面加,数据库'',端口3307
@mysqli_connect($dbhost, $dbuser, $dbpw) 修改为-->	@mysqli_connect($dbhost, $dbuser, $dbpw,'',3307)
@mysqli_connect(DBHOST, DBUSER, DBPW)    修改为-->	mysqli_connect(DBHOST, DBUSER, DBPW,'',3307)

# 配置端口修改3307 , 文件路径,如果密码有做修改,这两个配置同步做修改
WWW/pikachu/inc/config.inc.php
WWW/pikachu/pkxss/inc/config.inc.php

3.2、初始化

访问:http://127.0.0.1/pikachu/ ,会看到页面一行红色提示:提示:欢迎使用,pikachu还没有初始化,点击进行初始化安装! 点击进去会看到一个安装/初始化按钮,如果配置都正确。点击后会提示成功。

4、dvwa配置

把dvwa安装包解压后,复制到XP下的WWW文件夹下。

4.1、修改数据库连接

路径:WWW/dvwa/config ,把config.inc.php.dist 去掉后缀.dist ,然后打开修改数据库连接配置

4.2、解决reCAPTCHA异常配置

文件路径:WWW/dvwa/config/config.inc.php , 搜索关键字:recaptcha,把公钥私钥都填充上。

$_DVWA[ 'recaptcha_public_key' ]  = '6LdK7xITAAzzAAJQTfL7fu6I-0aPl8KHHieAT_yJg';
$_DVWA[ 'recaptcha_private_key' ] = '6LdK7xITAzzAAL_uw9YXVUOPoIHPZLfw2K1n5NVQ';

4.3、PHP function禁用问题

解决DVWA-PHP function allow_url_include: Disabled错误,修改phpstudy中php.ini中的allow_url_include = Off 改为On

文件路径:XP安装路径下的对应php版本:Extensions/php/php7.3.4nts/php.ini

4.4、初始化

访问:http://127.0.0.1/dvwa/ , 点左侧菜单的 Setup DVWA ,拉到最下面会看到按钮 Create/Reset Database 点击它创建成功会看到提示成功信息,大概2秒左右会自动跳到登录页面,默认账户密码:admin/password。

5、sqli-labs配置

sqli-labs是一个专业的 SQL 注入练习平台,它适用于 GET 和 POST 等多场景的注入。目前有两个版本一个是匹配php5.x,另外一个是匹配php7.x,我的版本是匹配php5.x,但我的XP默认版本是7.3.4nts,需要在建立网站来指定php版本。

把sqli-labs安装包解压后,复制到XP下的WWW文件夹下。把文件夹名重命名www.testsqli.com【自定义】,跟后面自己定义网站一样,也可不重命名但在创建时指定一下。

5.1、修改数据库连接

文件路径:WWW/www.sqli.com/sql-connections/db-creds.inc ,用户名密码修改为XP里的MySQL设置的值,如果没有修改端口则不用处理。

5.2、创建网站

操作路径:网站->创建网站,除了基本配置和高级配置按下修改,其他按默认值

基本配置:域名填写www.testsqli.com,端口默认80不要修改

高级配置:设置网站首页:index.php index.html

5.3、初始化

访问:http://www.testsqli.com/ ,点击 Setup/reset Database for labs 进行初始化,配置都正确的情况,初始化成功界面如下:

6、资料获取

如果需要以上安装包,请关注我的公众号:大象只为你,回复关键字:靶场环境1。