记一次梦游渗透从jmx到rce
2022-12-12 12:34:30 Author: 白帽子左一(查看原文) 阅读量:24 收藏

扫码领资料

获网安教程

免费&进群

渗透过程

发现了一个集成的环境,开了jmx服务

service:jmx:rmi:///jndi/rmi://1.1.1.157:9003/jmxrmi jconsole连上去之后发现一些敏感的账号密码

在http://localhost:8983/solr 发现了solr,但是历史洞都打不了,log4j是高版本的jdk,并且不出网,所以整个思路就围绕在jmx的利用上。

jmx已知的利用方式有javax.management.loading.MLet加载远程类rce,但是目标不出网必须用其他方式了。

考虑到tomcat,想起来陈师傅写过的《几个Jolokia RCE 的“新”利用方式》

通过tomcat的createStandardHost配合AccessLogValue进行rce。

利用如下

先创建Host为test.com Catalina:type=Host,host=test.com

然后tomcat的valve中就有了test.com的部署之后的结果

修改host为test.com之后就可以访问根目录下的任意文件

那么只需要写入一个jsp文件就可以getshell了。写入文件需要用AccessLogValue

修改AccessLogValue的属性

suffix .jspprefix aafileDateFormat .yyyy-MM-ddpattern %h %l %u %t "%r" %s %b "%{Referer}i" "%{User-Agent}i"directory /tmp/

最终文件路径为/tmp/aa.2022-09-20.jsp

pattern会进行格式化%{User-Agent}i表示引用请求头中User-Agent字段

然后发包写入日志文件

然后访问shell即可

如果访问shell不存在可以执行一下AccessLogValve#rotate()重新格式化日志文件名,确保日志文件名修改为我们想要的值。

打完记得把配置属性改回去,不然日志文件会越来越大,访问shell比较卡。

看起来简单,但是实际上涉及的知识点很多。比如陈师傅的文章中是在Jolokia中利用,jmx和Jolokia大同小异。另外陈师傅提到的jfr和vmLog写文件在实际环境中不存在,所以用到了spring4shell中的一环即AccessLogValue。

具体不详细写了,直接看参考链接吧。

  1. https://articles.zsxq.com/id_h4mjj2ktw352.html

  2. https://sec.lz520520.com/2022/04/714/

  3. https://xz.aliyun.com/t/11450

  4. https://www.cnblogs.com/0x28/p/15685164.html

作者:通过原文地址:https://y4er.com/posts/from-jmx-to-rce/

声明:⽂中所涉及的技术、思路和⼯具仅供以安全为⽬的的学习交流使⽤,任何⼈不得将其⽤于⾮法⽤途以及盈利等⽬的,否则后果⾃⾏承担。所有渗透都需获取授权

@
学习更多渗透技能!体验靶场实战练习

hack视频资料及工具

(部分展示)

往期推荐

【精选】SRC快速入门+上分小秘籍+实战指南

爬取免费代理,拥有自己的代理池

漏洞挖掘|密码找回中的套路

渗透测试岗位面试题(重点:渗透思路)

漏洞挖掘 | 通用型漏洞挖掘思路技巧

干货|列了几种均能过安全狗的方法!

一名大学生的黑客成长史到入狱的自述

攻防演练|红队手段之将蓝队逼到关站!

巧用FOFA挖到你的第一个漏洞

看到这里了,点个“赞”、“再看”吧

文章来源: http://mp.weixin.qq.com/s?__biz=MzI4NTcxMjQ1MA==&mid=2247592025&idx=1&sn=6649bc116976f8a25013f88133f9fac6&chksm=ebeb2174dc9ca8622fa9a4f39ffe052ad47d5270a3656d889bbdbc9143fa97d54f8ea1aea1ed#rd
如有侵权请联系:admin#unsafe.sh