一.sqli-labs介绍:
sqli-labs是由一个印度程序员开发的SQL注入实战平台,涵盖了报错注入、盲注、Update注入、Insert注入、Heather注入、二阶注入、绕过WAF,比较全面的一个注入平台:项目地址
二.前置条件
需要:「Apache/Nginx + PHP + Tomcat + java环境」
对于win用户通过XAMPP(LAMP)配置可轻松搭建。而对于mac平台也有XAMPP,但界面过于丑陋且不够方便。作为一个“精致”的boy,此处使用Mxsrvs代替,当然使用MAMP也可以代替XAMPP,mac系统其实已经内置了Apache与PHP,这两个也可以不用安装。
此处使用 MxSrvs_1.2.1 + Nginx1.18.0 + PHP7.4.6 + Tomcat9.0.35 + JDK11作为演示。
三.安装
1.安装MxSrvs。
MxSrvs 是MacOS平台免费的PHP集成开发环境,界面简洁,功能强大。
按以下图示操作:
切换版本后启动 Nginx1.18.0 和 PHP7.4.6,成功即完成安装。
MxSrvs只能运行在/Applications/MxSrvs 目录中,即相应的sqli-labs需要放到/Applications/MxSrvs/www目录下才能执行。
配置Nginx:
生成一个配置文件,对其修改:
server {
listen 80;
server_name yxh.com;
root /Applications/MxSrvs/www/work/xxxxx;
#access_log /Applications/MxSrvs/logs/xxx.com.log;
location / {
index index.php index.html error/index.html;
#autoindex on;
if (!-e $request_filename) {
rewrite ^/(.*)$ /index.php/$1;
}
error_page 400 /error/400.html;
error_page 403 /error/403.html;
error_page 404 /error/404.html;
error_page 500 /error/500.html;
error_page 501 /error/501.html;
error_page 502 /error/502.html;
error_page 503 /error/503.html;
error_page 504 /error/504.html;
error_page 505 /error/505.html;
error_page 506 /error/506.html;
error_page 507 /error/507.html;
error_page 509 /error/509.html;
error_page 510 /error/510.html;
autoindex off;
}
location ~ \.php(.*)$ {
fastcgi_pass 127.0.0.1:10080;
fastcgi_index index.php;
fastcgi_split_path_info ^((?U).+\.php)(/?.+)$;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
include fastcgi_params;
}
}
2.下载sqli-labs
PHP版本 < 7: 下载官方版。
PHP版本 > 7: 下载修改版。
也可以使用GET:
sudo apt-get install git
sudo git clone https://github.com/skyblueee/sqli-labs-php7 /var/www/html/sqli-labs
注:由于php在php5之后移除了mysql扩展(函数),而sqli-labs是基于php5以下版本的平台。所以下载官方版后要使用mysqli扩展就需要手动修改:
1.进入sqli-labs/sql-connections
2.对内部所有文件进行以下修改:

3.配置sqli-labs
1).将sqli-labs文件夹放到MxSrvs的www目录下。
2).打开sqli-labs/sql-connections/db-creds.inc,修改$dbpass为你的数据库密码
4.启动sqli-labs
1).确定mysql,php,Nginx都已经启动的前提下,浏览器输入:http://localhost:[http服务器端口]/sqli-labs。
即可进入以下页面:

2).点击 **Setup/reset Database for labs **后显示:

四.修改mysql密码
MySQL和Redis所有版本的默认root密码均为空,想要修改mysql密码可以有以下几种方法:
1.使用mysql自带的mysqladmin(位于bin下)。
mysqladmin -u用户名 -p旧密码 password 新密码