Sqli-labs是一个用来学习sql注入的环境,今天为各位正在学习渗透和护网的同学带来sqli-labs靶场的搭建教程。

1.软件准备

要安装sqli-labs环境,首先我们需要配置好phpstudy,通过phpstudy这个服务器集成软件来创建sqli-labs的网站,并且下载好sqli-labs-master配置文件,在演示中我使用的是适配php7.X版本的sqli-labs-master,如果大家下载的sqli-labs-master在登录的过程中报错,则可能需要降低php的版本,一般以php5.X为宜(因为php7.X对比php5.X版本,无法兼容mysqli()和mysql()语句),此问题请参考步骤8的回显图片。

2.信息确认

在演示中我将sqli-labs环境安装在虚拟机上(演示中的物理主机和虚拟机使用桥接模式连接),在虚拟机上配置好phpstudy之后,我们首先需要确认虚拟机的ip地址,打开cmd命令符界面,输入ipconfig,得到虚拟机的ip地址:例如192.168.GHI.JKL

其次需要确认phpstudy默认创建的数据库的密码,打开小皮面板的数据库界面进行确认:例如ABCDEF

3.网站创建

接下来,我们对sqli-labs的网站进行创建,在小皮面板中点击【网站】→【创建网站】,随后在【域名】一栏根据个人喜好创建一个域名,注意,在【PHP版本】中,大家尽可能选取较低版本的php,此处因为我下载的是适配php7版本的sqli-labs-master配置文件,因此我选择了php7.3.4版本,点击【确认】后,完成对sqli-labs的网站创建。

4.配置文件放置

接下来,我们将提前下载好的sqli-labs-master配置文件解压后整体复制到虚拟机php软件根目录中的WWW文件路径下,例如C:\phpstudy\phpstudy_pro\WWW,得到一个sqli-labs-master文件夹,双击打开后如图所示:

5.配置文件修改

此时sqli-labs的网站创建还不算真正完成,我们还需要对配置文件进行修改,在sqli-labs-master配置文件的sql-connections文件夹中,找到db-creds.inc文件,使用记事本打开,将我们之前找到的数据库密码输入到对应位置并保存修改:例如$dbpass=’ABCDEF’

6.确认域名与IP的对应关系

此时我们还需要确认域名与IP的对应关系,检查sqli-labs网站是否可以被正确访问,我们需要打开虚拟机C:\Windows\System32\drivers\etc路径下的hosts文件,打开看到127.0.0.1 sqlilabs.com,说明域名与IP的对应关系是正常的。

7.访问网站

使用物理主机访问域名http://192.168.GHI.JKL/sqli-labs-master/出现如图所示的界面(因为我下载的是适配php7版本的sqli-labs-master配置文件,因此图中访问的域名是http://192.168.GHI.JKL/sqli-labs-php7-master/,此处大家以自己实际下载的版本为准):

之后我们点击Setup/reset Database for labs,重置sqli-labs,出现如图所示界面,重置成功:

8.关于版本适配问题

接下来,我们可以打开Less-1实际检验一下sqli-labs环境是否安装成功,访问http://192.168.GHI.JKL/sqli-labs-master/Less-1/” />,出现如下图所示界面,则说明sqli-labs环境搭建成功:如果出现如下图所示回显报错,则有可能是下载的sqli-labs-master配置文件适配的php版本较低,出现了MySQL语句不兼容的问题,建议将php版本设定在5.X版本为宜,或者下载适配更高php版本的sqli-labs-master配置文件,这里不建议大家将配置文件中的mysql()语句逐一手动修改为mysqli()在小皮面板中也可以对php版本进行调整:

环境搭建完毕之后,大家就可以使用sqli-labs进行学习了,祝使用愉快:)