Entry № 1394
XML 注入
XML 注入 是什么?
XML 注入向应用的 XML 处理过程注入恶意标签、属性或 XPath 片段,以改变逻辑或窃取数据的攻击。
当用户输入被未充分编码或校验地嵌入 XML 文档、SOAP 消息或 XPath 查询中时,就会发生 XML 注入。攻击者可以添加新的元素(XML 注入)、破坏文档层级(XML 结构攻击)或修改 XPath 表达式(XPath 注入),以绕过认证、提升权限或读取 XML 数据源的任意部分。相关变种包括利用 XML 解析器实体解析特性的 XXE 攻击。防御措施包括严格的 XSD 模式校验、参数化的 XPath API、对所有写入 XML 的不可信值进行编码、关闭未使用的解析器特性,以及使用安全默认配置的加固库。
● 示例
- 01
提交 <username>admin</username><!--<password>x</password>--> 将密码元素注释掉,以管理员身份登录。
- 02
在 XPath 登录查询中注入 ' or '1'='1,当认证以开放方式失败时返回第一个用户。
● 常见问题
XML 注入 是什么?
向应用的 XML 处理过程注入恶意标签、属性或 XPath 片段,以改变逻辑或窃取数据的攻击。 它属于网络安全的 攻击与威胁 分类。
XML 注入 是什么意思?
向应用的 XML 处理过程注入恶意标签、属性或 XPath 片段,以改变逻辑或窃取数据的攻击。
如何防御 XML 注入?
针对 XML 注入 的防御通常结合技术控制与运营实践,详见上方完整定义。
XML 注入 还有哪些其他名称?
常见的别称包括: XPath 注入(相关)。