《Web漏洞防护》读书笔记——第6章,XXE防护
XXE介绍
XXE漏洞是指由于在XML文件中注入了外部实体而造成的攻击。
XML介绍:XML是一种用于标记电子文件并使其具有结构性的可扩展标记语言。
由以下几个元素所组成:
XML声明,DTD(跟在XML声明后,程序既可以在内部声明DTD,也可以引用外部的DTD文件),实体(需要在DTD内进行声明,分为内部声明实体、外部引用实体),根元素(XML文件有且仅有一个根元素,可以自定义根元素),元素(XML文件的主体内容,也可以成为XML代码),注释(使用 格式进行注释)。
XXE攻击方式介绍
XXE是一种针对应用程序的解析XML输入的攻击,当输入包含外部实体引用的XML文件到未进行安全配置的XML解析器中,产生此类攻击。
XXE攻击原理:
XML1.0标准定义了XML文档的结构,其中实体是指某种类型的存储单元,其具有各种类型,包括外部通用实体、参数解析实体等。
可以通过已生命的系统标识符访问本地或远程的内容。
系统标识符可以假定为一个URL,在处理实体时,XML解析器会对其进行引用,然后将外部实体命名的地方替换成系统标识符锁引用的内容。
如果系统标识符包含了恶意数据冰杯XML解析器解析,XM