【漏洞通告】WebLogic多個遠端代碼執行漏洞通告
原創 威脅對抗能力部 [綠盟科技安全情報](javascript:void(0)???? 今天
通告編号:NS-2020-0026
2020-04-15
TAG: | WebLogic、CVE-2020-2801、CVE-2020-2883、CVE-2020-2884、CVE-2020-2915 |
---|---|
漏洞等級: | 高,攻擊者利用此類漏洞,可實作遠端代碼執行。 |
應急等級: | 黃色 |
版本: | 1.0 |
漏洞概述
中原標準時間4月15日,Oracle官方釋出了2020年4月關鍵更新檔更新公告CPU(Critical Patch Update),修複了397個不同程度的漏洞。其中包括三個針對Weblogic的嚴重漏洞(CVE-2020-2801、CVE-2020-2883、CVE-2020-2884)和一個Oracle Coherence遠端代碼執行漏洞(CVE-2020-2915),使用了Oracle Coherence 庫的産品受此漏洞影響。本次四個漏洞均為T3協定存在缺陷、未經身份驗證的攻擊者可通過此類漏洞實作遠端代碼執行,CVSS評分均為9.8,利用複雜度低。建議使用者盡快采取措施,對上述漏洞進行防護。
CVE-2020-2801複現成功截圖:

參考連結:
https://www.oracle.com/security-alerts/cpuapr2020.html
SEE MORE →
2影響範圍
WebLogic受影響版本
- 10.3.6.0.0
- 12.1.3.0.0
- 12.2.1.3.0
- 12.2.1.4.0
Coherence****受影響版本
- 3.7.1.0
注:在WebLogic Server 11g Release(10.3.4)及以上版本的安裝包中預設內建了Oracle Coherence 庫。
3漏洞檢測
3.1 本地檢測
可使用如下指令對Weblogic版本和更新檔安裝的情況進行排查。
$ cd /Oracle/Middleware/wlserver_10.3/server/lib$ java -cp weblogic.jar weblogic.version
在顯示結果中,如果沒有更新檔安裝的資訊,則說明存在風險,如下圖所示:
3.2 遠端檢測
3.2.1 Nmap服務檢測
Nmap工具提供了Weblogic T3協定的掃描腳本,可探測開啟T3服務的Weblogic主機。指令如下:
nmap -n -v -Pn –sV [主機或網段位址] -p7001,7002 --script=weblogic-t3-info.nse
如下圖紅框所示,目标開啟了T3協定且Weblogic版本在受影響範圍之内,如果相關人員沒有安裝官方的安全更新檔,則存在漏洞風險。
3.2.2 網際網路資産排查
綠盟科技威脅情報中心(NTI)提供對網際網路開放網絡資産資訊檢視的功能,企業使用者可通過在NTI上檢索自有資産資訊端口開放情況,檢視企業資産是否受此漏洞影響。
4漏洞防護
4.1 更新檔更新
Oracle目前已釋出更新檔修複了上述漏洞,請使用者參考官方通告及時下載下傳受影響産品更新更新檔,并參照更新檔安裝包中的readme檔案進行安裝更新,以保證長期有效的防護。
注:Oracle官方更新檔需要使用者持有正版軟體的許可賬号,使用該賬号登陸https://support.oracle.com後,可以下載下傳最新更新檔。
4.2 臨時緩解措施
如果使用者暫時無法安裝更新更新檔,可通過下列措施對漏洞進行臨時防護:
使用者可通過控制T3協定的通路來臨時阻斷針對利用T3協定漏洞的攻擊。Weblogic Server 提供了名為 weblogic.security.net.ConnectionFilterImpl 的預設連接配接篩選器,此連接配接篩選器接受所有傳入連接配接,可通過此連接配接篩選器配置規則,對T3及T3s協定進行通路控制,詳細操作步驟如下:
\1. 進入Weblogic控制台,在base_domain的配置頁面中,進入“安全”頁籤頁面,點選“篩選器”,進入連接配接篩選器配置。
\2. 在連接配接篩選器中輸入:weblogic.security.net.ConnectionFilterImpl,參考以下寫法,在連接配接篩選器規則中配置符合企業實際情況的規則:
127.0.0.1 * * allow t3 t3s本機IP ** allow t3 t3s允許通路的IP * * allow t3 t3s * * * deny t3 t3s
連接配接篩選器規則格式如下:target localAddress localPort action protocols,其中:target 指定一個或多個要篩選的伺服器。localAddress 可定義伺服器的主機位址。(如果指定為一個星号 (*),則傳回的比對結果将是所有本地 IP 位址。)localPort 定義伺服器正在監聽的端口。(如果指定了星号,則比對傳回的結果将是伺服器上所有可用的端口)。action 指定要執行的操作。(值必須為“allow”或“deny”。)protocols 是要進行比對的協定名清單。(必須指定下列其中一個協定:http、https、t3、t3s、giop、giops、dcom 或 ftp。) 如果未定義協定,則所有協定都将與一個規則比對。
\3. 儲存後若規則未生效,建議重新啟動Weblogic服務(重新開機Weblogic服務會導緻業務中斷,建議相關人員評估風險後,再進行操作)。以Windows環境為例,重新開機服務的步驟如下:
- 進入域所在目錄下的bin目錄,在Windows系統中運作stopWebLogic.cmd檔案終止weblogic服務,Linux系統中則運作stopWebLogic.sh檔案。
- 待終止腳本執行完成後,再運作startWebLogic.cmd或startWebLogic.sh檔案啟動Weblogic,即可完成Weblogic服務重新開機。
若參考上述操作配置了連接配接篩選器後,導緻Weblogic無法啟動,可參考“附錄A Weblogic服務恢複”章節,及時進行業務恢複。
附錄AWebLogic服務恢複
- 控制台恢複
在服務重新開機前,可進入Weblogic控制台删除相關配置,詳細步驟如下:
\1. 依次點選“base_domain”—> “安全”—>“篩選器”
\2. 将原有配置清空,點選儲存。
\3. 點選“檢視更改和重新啟動”,進入“重新啟動核對清單”,勾選“AdminServer(管理)”,點選“重新啟動”按鈕。
- 配置檔案恢複
配置完連接配接篩選器後,配置資訊會儲存在“\Oracle\Middleware\user_projects\domains\base_domain\config\config.xml”檔案中。用文本編輯器打開上述檔案,找到如下配置内容後删除: