后知后觉,今天才开始修复Struts2的漏洞

详细情形可以参考:

http://struts.apache.org/release/2.3.x/docs/security-bulletins.html

本次的升级是把struts2.3.1.2升级到2.3.15.1

全部更新:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
两个版本相同的:
aopalliance-1.0.jar
asm-commons-3.3.jar
asm-tree-3.3.jar
commons-logging-api-1.1.jar
ezmorph-1.0.6.jar
guava-r09.jar
stax2-api-3.1.1.jar
xml-resolver-1.2.jar
  
替换(**为补丁需要替换的):
asm-3.3.jar -> asm-3.2.jar
** commons-fileupload-1.3.jar -> commons-fileupload-1.2.2.jar
commons-io-2.0.1.jar -> commons-io-1.4.jar
** add  commons-lang3-3.1.jar  
commons-logging-1.1.3.jar -> commons-logging-1.1.1.jar
cxf-api-2.7.4.jar -> cxf-api-2.5.0.jar
cxf-rt-bindings-soap-2.7.4.jar -> cxf-rt-bindings-soap-2.5.0.jar
cxf-rt-bindings-xml-2.7.4.jar -> cxf-rt-bindings-xml-2.5.0.jar
cxf-rt-core-2.7.4.jar -> cxf-rt-core-2.5.0.jar
cxf-rt-databinding-jaxb-2.7.4.jar -> cxf-rt-databinding-jaxb-2.5.0.jar
cxf-rt-frontend-jaxws-2.7.4.jar -> cxf-rt-frontend-jaxws-2.5.0.jar
cxf-rt-frontend-simple-2.7.4.jar -> cxf-rt-frontend-simple-2.5.0.jar
cxf-rt-transports-http-2.7.4.jar -> cxf-rt-transports-http-2.5.0.jar
cxf-rt-ws-addr-2.7.4.jar -> cxf-rt-ws-addr-2.5.0.jar
freemarker-2.3.19.jar -> freemarker-2.3.16.jar
jackson-core-asl-1.9.2.jar -> jackson-core-asl-1.6.0.jar
jackson-mapper-asl-1.9.2.jar -> jackson-mapper-asl-1.6.0.jar
  
neethi-3.0.2.jar -> neethi-3.0.1.jar
** ognl-3.0.6.jar -> ognl-3.0.4.jar
** struts2-convention-plugin-2.3.15.1.jar -> struts2-convention-plugin-2.3.1.2.jar
** struts2-core-2.3.15.1.jar -> struts2-core-2.3.1.2.jar
  
** struts2-jfreechart-plugin-2.3.1.2.jar -> struts2-jfreechart-plugin-2.3.15.1.jar
** struts2-spring-plugin-2.3.1.2.jar -> struts2-spring-plugin-2.3.15.1.jar
woodstox-core-asl-4.2.0.jar -> woodstox-core-asl-4.1.1.jar
wsdl4j-1.6.3.jar -> wsdl4j-1.6.2.jar
xmlschema-core-2.0.3.jar -> xmlschema-core-2.0.1.jar
** xwork-core-2.3.15.1.jar -> xwork-core-2.3.1.2.jar

如果只针对修复漏洞,只需要更新

1
2
3
4
5
6
7
8
9
10
替换
** commons-fileupload-1.3.jar -> commons-fileupload-1.2.2.jar
** ognl-3.0.6.jar -> ognl-3.0.4.jar
** struts2-convention-plugin-2.3.15.1.jar -> struts2-convention-plugin-2.3.1.2.jar
** struts2-core-2.3.15.1.jar -> struts2-core-2.3.1.2.jar
** struts2-jfreechart-plugin-2.3.1.2.jar -> struts2-jfreechart-plugin-2.3.15.1.jar
** struts2-spring-plugin-2.3.1.2.jar -> struts2-spring-plugin-2.3.15.1.jar
** xwork-core-2.3.15.1.jar -> xwork-core-2.3.1.2.jar
增加
** add  commons-lang3-3.1.jar

如果web.xml引用到

ActionContextCleanUp,还会恶心的报这个Warning!!!!!!!

1
2
3
4
5
6
7
8
9
10
11
***************************************************************************
*                                 WARNING!!!                              *
*                                                                         *
* >>> ActionContextCleanUp <<< is deprecated! Please use the new filters! *
*                                                                         *
*             This can be a source of unpredictable problems!             *
*                                                                         *
*                Please refer to the docs for more details!               *
*              http://struts.apache.org/2.x/docs/webxml.html              *
*                                                                         *
***************************************************************************

为了清净我们的耳目,只能把ActionContextCleanUp的配置清除掉

1
2
3
4
  <filter>
 <filter-name>struts2CleanupFilter</filter-name>
  <filter-class>org.apache.struts2.dispatcher.ActionContextCleanUp</filter-class>
</filter>

可以替换成另外的实现

1
2
3
4
<filter>
   <filter-name>StrutsPrepareFilter</filter-name>
   <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareFilter</filter-class>
</filter>

DONE!

Struts升级到2.3.15.1抵抗漏洞的更多相关文章

  1. Python 2.6.6升级到Python2.7.15

    最近在使用Python处理MySQL数据库相关问题时,需要用到Python2.7.5及以上版本,而centos6.5等版本操作系统默认自带的版本为2.6.6,因此需要对python进行升级. Pyth ...

  2. Nginx升级加固SSL/TLS协议信息泄露漏洞(CVE-2016-2183)

    Nginx升级加固SSL/TLS协议信息泄露漏洞(CVE-2016-2183) 漏洞说明 // 基于Nginx的https网站被扫描出SSL/TLS协议信息泄露漏洞(CVE-2016-2183),该漏 ...

  3. struts2从2.2.3升级到2.3.15.1步骤

    1. 删除以下jar包 asm-3.1.jar asm-commons-3.1.jar commons-beanutils-1.7.0.jar commons-fileupload-1.2.2.jar ...

  4. struts升级到最高版本后遇到的问题。关于actionmessage传递问题。

    Struts2升级到最新版本遇到的一些问题 首先是更换对应的jar,如asm.common.ongl.struts等等.更换后发现系统启动不了,按照网上的介绍,先后又更新了slf4j-log4j12- ...

  5. struts升级2.3.12到2.5.13

    参考文章: http://www.ituring.com.cn/article/495914 http://blog.csdn.net/zhangchen1987/article/details/78 ...

  6. MacOS下PHP7.1升级到PHP7.4.15

    最近写SDK的时候需要用到object类型提示符,PHPStorm智能提示说需要PHP7.2以上才能支持这种类型提示. 我一查我本机的PHP是7.1.30版本,于是考虑升级一下PHP版本. 首先要尝试 ...

  7. nginx平滑升级(1.14--1.15)

    查看旧版nginx编译参数 [root@localhost yum.repos.d]# nginx -V nginx version: nginx/1.14.2 built by gcc 4.8.5 ...

  8. CentOS6.x服务器OpenSSH平滑升级到7.3p版本——拒绝服务器漏洞攻击

    对于新安装的Linux服务器,默认OpenSSH及OpenSSL都不是最新的,需要进行升级以拒绝服务器漏洞攻击.本次介绍的是升级生产环境下CentOS6.x系列服务器平滑升级OpenSSL及OpenS ...

  9. 15.Nginx 解析漏洞复现

    Nginx 解析漏洞复现 Nginx解析漏洞复现. 版本信息: Nginx 1.x 最新版 PHP 7.x最新版 由此可知,该漏洞与Nginx.php版本无关,属于用户配置不当造成的解析漏洞. 使用d ...

随机推荐

  1. javascript keycode大全【转载】

    keycode    8 = BackSpace BackSpace keycode    9 = Tab Tabkeycode   12 = Clearkeycode   13 = Enterkey ...

  2. Windows 窗体的.Net 框架绘图技术

    当编写一个典型的Windows 窗体程序时,窗体和控件的绘制.效果等操作是不需要特别加以考虑的.这是为什么呢?因为通过使用 .Net 框架,开发人员可以拖动一系列的控件到窗体上,并书写一些简单的与事件 ...

  3. delphi TToolBar

    工具栏  的属性 xe4的事件 Customizable OnCustomizeCanDelete OnCustomizeCanInsert OnCustomized OnCustomizeAdded ...

  4. ABAP EXCEL 文件上传下载 用SMW0

    T-CODE: SMW0 在这里只介绍二进制数据,HTML模板的上传也一样. 另外也可以用CBO TABLE管理文件 可以看我另一个博文:CBO TABLE管理文件上传下载 选择 二进制 写包名: 进 ...

  5. 元数据标签Embed

    关于Embed外部资源的使用方法总结 Flex软件中经常需要使用一些外部的资源,如图片.声音.SWF或字体,虽然你也可以在软件运行的时候引入和载入,但是也可能经常需要直接将这些资源编译(Compile ...

  6. C读取配置文件

    #ifndef __CFG_OP_H__ #define __CFG_OP_H__ #ifdef __cplusplus extern "C" { #endif //获取配置项 i ...

  7. 网络IPC:套接字之建立连接

    如果处理的是面向连接的网络服务(SOCK_STREAM或SOCK_SEQPACKET),在开始交换数据以前,需要在请求服务的进程套接字(客户端)和提供服务的进程套接字(服务器)之间建立一个连接.客户端 ...

  8. 跳表SkipList

    原文:http://www.cnblogs.com/xuqiang/archive/2011/05/22/2053516.html 跳表SkipList   1.聊一聊跳表作者的其人其事 2. 言归正 ...

  9. php对象当参数传递 && php深复制和浅复制

    把对象当参数传递给方法,在方法里改过对象后,影响到外面的对象  因为对象是引用传递过去的 class Book { public $name; public function __construct( ...

  10. Android Service与Activity之间通信的几种方式

    在Android中,Activity主要负责前台页面的展示,Service主要负责需要长期运行的任务,所以在我们实际开发中,就会常常遇到Activity与Service之间的通信,我们一般在Activ ...