原由
sqli-labs是流行的sql注入练习环境,但是由于使用mysql系列函数,所以在php7及以上版本不受到支持,本篇教程来讲解如何修改原版的sqli-labs来使其受到php 7及以上版本的支持。
具体操作
- 获取sqli-labs-master.zip原始文件包。
- 使用Ubuntu操作系统对其进行处理,将文件拷贝到Ubuntu系统中,并在其目录下打开Bash。使用Linux命令行工具来对sqli-labs的源代码进行处理。
- 执行bash命令修改源代码
- mysql_query函数修改
sed -i s/"mysql_query(\$sql)"/"mysqli_query(\$con,\$sql)"/g `grep "mysql_query\(\$sql\)" -rl ./`
- mysql_error函数修改
sed -i s/"mysql_error()"/"mysqli_error(\$con)"/g `grep "mysql_error()" -rl ./`
- 将mysql系列函数改为mysqli系列函数
sed -i "s/mysql_/mysqli_/g" `grep mysql_ -rl ./`
- 出错函数屏蔽
将sql-connections\function.php中的第4行代码
include("../sql-connections/sql-connect-1.php");
注释掉,这句代码会两次连接数据库导致出错
- 错误代码修正
sql-connections\sql-connect.php文件中第14行代码,变量顺序出错
@mysqli_select_db($dbname,$con) or die ( "Unable to connect to the database: $dbname");
修改为
@mysqli_select_db($con,$dbname) or die ( "Unable to connect to the database: $dbname");
成功结果
下载地址
链接:https://pan.baidu.com/s/1vg9LvGmY6TvMW-w0CnhzTg
提取码:c922