游戏攻略

XML实体注入漏洞修复方案

栏目:游戏攻略 日期: 作者:游戏资讯

漏洞等级:高危

漏洞类型:XML实体注入

漏洞描述:XML实体注入漏洞(XXE漏洞)是指在应用程序解析XML输入时,未禁止外部实体加载,导致可加载恶意外部文件,造成文件读取、命令执行、内网端口扫描、攻击内网网站、发起DoS攻击等危害。漏洞通常出现在可以上传XML文件的位置,未对上传的XML文件进行过滤,导致可上传恶意XML文件。

具体修复方案:

1. 需要将poi jar包升级到4.1.2版本,当前使用的版本是3.16。

2. 升级完jar包后,代码中引入的相关方法及属性会报错,需要手动调整这些错误。

以下是3.6及以下的版本显示:

更高版本是这样的:

3. 调整完成后可以启动成功,但是上传文件依然会报错,错误信息如下:

Handler processing failed; nested exception is java.lang.NoSuchMethodError: org.apache.xmlbeans.XmlOptions.setEntityExpansionLimit(I)Lorg/apache/xmlbeans/XmlOptions;

这时候就需要手动排除poi里的xmlbeans,重新引入xmlbeans。注意:xmlbeans只能引入一个版本,不要存在其他版本的xmlbeans,否则仍会报错。

注意:不是pom.xml只引入一个版本就行了,是引用的Maven仓库中只能存在一个版本的xmlbeans。

关键词:

相关资讯