sql注入一般流程:
1.判断注入点:判断注入类型,数字型还是字符型;
2.查字段数:常用指令:“order by”
3.依次查询数据库,表名,列名
4.从表中查询到所需数据
less 1:
1) 判断注入点
存在注入点,判断注入类型
1=2没有执行说明,不是数字型注入,接下来猜字符型的闭合方式,或直接去找源代码
猜测双引号,结果报错,成功
2) 查字段数
说明字段数为3;
3)开始搜索数据:
数据库,版本
表名
一般id和密码会储存在users中,我们先查询该表的列名:
该表中确实包含账号和密码,先看其中有多少id
13个太多,一次性全部输出估计困难,所以用limit限制
完成
less 2: 我们直接查询源代码:
可以看出,此处id是直接使用的,那么我们把上一题的删去即可
成功报错,后面的流程与less 1相同,在此并不做重复演示
less 3:
相同步骤,查询源代码得
那么将less 1中的“'”改为“')”即可,其余流程相同
less 4:
将less 1中“"”改为“)”即可
less 5:
这道题与前面有些不同,前两步照常,但想搜索数据库时竟发现没有回显点
没有回显点就不能直接输出搜索结果了,但是我们会发现偶尔发生语法错误时会报错
那么我们可以利用报错来完成sql注入;
这时我们可以用函数updatexml报错注入
接着是表名
列名
爆数据!我这里用where id= 来控制
less 6 与less 5步骤基本相同,只要将字符型的“'”改为“"”即可