Sqli-Labs是用来练习sql注入的好平台。project地址:https://github.com/Audi-1/sqli-labs
本文测试环境:使用phpstudy集成环境。mysql版本:5.5.53
Less 1
题目是 GET Error based- Single quotes -String。关注点:基于错误,单引号,字符型注入。
payload1
|
|
此时页面会产生报错。
payload2
|
|
通过UNION SELECT 或者 ORDER BY 语句可以发现字段数为 3 ,可显示位置为 2,3。尾部—+会被浏览器解释为— (空格),这在mysql里是注释。
payload3
获取数据库名称
|
|
利用元数据表INFORMATION_SCHEMA获取数据库信息。
获取表名
|
|
这里 hex(security)=0x7365637572697479
获取字段名
|
|
获取数据
|
|
Less 2
题目说是数值型注入。 不需要闭合引号。给出最终payload
Less 3
题目提示 SINGLE QUOTES WITH TWIST。
payload1
|
|
注意到报错回显中有 ),说明需要闭合。
payload2
类似
将Less1中的几段payload的前面的 0’ 改为 0’) 即可
最终payload
|
|
Less 4
这题需要闭合双引号。
payload1
|
|
需要闭合 双引号
payload2
类似
将Less1中的几段payload的前面的 0’ 改为 0”) 即可
最终payload
|
|
sqlilab环境搭建
下载sqlilab
传送门:https://github.com/Audi-1/sqli-labs
可以选择下载zip后解压或者自行git clone到本地,
推荐phpstudy
传送门:http://www.phpstudy.net/a.php/211.html
不懂使用的建议查一查。
这里假设phpstudyd 主页为 http://localhost:20000/
安装
将sqlilab解压出来的文件夹(默认名为 sqli-labs-master)拷贝到phpstudy的WWW目录下,打开phpstudy,访问sqlilab页面( http://localhost:20000/sqli-labs-master )。
点选Setup/reset Database for labs完成数据库配置。之后即可开始实验。