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

一、漏洞描述

国 外 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、把受漏洞影响的应用访问路径进行隐藏,如改成随机生成的字符串。

时间: 2024-10-04 17:13:25

"Java 反序列化"过程远程命令执行漏洞的相关文章

WebLogic “Java 反序列化”过程远程命令执行

详细信息: https://www.seebug.org/vuldb/ssvid-89726 说明: 反序列化是指特定语言中将传递的对象序列化数据重新恢复为实例对象的过程,而在这个过程中会执行一系列的字节流解析和对象实例化操作用于恢复之前序列化时的对象 原文地址:https://www.cnblogs.com/anbus/p/9833015.html

【知道创宇404实验室】Oracle WebLogic远程命令执行漏洞预警

2019年04月17日,国家信息安全漏洞共享平台(CNVD)官方发布安全公告 http://www.cnvd.org.cn/webinfo/show/4989 称Oracle WebLogic wls9-async组件存在反序列化远程命令执行漏洞,***者可利用该漏洞,可在未授权的情况下远程执行命令.随后知道创宇404实验室启动应急流程,通过分析后复现了该漏洞并确定该漏洞影响启用了wls9_async_response.war及wls-wsat.war组件的所有Weblogic版本(包括最新版本

struts2远程命令执行漏洞S2-045

Apache Struts 2被曝存在远程命令执行漏洞,漏洞编号S2-045,CVE编号CVE-2017-5638,在使用基于Jakarta插件的文件上传功能时,有可能存在远程命令执行,导致系统被黑客入侵,漏洞评级为:高危. 漏洞详情:恶意用户可在上传文件时通过修改HTTP请求头中的Content-Type值来触发该漏洞,进而执行系统命令. 风险等级:高风险. 漏洞风险:黑客通过利用漏洞可以实现远程命令执行. 影响版本:Struts 2.3.5 - Struts 2.3.31, Struts 2

Apache Solr 远程命令执行漏洞(CVE-2019-0193)

介绍:Apache Solr 是一个开源的搜索服务器.Solr 使用 Java 语言开发,主要基于 HTTP 和 Apache Lucene 实现. 漏洞原因:此次漏洞出现在Apache Solr的DataImportHandler,该模块是一个可选但常用的模块,用于从数据库和其他源中提取数据.它具有一个功能,其中所有的DIH配置都可以通过外部请求的dataConfig参数来设置.由于DIH配置可以包含脚本,因此攻击者可以通过构造危险的请求,从而造成远程命令执行. 参考文章:https://xz

CVE-2019-0193 远程命令执行-漏洞复现

0x01 漏洞简介 Apache Solr 是一个开源的搜索服务器.Solr 使用 Java 语言开发,主要基于 HTTP 和 Apache Lucene 实现.此次漏洞出现在Apache Solr的DataImportHandler,该模块是一个可选但常用的模块,用于从数据库和其他源中提取数据.它具有一个功能,其中所有的DIH配置都可以通过外部请求的dataConfig参数来设置.由于DIH配置可以包含脚本,因此攻击者可以通过构造危险的请求,从而造成远程命令执行. 0x02 环境搭建 我这里使

Apache SSI 远程命令执行漏洞

漏洞原理:在测试任意文件上传漏洞的时候,目标服务端可能不允许上传php后缀的文件.如果目标服务器开启了SSI与CGI支持,我们可以上传一个shtml文件,并利用<!--#exec cmd="id" -->语法执行任意命令. 漏洞复现:shtml包含有嵌入式服务器方包含命令的文本,在被传送给浏览器之前,服务器会对SHTML文档进行完全地读取.分析以及修改.正常上传PHP文件是不允许的,我们可以上传一个shell.shtml文件: <!--#exec cmd="

Struts2再爆远程命令执行漏洞![W3bSafe]Struts2-048 Poc Shell及防御修复方案抢先看!

漏洞概述 Apache Struts是美国阿帕奇(Apache)软件基金会负责维护的一个开源项目,是一套用于创建企业级Java Web应用的开源MVC框架.在Struts 2.3.x 系列的 Showcase 应用中演示Struts2整合Struts 1 的插件中存在一处任意代码执行漏洞.当你的应用使用了Struts2 Struts1的插件时,可能导致不受信任的输入传入到ActionMessage类中导致命令执行. 解决方案 向ActionMessage传递原始消息时使用类似下面的资源键值,不要

Supervisord 远程命令执行漏洞(CVE-2017-11610)

Supervisor是使用Python 开发的进程管理程序,一般使用命令行进行管理,当然也能通过web接口图形化管理服务.在配置了web接口后,服务器会启动一个XMLRPC服务器,端口为9001,默认配置接口是不需要密码访问的,管理员也可设置为密码访问.利用本漏洞,在获取该接口的访问权限后,远程攻击者可发送一段精心构造的请求,导致可在服务器执行任意代码. 影响版本:Supervisor 3.1.2 <= Version <= 3.3.2 已修复版本:Supervisor 3.3.3.Super

【原创】Weblogic 反序列化远程命令执行漏洞GetShell&amp;Cmd Exploit

这工具写到半夜四点,做个记录. 因为杀伤力过大,我还是打算过段时间再发布吧:(