云服务安全-腾讯云(TencentCloud) 对象存储(COS)安全(2) SecretId/SecretKey泄露

用户身份凭证(签名)泄露

RESTful API

一个根据 http 协议进行匿名性的资源操作的接口

看看 Kimi 是这样解释的:

1. 什么是 RESTful API?
RESTful API 是一种基于 HTTP 协议的网络接口,用于构建和访问网络应用程序。它基于 REST 架构风格,遵循以下核心原则:
无状态(Stateless):每个请求从客户端到服务器都包含所有必要的信息来理解和处理请求。服务器不会保存任何客户端请求之间的状态信息。
统一接口(Uniform Interface):所有资源通过统一的接口进行访问和操作,通常使用标准的 HTTP 方法(如 GET、POST、PUT、DELETE 等)。
资源导向(Resource-Oriented):系统中的所有内容都被抽象为资源,每个资源都有一个唯一的资源标识符(URI)。
超媒体作为应用状态的引擎(HATEOAS):客户端通过服务器提供的超链接动态发现可用的动作和资源。

产生泄露的情况

通过 RESTful API 对对象存储(Cloud Object Storage,COS)可以发起 HTTP 匿名请求或 HTTP 签名请求。匿名请求一般用于需要公开访问的场景,例如托管静态网站;此外,绝大部分场景都需要通过签名请求完成。 签名请求相比匿名请求,多携带了一个签名值,签名是基于密钥(SecretId/SecretKey)和请求信息加密生成的字符串。SDK 会自动计算签名,您只需要在初始化用户信息时设置好密钥,无需关心签名的计算;对于通过 RESTful API 发起的请求,需要按照签名算法计算签名并添加到请求中。 –摘自官方文档

腾讯云用户签名的参数为 SecretId / SecretKey (si/sk)

如果部署的服务,或者一些其他的应用不慎将 si/sk 泄露,将可能导致账户的控制台直接被接管的高危情况

Github 源码/配置文件 泄露

有些企业或组织会将自己的开源项目发布到 GitHub,如果未作脱敏处理,直接 push 上去,一些和后端相关的配置文件很可能直接配置有相应的 si/sk (也可能是其他厂商云服务,这个泄露点还是挺通用的)

APP/小程序逆向反编译源码泄露

小程序逆向有专门的工具一把梭,此处不做重点展开说(

对于app和小程序如果获取到源码,泄露原理同上,都是一样的原因,直接硬编码配置进代码,被获取到了

错误使用 SDK 泄露凭证

SDK 是一套由腾讯云提供的工具和库,用于帮助开发者快速集成和使用腾讯云的各项服务

代码调试时不是从服务器端获取签名字符串,而是从客户端获取硬编码的签名字符串

第三方组件配置不当导致的 si/sk 泄露

eg:/actuator/heapdump堆转储文件泄露SecretId/SecretKey

explains:

/actuator/heapdump 是 Spring Boot Actuator 提供的一个端点。

分开解释一下:

Spring Boot Actuator 是 Spring Boot 提供的一个用于监控和管理 Spring Boot 应用程序的工具。它通过一系列的“端点”(Endpoints),提供了对应用程序运行时状态的访问和操作能力。这些端点可以暴露应用程序的健康状态、配置信息、度量数据等。

简单来说,Actuator 是一个用于帮助开发者和运维人员监控和管理 Spring Boot 应用程序的工具。

那端点是啥捏?

在 Spring Boot Actuator 中,端点 是一个可以被访问的资源,通常通过 HTTP 接口暴露。每个端点都有一个特定的路径(如 /actuator/health/actuator/metrics 等),用于提供应用程序的某种运行时信息或操作能力。

例如:

  • /actuator/health:用于检查应用程序的健康状态。
  • /actuator/metrics:用于获取应用程序的性能指标。
  • /actuator/env:用于查看应用程序的环境配置。

而我们所说的/actuator/heapdump 是 Spring Boot Actuator 提供的一个端点,用于生成当前 Java 虚拟机(JVM)堆内存的快照(即堆转储文件)。这个文件通常用于性能分析和故障排查

堆转储文件是一个包含 JVM 堆内存状态的快照,它记录了当前内存中所有对象的信息,包括对象的大小、引用关系等。如果在应用程序的内存中存储了敏感信息(如云服务的凭证SecretIdSecretKey),这些信息也会被包含在堆转储文件中。如果攻击者能够访问到这个文件,就可以从中提取出敏感信息。

评论

  1. 藤野步
    1 年前
    2025-3-22 0:14:08

    好厉害,加油加油

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇