调试环境准备:在mysql上创建一张表用于测试

1、updatexml报错注入

updatexml(0,concat('1',(select database())),0)

updatexml(目标xml文档名,xml路径,要更新的内容)用于更新xml文档
其中xml路径要符合XPATH语法,参见https://www.w3school.com.cn/x...
不符合语法的话就会触发xml报错

我们来看下面的实例
下面的xpath路径语法是对的,所以是不会有报错的

如果xpath语法错误,就会触发sql的xpath报错,sql注入报错的原理就是基于此

接下来我们来尝试一下报错注入
下图对database进行了查询

我们利用concat构造一个错误的xpath语法,成功爆出来当前数据库的名称,红框处可以是任意不符合xpath语法的值

其他报错注入持续更新中.....