OWASP Top10 系列之 XPath 注入

Author Avatar
Tr0y 5月 11, 2019 14:00:05 本文共 308 字
  • 文为知己者书
  • 在其它设备中阅读本文章

OWASP Top10 系列 - 注入 - XPath

原理

XPath 注入发生在当站点使用用户输入的信息来构造请求以获取 XML 数据的时候。

一句话描述

  • 甲方:未经过滤,直接使用用户提供的信息来获取、查询 XML 数据,导致其中恶意的 XPath 被执行,返回非预期的数据。
  • 乙方:破坏原有的 XPath,插入恶意的 XPath,最后闭合原 XPath 的攻击方式。

利用

攻击点:任何使用 XPath 查询 XML 的地方。

组件

XML、XPath

类型

只有一种:https://www.tr0y.wang/2019/05/11/XPath注入指北/

工具

xcat:https://github.com/orf/xcat

防御

  • 过滤字符是必须的,比如[]、转义 'andor等等。
  • 过滤不需要的函数:name()count() 等等。
  • 加密/Hash:既然 XPath 注入会导致 XML 数据泄露,所以对敏感信息的加密是必须的。这个方法还有一个额外的好处:使得恶意的字符失效。比如对密码 MD5 的话,就意味着密码这个点没法插入单引号来破坏语句了,因为单引号会进入md5()函数计算。
  • 屏蔽错误信息。
  • 参数化 XPath 查询。这个因编程语言而异。

End

What do you think?

本文标题: OWASP Top10 系列之 XPath 注入
原始链接: http://www.tr0y.wang/2019/05/11/OWASP-Top10-系列之XPath注入/
发布时间: 2019.05.11-14:00
最后更新: 2019.05.31-16:36
版权声明: 本站文章均采用CC BY-NC-SA 4.0协议进行许可。转载请注明出处!