利用updatexml()报错注入mysql

基本介绍一下updatexml()

updatexml(XML_document, XPath_string, new_value)

XML_document是文档对象的名称

XPath_string是XPath格式的字符串(如果XPath_string不是XPath格式,则会报错并显示出XPath_string的值)

new_value替换查找到的数据

 

XPath语法介绍:https://blog.csdn.net/dearbaba_8520/article/details/81557827

 

再看看常用的语句

updatexml(1,concat(1,payload),1)。

concat()函数用于将多个字符串连接成一个字符串,目的是让拼接后的字符串不符合XPath格式使其报错,显示出要查的对象。

最终的目的是使其报错,至于拼接的值多种多样,并不局限于1。

 

以sqli-labs为例:

可以看到,把payload位置改为database()后报错返回了当前数据库的名称

之后按照注入流程爆出表名,字段名即可

posted @ 2020-03-22 19:55  remon535  阅读(1811)  评论(0编辑  收藏  举报