V5.1.3.0 产品补丁 - struts 升级到 2.5.30

问题描述
宇通项目检测出公司产品存在 struts 远程执行漏洞。mes 产品目前使用 struts 版本是 2.3.15,需要升级到 2.5.30 版本。
解决方案

1. 修改 POM 依赖, 升级如下 jar 包, 排除旧版本 jar。

struts2-core-2.5.30.jar,        
struts2-config-browser-plugin-2.5.30.jar,
struts2-jasperreports-plugin-2.5.30.jar,
struts2-json-plugin-2.5.30.jar
struts2-spring-plugin-2.5.30.jar,
ognl-3.0.21.jar
commons-lang3-3.8.1.jar,
commons-fileupload-1.4.jar
freemarker-2.3.23.jar
commons-io-2.11.0.jar

2. 修改 struts 配置文件
1. 将标题头改为:

image.png

2. 方法不能访问的问题, 需要在每个 action 配置文件加上 strict-method-invocation=“false”
3. 在 struts-core.xml,struts-platfor.xml,struts-log.xml 里加上 regex:.*

插件使用说明
插件已上传至公司 maven 仓库,项目中使用配置如下 maven 依赖即可。
image.png
项目中使用需要覆盖附件中相关文件struts 升级补丁文件.zip

ps: 插件基于的平台版本 5.1.3.0。其他版本可能会有差异, 有问题可以联系技术中心。