(1)尝试提交下面的值,并确定它们是否会导致应用程序的行为发生改变,但不会造成错误:
如果参数为数字,尝试提交下面的测试字符串:
(2)如果上面的任何字符串导致应用程序的行为发生改变,但不会造成错误,很可能可以通过设计测试条件,一次提取一个字节的信息,从而获取任意数据。使用一系列以下格式的条件确定当前节点的父节点的名称:
(3)提取出父节点的名称后,使用一系列下面格式的条件提取XML树中的所有数据:
如果觉得必须在一个XPath查询中插入用户提交的输入,应该只提交可实施严格输入确认的简单数据。应根据一份由可接受字符组成的“白名单”检查用户输入,其中最好只包括字母数字字符。应阻止任何可能破坏XPath查询的字符,包括( )= ′ [ ] :,* /和所有空白符。直接拒绝而不是净化任何与白名单不匹配的输入。