网络安全专题----sql注入:sqli-Labs 靶场保姆级教程
前言
SQLi-Labs是一款用于学习和练习SQL注入漏洞的开源应用程序。它提供了一系列的漏洞场景和练习环境,帮助用户了解和实践SQL注入漏洞的利用技术。
SQL注入是一种常见的Web应用程序漏洞,攻击者可以通过在输入字段中注入恶意的SQL代码,从而绕过应用程序的身份验证、访问敏感数据、修改数据库内容等。通过使用SQLi-Labs,用户可以学习如何识别和利用不同类型的SQL注入漏洞,并了解如何修复和防范这些漏洞。
第一步:环境选择
Win10系统或虚拟机
第二步:安装 PHPStudy
打开PHPStudy下载链接:
https://www.xp.cn/download.html
按照红色箭头点击:
解压,安装:
安装完成后,形成新的文件夹:
打开COM文件夹,运行phpstudy:
界面如下图:
安装成功!
第三步:安装 sqli-labs
打开sqli-labs github
sqli-labs地址:
https://github.com/Audi-1/sqli-labs
下载或直接拉取到本地:
解压:
运行phpstudy,选择"网站"->“管理”->“打开根目录”,自动跳转到根目录:
将解压后的sqli-labs-master文件夹重命名为sqli-labs,然后将其移动到上述根目录中:
第三步完成!
第四步:sqli-labs与PHPStudy配置
一些用户安装PHPStudy后,发现该软件有内置的Mysql数据库。因此,这一步我分两种情况讲解。
情况1:本机已经安装了Mysql 5.7
若本机安装了mysql数据库,打开PHPStudy后会发现PHPStudy会启动失败,如下图所示。
因此,我们直接使用之前自己安装的mysql数据库即可。
操作流程
第一步:连接外部数据库
1.打开sqli-labs文件夹,找到sql-connections文件夹,可以看到db-creds.inc配置文件。
修改里面的信息,具体修改如下:
2.点击"软件管理",找到"phpMyAdmin4.8.5",下载并安装
3.点击“首页",点击"数据库工具",选择"phpMyAdmin",会自动通过浏览器打开相关网页
4.输入刚才设置的自己主机上的mysql的用户名与密码,选择"执行"。
至此,mysql数据库连接成功,此时无需启动PHPStudy内置的mysql。
第二步:配置sqli-Labs环境
1.sqli-Labs只支持早期的PHP5环境。然而,低版本的PHP5会导致上一步的"phpMyAdmin4.8.5"启动失败。而php5.6.9算PHP5里的高级版本,既支持sqli-Labs环境需要,也支持phpMyAdmin4.8.5的运行。因此,打开"软件管理",下载并安装php5.6.9nts。
2.选择"网站",点击右侧"管理",点击php版本,选择"php5.6.9nts"
第三步:启动sqli-Labs
1.打开PHPStudy,启动”WNMP"与"nginx":
2.启动上一步安装的"PHPMyAdmin",输入刚才设置的自己主机上的mysql的用户名与密码,选择"执行"。
启动成功。
3.打开浏览器,输入:http://localhost/sqli-labs/,按回车,即可看到sqli-Labs界面:
4.点击Setup/reset Database for labs,下载Labs数据库
出现下面界面,则下载成功。
5.回退到http://localhost/sqli-labs/,点击下面结构图的每一栏,开始练习。同时左上角可以选择不同阶段的题目。
结束!
情况2:本机未安装Mysql 5.7
若本机未安装mysql数据库,则直接使用PHPStudy内置的Mysql即可。
操作流程
第一步:配置PHPStudy的Mysql数据库密码
1.打开sqli-labs文件夹,找到sql-connections文件夹,可以看到db-creds.inc配置文件。
修改成自己想要的密码即可。
第二步:配置sqli-Labs环境
1.sqli-Labs只支持早期的PHP5环境因此,打开"软件管理",下载并安装php5.6.9nts。
2.选择"网站",点击右侧"管理",点击php版本,选择"php5.6.9nts"
第三步:启动sqli-Labs
1.打开PHPStudy,启动”WNMP"、内置的"mysql"与"nginx":
3.打开浏览器,输入:http://localhost/sqli-labs/,按回车,即可看到sqli-Labs界面:
4.点击Setup/reset Database for labs,下载Labs数据库
出现下面界面,则下载成功。
5.回退到http://localhost/sqli-labs/,点击下面结构图的每一栏,开始练习。同时左上角可以选择不同阶段的题目。
结束!