weblogic Java反序列化漏洞测试和解决
2017-01-17 17:00
756 查看
一、打补丁从weblogic10.3.6打补丁到10.3.6.0.12
系统是windows
2008 server 64位
查看服务器的weblogic版本信息:cmd下执行 java
weblogic.version 显示信息如下:
如果不好使,提示什么也找不到。
执行C:\Oracle\Middleware\wlserver_10.3\server\bin>setWLSenv.cmd
将补丁数据文件p20780171_1036_Generic
(2).zip和p22248372_1036012_Generic.zip解压并拷贝到weblogic
目录下 utils/bsu/cache_dir 中,如果没有cache_dir 自己创建。
(两个zip到这里下载
我的百度云 链接:http://pan.baidu.com/s/1bp25dPP
密码:hqi0)
1.首先执行
提示信息如下:
3.查看更新结果
C:\Oracle\Middleware\wlserver_10.3\server\bin>java weblogic.version
如果不行,就设定一下环境
C:\Oracle\Middleware\wlserver_10.3\server\bin>setWLSEnv.cmd
显示结果如下:
以上是成功更新补丁成功。
二、测试工具和解决办法(以下是转载和整合)
①、测试
Java -jar CommonsCollectionsTools.jar weblogic 192.168.0.11 7001 F:/a.txt
执行该操作后,如果该IP上的电脑生成a.txt文件,证明漏洞存在(此命令为window下操作,linux下修改文件路径,暂未测试)。
前提:
需要JRE 1.7或以上版本运行。下面的命令是在安装JRE 1.7的机器上运行。
测试jar下载地址:http://download.csdn.net/detail/gongzi2311/9434503
②、解决
1、 替换java包解决应用层面问题。方法是使用官方提供的4.4.1 版本commons-collections4-4.1.jar包替换应用lib目录下的commons-collections.jar,再重启应用。
2、解决中间件层面问题。
方法一:升级weblogic补丁包,升级weblogic 10.3.6.12的补丁包p22248372_1036012_Generic.zip,直接安装补丁即可,但不支持10.3.6.12之前的版本,如果是老版本,先升级到 10.3.6.12再打补丁,或要用方法二。
方法二:删除特定文件。 找到..\weblogic\Middleware\modules\com.bea.core.apache.commons.collections_3.2.0.jar 并打开,jar 包 内 org/apache/commons/collections/functors/InvokerTransformer.class文件,不要直接解压缩后打开再重新包,这样会有问题。要直接用压缩工具软件打开后直接删除。特别注意如果集群环境,要全部停掉再执行此操作才有效,否则会被缓存的文件覆盖回原始包。
系统是windows
2008 server 64位
查看服务器的weblogic版本信息:cmd下执行 java
weblogic.version 显示信息如下:
WebLogic Server 10.3.6.0 Tue Nov 15 08:52:36 PST 2011 1441050 Use 'weblogic.version -verbose' to get subsystem information Use 'weblogic.utils.Versions' to get version information for all modules
如果不好使,提示什么也找不到。
执行C:\Oracle\Middleware\wlserver_10.3\server\bin>setWLSenv.cmd
将补丁数据文件p20780171_1036_Generic
(2).zip和p22248372_1036012_Generic.zip解压并拷贝到weblogic
目录下 utils/bsu/cache_dir 中,如果没有cache_dir 自己创建。
(两个zip到这里下载
我的百度云 链接:http://pan.baidu.com/s/1bp25dPP
密码:hqi0)
1.首先执行
C:\Oracle\Middleware\utils\bsu>java -jar C:\Oracle\Middleware\utils\bsu\patch-client.jar -install -patch_download_dir=C:\Oracle\Middleware\utils\bsu\cache_dir -patchlist=EJUW -prod_dir=C:\Oracle\Middleware\wlserver_10.3提示信息如下:
检查冲突... 未检测到冲突 正在安装补丁程序 ID: EJUW .. 结果: 成功2.再次执行
C:\Oracle\Middleware\utils\bsu>java -jar C:\Oracle\Middleware\utils\bsu\patch-client.jar -install -patch_download_dir=C:\Oracle\Middleware\utils\bsu\cache_dir -patchlist=ZLNA -prod_dir=C:\Oracle\Middleware\wlserver_10.3
提示信息如下:
检查冲突... 未检测到冲突 正在安装补丁程序 ID: ZLNA.. 结果: 成功
3.查看更新结果
C:\Oracle\Middleware\wlserver_10.3\server\bin>java weblogic.version
如果不行,就设定一下环境
C:\Oracle\Middleware\wlserver_10.3\server\bin>setWLSEnv.cmd
显示结果如下:
WebLogic Server Temporary Patch for BUG22248372 Tue Nov 24 00:35:04 MST 2015 WebLogic Server 10.3.6.0.12 PSU Patch for BUG20780171 THU JUN 18 15:54:42 IST 20 15 WebLogic Server 10.3.6.0 Tue Nov 15 08:52:36 PST 2011 1441050 Use 'weblogic.version -verbose' to get subsystem information Use 'weblogic.utils.Versions' to get version information for all modules
以上是成功更新补丁成功。
二、测试工具和解决办法(以下是转载和整合)
①、测试
Java -jar CommonsCollectionsTools.jar weblogic 192.168.0.11 7001 F:/a.txt
执行该操作后,如果该IP上的电脑生成a.txt文件,证明漏洞存在(此命令为window下操作,linux下修改文件路径,暂未测试)。
前提:
需要JRE 1.7或以上版本运行。下面的命令是在安装JRE 1.7的机器上运行。
测试jar下载地址:http://download.csdn.net/detail/gongzi2311/9434503
②、解决
1、 替换java包解决应用层面问题。方法是使用官方提供的4.4.1 版本commons-collections4-4.1.jar包替换应用lib目录下的commons-collections.jar,再重启应用。
2、解决中间件层面问题。
方法一:升级weblogic补丁包,升级weblogic 10.3.6.12的补丁包p22248372_1036012_Generic.zip,直接安装补丁即可,但不支持10.3.6.12之前的版本,如果是老版本,先升级到 10.3.6.12再打补丁,或要用方法二。
方法二:删除特定文件。 找到..\weblogic\Middleware\modules\com.bea.core.apache.commons.collections_3.2.0.jar 并打开,jar 包 内 org/apache/commons/collections/functors/InvokerTransformer.class文件,不要直接解压缩后打开再重新包,这样会有问题。要直接用压缩工具软件打开后直接删除。特别注意如果集群环境,要全部停掉再执行此操作才有效,否则会被缓存的文件覆盖回原始包。
相关文章推荐
- weblogic Java反序列化漏洞测试和解决
- weblogic反序列化漏洞测试与解决
- Java反序列化漏洞之Weblogic、Jboss利用之payload生成工具
- Weblogic Java反序列化漏洞修复2
- Weblogic Java反序列化漏洞修复3
- weblogic打补丁修复JAVA反序列化漏洞
- Java反序列化漏洞之weblogic本地利用实现篇
- weblogic服务器部署web代理修复weblogic的JAVA反序列化漏洞
- java 序列化ObjectOutputStream 同一文件追加写对象问题的解决
- weblogic中使用commons-lang包报java.lang.NoSuchMethodError解决办法
- 关于将Java中序列化对象写入byte[]遇到的一些问题及解决方法
- weblogic中使用java.lang.NoSuchMethodError解决办法
- 何解决Java安全漏洞
- Java 序列化和反序列化工具类并解决StreamCorruptedException问题
- java.lang.OutOfMemoryError: Java heap space 解决方法转测试可用
- 对protostuff和java序列化的小测试
- 使用loadrunner Java Vuser协议进行性能测试时场景中报Error: Compilation process failed.解决方法
- weblogic java.lang.OutOfMemoryError PermGen space及其解决方法
- 执行Android JUnit测试出现java.net.SocketException: Permission denied的解决方法
- Junit单测代码中java序列化失败的解决