白帽故事 · 2023年12月12日 0

挖掘开发环境隐藏的秘密:一次 OAuth 凭证从泄露到利用的旅程

背景介绍

今天和大家分享在挖掘开发环境时遇到的有趣案例,希望可以给你带来一些启发。

1. 寻找目标

起初,在收集了一系列目标网站的子域名后,在其中发现了一个名为 "dev.[example.com]" 的子域名。这成功引起了我的注意,因为开发环境通常会泄露一些敏感信息。

2. 探索 JavaScript

于是开始分析该子域上的 JavaScript 文件,试图找到一些突破口。很快便发现了一个奇怪的 Base64 编码字符串。

经过解码,获得如下内容:

{
  "username": "redactedUser",
  "password": "redactedPWD"
}

这会不会是用于访问某个 API 的凭证呢?

3. 追踪源头

经过进一步的挖掘,终于在 JavaScript 文件中找到了一处可疑的 API 端点,推测可能是用于 OAuth 认证的凭证。

4. 获取访问令牌

根据推断,开始尝试了如下命令:

curl -X GET "<api-endpoint>/oauth?grant_type=client_credentials" --user "username:password"

file

bingo!成功获得访问令牌,然后顺利地访问到开发环境 API !

5. 漏洞报告

接下来就是将该漏洞报告给了相关人员,目标单位进行了及时响应和修复。并将该漏洞被评为 "Critical 9.8",严重级。

虽然没有赏金奖励,但却深刻体会到开发环境的重要性以及深入挖掘的必要性。