惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

aimingoo的专栏
aimingoo的专栏
Jina AI
Jina AI
WordPress大学
WordPress大学
Recent Announcements
Recent Announcements
G
Google Developers Blog
I
InfoQ
H
Hackread – Cybersecurity News, Data Breaches, AI and More
Google DeepMind News
Google DeepMind News
P
Proofpoint News Feed
MyScale Blog
MyScale Blog
M
MIT News - Artificial intelligence
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
C
Check Point Blog
J
Java Code Geeks
T
Tailwind CSS Blog
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Microsoft Security Blog
Microsoft Security Blog
MongoDB | Blog
MongoDB | Blog
V
Visual Studio Blog
人人都是产品经理
人人都是产品经理
量子位
A
About on SuperTechFans
D
DataBreaches.Net
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知

国光

国光的 Kindle(第八代)基础折腾记录 飞牛 fnOS NVIDIA Tesla P4 vGPU 驱动教程分享 手把手带你打造一个媲美 macOS 的 Linux 生产力系统 国光的 Ubuntu KDE Wayland 桌面美化记录(弃坑!) 国光的 Ubuntu Hyprland 桌面优化记录(弃坑!) 国光的 啊切儿 Linux 优化记录(弃坑!) 从文件读取到 getshell 的一次细节满满的渗透 AI 对抗研究之「实时换脸」 ARM MacBook 中如何优雅的调试 Android APP 无公网 IPv4 云主机上线对方电脑 国光的 macOS Ventura 13 软件清单 ChromeBox 小主机黑苹果安装及双系统引导教程 Kali 2023.2 安装 Parallel Tools 18疑难解答 Asus Chromebox 3 CN65 极致性价比小主机黑苹果成果分享 国光的 macOS Ventura 13 优化配置(基于 ARM 平台) 国光 2023 年中全能生产力(游戏)的黑苹果装机方案 【全球首发】VMware ESXi 8.X 黑苹果安装优化教程 国光的 PVE 生产环境配置优化记录 关于我博客又被黑这件事
从 js map 泄露到接管 OSS 对象存储
国光 · 2024-05-22 · via 国光

现在 OSS对象存储应用广泛,但开发者安全意识普遍较低,方便之余的同时也会随之带来一些安全风险。虽然本文的场景不是那种 APP 或者源码里面硬编码泄露的 AK 和 SK ,敏感信息虽然都放在了后端服务器,但是还是一点点通过信息收集逐步沦陷。

全文简介

现在 OSS对象存储应用广泛,但开发者安全意识普遍较低,方便之余的同时也会随之带来一些安全风险。虽然本文的场景不是那种 APP 或者源码里面硬编码泄露的 AK 和 SK ,敏感信息虽然都放在了后端服务器,但是还是一点点通过信息收集逐步沦陷。

薄弱域名

对 xxx 小程序进行测试,发现未登录是没法交互的,现在很多小程序都是这样,不登录啥也看不到啊!

不过好在小程序这些解包还是很方便的,我们尝试解包分析小程序,居然发现了测试环境的域名信息:

image-20240521170900640

域名拓展

根据这个域名解析的 IP 使用 fofa 来搜索资产很快找到了这个小程序的一个后端网址信息:

image-20240521171057194

好家伙,还是需要登录才可以,我们又被拦在门外了!

前端泄露

但是作为一个专业的渗透测试工程师,是不能放过任意一个细节的,好消息我们真的发现了前段的 js.map 泄露文件:

image-20240521171411090

虽然被注释了,但是开发者真的没有删除哎:

image-20240521171821940

恢复源码

使用 reverse-sourcemap 项目:https://github.com/davidkevork/reverse-sourcemap

来恢复出 Vue 的源码,可以帮助我们进一步分析网站的一些后端接口:

代码审计

其实也不是严格的代码审计啦,就简简单单看看前端接口的一些逻辑。

代码审计发现系统应该是存在 OSS 上传服务的,所用的服务器是阿里云的 OSS,也找到了对应的接口信息:

OSS 的 KEY 和 Secret 推测是后端写死的,我们通过前端代码无法直接查看,存放 OSS 这些敏感配置的接口为: /Backend/Common/Common/uploadOssData 这和之前我们调试小程序,发现的敏感配置接口也对得上了:

image-20240521172324703

通过对 index.js 代码阅读审计,可知提交的数据包需要:timestamp、nonce 随机字符串和 sign 签名,其中 sign 签名就是上面几个条件的 md5 的大写:

接口交互

所以我们可以自己构造 POST 接口和这个 uploadOssData 接口交互:

image-20240521172444961

成功交互了,提示文件名称不能为空,但是尝试添加 file 和 filename 均失败了!

继续回到小程序调试部分,发现这个文件名参数应该可能就是 name !!!

获取配置

什么!我们居然真的成功和接口交互,拿到了阿里云OSS 非常关键的 access_key_id 和 access_key_secret 了!

其中还有 STS Token ,这是一个具有时效性的 key,这里返回的信息默认是被转义了,我们手动将 \/ 替换成 / 即可。

接管存储

使用阿里云官方的 OSS 浏览器:

成功接管了很多个对象存储 bucket,这样 OSS 里面的文件均可以增删改查:

信息收集

发现上海的 ECS 系统备份文件,大小为 18GB 多 :

还有一些数据库相关文件:

以及一些生产服务器的日志相关文件:

image-20240521173321876

深入利用

其实这里没法深入利用了,但是正常情况下我们一般是需要试试看阿里云的 OSS Key 是不是可以顺便接管服务器,因为正常开发者没有遵循权限最小化原则,往往是不会单独给 OSS 配置最小化的 AK 和 SK 的,大多数情况下都是可以成功的,国光我也历史上使用这个方法接管了不少阿里云服务器。

因为我们这里的 OSS Key 还有 STS Token,所以传统的行云管家等工具是没法直接测试利用的。最后国光这里使用

https://github.com/iiiusky/alicloud-tools 项目来尝试深入利用:

可以正常交互查询:

只不过泄露的 SAK ,SSK 以及 STS Token 居然真的遵循了最小化原则,并没有 ECS 服务器收到牵连:

好的本次渗透测试就到此结束了,虽然没有直接接管到服务器,但也是一个经典的信息收集逐步深入的素材了,就发公众号分享给大家把,就这样,溜了溜了。

对了,对渗透感兴趣的出学者们,欢迎扫描了解一下文章中最下面的安全课程哦~

支持一下

本文可能实际上也没有啥技术含量,但是写起来还是比较浪费时间的,在这个喧嚣浮躁的时代,个人博客越来越没有人看了,写博客感觉一直是用爱发电的状态。如果你恰巧财力雄厚,感觉本文对你有所帮助的话,可以考虑打赏一下本文,用以维持高昂的服务器运营费用(域名费用、服务器费用、CDN费用等)

国光我还重写打赏页面 用以感谢 支持我的朋友,详情请看 打赏列表 | 国光


亲爱的读者们,在这个信息爆炸的时代,网络安全的重要性日益凸显,但同时,这个行业的挑战和误解也随之而来。作为一名网络安全的忠实守护者,我有幸在这个领域深耕多年,见证了无数技术的进步与变迁。

我始终坚信,知识的力量能够改变世界。因此,我用心制作了网络安全系列课程,不仅希望传授给大家宝贵的知识,更希望激发大家对网络安全的热爱和责任感。现在,我正准备推出第二期课程,并更新备受期待的内网安全教程,这是我对网络安全教育事业的承诺和热爱。

然而,正如大家所知,网络安全行业充满了不确定性和挑战。攻击门槛也在不断提高,即便是有 10 年经验的安全专家,有时也可能无法及时发现最新的漏洞,甚至在外人眼中,他们的努力和成就可能与实习生无异。但我相信,真正的价值和成就,是在于我们对知识的执着追求和对技术的不懈探索。

在完成这些课程后,我将暂时离开网络安全领域,转向其他行业。这不仅是一个艰难的决定,也是一个新的开始。但在此之前,我希望能够完成我的心愿,为大家带来更高质量的课程。

如果您对我的课程感兴趣,或者认同我对网络安全教育的执着和热情,请考虑购买我的课程,支持我的工作。您的支持不仅是对我努力的认可,更是对网络安全教育事业的一份贡献。

感谢每一位读者的陪伴和支持,让我们共同守护这个数字世界的安全!