您的位置:首页 > 编程语言 > Java开发

"Java 反序列化"过程远程命令执行漏洞

2016-02-29 00:00 519 查看
一、漏洞描述

国外 FoxGlove 安全研究团队于2015年11月06日在其博客上公开了一篇关于常见 Java 应用如何利用反序列化操作进行远程命令执行的文章。原博文所提到的 Java 应用都使用了 Apache Commons Collections 这个库,并且都存在一个序列化对象数据交互接口能够被访问到。针对每个应用,博文都提供了相应的分析和验证代码来说明 Java 应用存在远程命令执行的普遍性。

二、漏洞危害

机器上一旦有使用上述应用,即处于“裸奔”状态,黑客可随时利用此漏洞执行任意系统命令,完全控制机器,破坏或窃取机器上的数据。

三、已确认被成功利用的软件及系统

使用了 Apache Commons Collections 这个库的应用理论上都受到漏洞影响。目前已被证实受影响的应用:

WebSphere

WebLogic

JBoss

Jenkins

OpenNMS

四、建议修复方案

官方尚未为此漏洞发布补丁,所以无法通过应用升级等方法修复漏洞。

临时解决方案:

1、使用 SerialKiller 替换进行序列化操作的 ObjectInputStream 类。

2、在不影响业务的情况下,临时删除掉项目里的 "org/apache/commons/collections/functors/InvokerTransformer.class" 文件。

3、把受漏洞影响的应用访问路径进行隐藏,如改成随机生成的字符串。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: