struts2有漏洞是众所周知的、一直忙于项目没有时间升级、今天得空升级一下。不得不说 struts2 网站打开是极慢的:http://struts.apache.org/ 里面有Struts 2.3.20版本的文档、演示项目以及JAR包。; I% l3 I/ u2 n8 d" O$ g
下载下来 替换几JAR就ok了。
/ R9 X* F$ w- N* a9 S6 Z
6 w% J! |5 p( K& o2 y7 B版本改进:
8 s$ e6 x9 b+ E/ M* m. c/ HØ 合并后的安全修补程序版本中,2.3.16.1、 2.3.16.2、 2.3.16.3 Ø 扩展现有的安全机制来阻止访问给定的 java包和类 Ø RedirectResult 参数集合 Ø 在默认情况下,使 ParametersInterceptor 支持中文哈希键 Ø themes.properties可以使用加载 ServletContext 允许放在 WEB-INF 下或在类路径中的模板文件夹 Ø 新标记 datetextfield Ø 只有缓存有效的 Ognl 表达式 Ø 自定义 TextProvider 可用于验证错误的模型驱动的行动 Ø datetimepicker 的标签固定 Ø PropertiesJudge 删除和属性已签入 SecurityMemberAccess Ø 在 IBM JVM 资源重新加载工作 Ø 默认加载设置已被删除从 default.properties Ø commons-fileupload.jar升级到版本 1.3.1 要修复潜在的安全漏洞 Ø 标记组合属性可以使用表达式 Ø 解决 FastByteArrayOutputStream 中的无限循环问题 Ø LocalizedTextUtil 支持很多的类加载器 Ø 介绍了条例草案的材料 pom Ø debug = browser|console 被迁移到 jQuery Ø struts_dojo.js 被固定的 Ø 新增接口 org/apache/struts2/views/TagLibray,并且标记为 @Depreacted
# ]9 C3 e0 H ] vStruts.xml :
- r4 }% g: P0 DStruts 2.3.20 配置文件新增加了参数为struts.excludedClasses,此参数为了严格验证排除一些不安全的对象类型。
+ M9 c* |' F0 }5 F+ m value=" java.lang.Object, java.lang.Runtime, java.lang.System, java.lang.Class, java.lang.ClassLoader, java.lang.Shutdown, ognl.OgnlContext, ognl.MemberAccess, ognl.ClassResolver, ognl.TypeConverter, com.opensymphony.xwork2.ActionContext" />
4 z1 I, i. l5 w! G' j
3 M6 R/ a6 V6 x3 S& Y" Z( Yvalue="^java\.lang\..*,^ognl.*,^javax.*" /> p1 l, \" [6 [4 q x7 R
“java.lang.Classs”值过滤struts标签中静态方法调用- x7 p( J; u3 G, Y+ ^; Z
需要替换的重要jar包:$ |+ h2 W( f6 x
ognl-3.0.6.jar
3 B j: q5 A' P. s3 f3 ]struts2-core-2.3.20.jar9 R0 j/ a* z" {$ l- R3 X
struts2-json-plugin-2.3.20.jar
$ ]) K& z6 C. f2 \, F% B: gstruts2-spring-plugin-2.3.20.jar
; Q- V* h7 N7 N Bxwork-core-2.3.20.jar& C6 u/ o5 d- ]$ D; ? n6 r
struts.xml文件:
( J, s4 O4 o0 \7 V1 \修改注释为2.3版本& o( d! ~1 y; j, B
- <!DOCTYPE struts PUBLIC3 t' Q9 l* M! P$ B; o% B
- "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
7 V! g/ E; ^, i; T/ A - "http://struts.apache.org/dtds/struts-2.3.dtd">
复制代码
Struts 2.3.20版本JAR.zip
(1.55 MB, 下载次数: 1)
# j$ v2 G- r _- |) U0 q1 q* S( I
1 r, }- p8 V' L8 J6 T8 ustruts-2.3.20-all文档以及演示项目$ a( j4 `! ?2 O: R. Q0 l: }, X/ y
3 K2 O8 t/ b" |, J# ^1 P+ `
|