缝缝补补的WebLogic:绕过的艺术

访客5年前黑客工具1425

前语
现在Weblogic在全球的使用量占居前列,据统计,在全球范围内对互联网敞开Weblogic服务的财物数量多达35382台,其间归属我国区域的财物数量为10562台。假如迸发一个Weblogic高危缝隙,那将会给我国的许多用户带来巨大的灾祸。
本文首要介绍了近五年迸发的Weblogic反序列化的高危缝隙,一次又一次的修补,一次又一次的绕过,缝隙发掘者和缝隙防御者之间的博弈从未中止过,而且这种博弈在往后的日子中也将会愈演愈烈。
0×01 Weblogic简介
Weblogic是美国Oracle公司出品的一个使用服务器(application server),切当的说是一个根据Java EE架构的中间件,是用于开发、集成、布置和办理大型分布式Web使用、 *** 使用和 数据库使用的Java使用服务器。
Weblogic将Java的动态功用和Java Enterprise规范的安全性引进大型 *** 使用的开发、集成、布置和办理之中,是商业市场上首要的Java(Java EE)使用服务器软件之一,也是世界上榜首个成功商业化的Java EE使用服务器,具有可扩展性、快速开发、灵敏、牢靠等优势。
在功用性上,Weblogic是Java EE的万能使用服务器,包括EJB 、 *** P、servlet、JMS等,是商业软件里排名榜首的容器( *** P、servlet、EJB等),并供给其他东西(例如Java编辑器),因而也是一个归纳的开发及运转环境。
在扩展性上,Weblogic Server凭仗其超卓的群集技能,具有处理要害Web使用体系问题所需的功能、可扩展性和高可用性。Weblogic Server既完成了网页群集,也完成了EJB组件群集,而且不需要任何专门的硬件或操作体系支撑。网页群集能够完成通明的仿制、负载平衡以及表明内容容错。无论是网页群集,仍是组件群集,关于电子商务解决方案所要求的可扩展性和可用性都是至关重要的。
现在Weblogic在全球的使用量也占居前列,据统计,在全球范围内对互联网敞开Weblogic服务的财物数量多达35382台,美国和我国的Weblogic的使用量挨近Weblogic总使用量的70%,其间归属我国区域的财物数量为10562台。

这样的话,假如迸发一个Weblogic高危缝隙,那将会给我国的许多用户带来巨大的灾祸。
0×02 高危缝隙介绍
Weblogic缝隙有许多,可是五年之前的大多数缝隙仅仅小打小闹,对服务器并不能形成巨大的影响。但是,自从2019年11月6日,FoxGlove Security 安全团队的 @breenmachine 在博客中介绍了怎么使用Java反序列化和 Apache Commons Collections 这一根底类库来进犯最新版的 Weblogic、WebSphere、JBoss等干流的Java服务器,而且都能够完成长途代码履行,Weblogic变得不再安全。
道高一尺魔高一丈,伴随着Weblogic补丁的不断发布,各种的绕过办法也是不断地更新。下面介绍一下近5年来让Oracle头痛不已的Weblogic反序列化缝隙。
高危缝隙首要涉及到两个品种:
使用xml decoded反序列化进行长途代码履行的缝隙,例如:CVE-2019-10271,CVE-2019-3506。
使用java反序列化进行长途代码履行的缝隙,例如:CVE-2019-4852、CVE-2019-0638、CVE-2019-3510、CVE-2019-3248、CVE-2019-2628、CVE-2019-2894。
xml decoded反序列化RCE缝隙
1. CVE-2019-3506
此缝隙首要是因为wls组件使用了webservice来处理soap恳求,在weblogic.wsee.jaxws.workcontext.WorkContextServerTube.processRequest办法中,当localHeader1和localHeader2都不为null时,将会把所包括的数据传入weblogic.wsee.jaxws.workcontext.WorkContextTube.readHeaderOld办法。在此办法中,对WorkContextXmlInputAdapter类进行了实例化,并调用WorkContextXmlInputAdapter类的结构办法,经过XMLDecoder()进行反序列化操作。
weblogic.wsee.jaxws.workcontext.WorkContextServerTube.processRequest代码如下图所示:

weblogic.wsee.jaxws.workcontext.WorkContextTube.readHeaderOld代码如下图所示:

weblogic.wsee.workarea.WorkContextXmlInputAdapter代码如下图所示:

CVE-2019-3506 POC
/wls-wsat/CoordinatorPortType
/wls-wsat/RegistrationPortTypeRPC
/wls-wsat/ParticipantPortType
/wls-wsat/RegistrationRequesterPortType
/wls-wsat/CoordinatorPortType11
/wls-wsat/RegistrationPortTypeRPC11
/wls-wsat/ParticipantPortType11
/wls-wsat/RegistrationRequesterPortType11
在上方8个途径中恣意挑选一个途径,将content-type改成text/xml类型,传入payload,即可使用缝隙。
在上方的POC中,闭合的中能够结构任何咱们想要履行的指令。在先后引证java.beans.XMLDecoder、java.lang.ProcessBuilder、java.lang.String之后,便能够在index中设定参数序号,并在string标签中传入想要长途履行的指令。
2. CVE-2019-10271缝隙
CVE-2019-10271是根据CVE-2019-3506缝隙原理根底上,对CVE-2019-3506修正补丁的一次绕过。下图是CVE-2019-3506修正补丁的部分代码:

[1] [2] [3]  黑客接单网

相关文章

云、管、端三重失守,大范围挂马进犯剖析

0x00 源起 从3月5日开端,腾讯反病毒实验室监控到很多闻名软件客户端存在开释下载器病毒的反常数据,预示着或许存在经过挂马方法大规模进犯闻名软件客户端的行为。电脑管家紧迫对相关数据进行剖析排查,终究...

攻破暗盘之拿下吃鸡DNF等游戏垂钓站群

前段时间有个网友给我发了个网址,说找到个专门做垂钓网站的衔接,让我看看,然后就引出了一系列事情。 网址如下:http://mfnyongshihuigui.jiebao8.top 其时也没介意,有天闲...

运用Python CGIHTTPServer绕过注入时的CSRF Token防护

CSRF tokens是服务器生成的一串随机值,其主要作用是防止表单重复提交以及恳求假造进犯。由于该生成值具有随机性,一次性,而且是根据服务器端的前一个恳求生成的,因而黑客简直不可能假造它。 Burp...

VulnHub挑战赛Pipe解题思路

今日我将给我们演示我是怎么处理VulnHub挑战赛这道名为Pipe标题的。 当然CTF玩的便是思路,这篇文章的思路纷歧定是最好的。只是作为抛砖,欢迎我们在文尾下载这道标题来玩! 枚举 PORT    ...

实例解说False盲注根底原理

0×01 前语 false盲注有些时分能够绕过一些WAF,也是简略被忽视的细节。本文的意图在于经过做CTF的一起来学习注入原理,一起也运用到本身的才能。这儿仅仅简略说一些我自己的了解,或许网上有更好的...

PHP的两个特性导致waf绕过注入

1、HPP HTTP参数污染 HTTP参数污染指的是,在URL中提交相同键值的两个参数时,服务器端一般会进行一些处理。比方Apache就要以最终一个参数为准,比方: user.php?id=111&a...