上次更新时间:2026 年 5 月 22 日
本文档针对 Cloud Storage 的数据机密性、完整性和可用性,确定了潜在的攻击媒介和缓解策略。此报告的范围仅限于您的视角,重点关注您可以在 Cloud Storage 环境中管理的风险。
这些威胁模型是基于当前已知的攻击途径、架构假设和发布时系统的指定范围进行的概率评估。这些模型并非详尽无遗,旨在为 Google Cloud 客户的安全和风险评估提供基准,并指导风险降低决策。
针对此服务,我们发现了以下威胁:
- 使用不安全的访问权限配置导致信息泄露
- 利用 IAM 错误配置提升权限
- 使用过多的权限篡改或破坏数据
- 使用配置错误的 Storage Transfer Service 作业渗漏数据
- 因依赖项管理不当而导致数据访问权限丢失
- 通过可观测性不足来混淆活动
- 利用存储在 Cloud Storage 中的遭入侵工件进行供应链投毒
- 使用 Cloud Storage 对象泛洪或出站流量滥用的基于费用的拒绝服务攻击
- 利用 Cloud Storage 对象版本控制滥用行为操纵数据完整性
- 使用由 Cloud Storage 触发的 Dataflow 流水线进行数据渗漏
- 通过在 Cloud Storage 中操纵 IaC 状态来破坏完整性
- 存储在 Cloud Storage 中的启动脚本或引导脚本的提权
- 使用 Cloud Storage 托管的机器学习训练数据的供应链后门
- 使用由 Cloud Storage 中的对象创建触发的扇出工作流进行拒绝服务攻击
- 使用 Cloud Storage 支持的备份流水线进行未经授权的数据移动
- 在混合环境中使用旧版 Cloud Storage ACL 绕过政策
- 利用以 Cloud Storage 为目标的遭入侵 CI/CD 流水线进行数据销毁
- 使用权限过高的紧急情况处理账号未经授权删除了存储桶
- 使用写入 Cloud Storage 的遭入侵的日志记录接收器静默数据渗漏
- 通过集中式 CMEK 撤消功能实现勒索软件防护
- 使用快照或备份导出功能将数据渗漏到 Cloud Storage
威胁详情
以下各部分将分别介绍每种威胁、其表现以及建议的缓解措施。
使用不安全的访问配置披露信息
如果访问权限控制配置不当,存储在 Cloud Storage 对象中的敏感数据可能会暴露给未经授权的方。错误配置访问控制是最常见且影响最大的云安全问题之一。
| STRIDE 类别 | 信息披露 |
|---|---|
| MITRE ATT&CK 策略 | 集合 |
| 玻璃贴纸 |
|
| 缓解措施 |
|
利用 IAM 错误配置进行提权
攻击者如果拥有看似无害的特定 IAM 权限,就可以提升自己的权限,获得更广泛的访问权限,包括对 Cloud Storage 存储分区及其包含的数据的管理控制权。这种威胁会绕过预期的安全状况,并违反最小权限原则。
| STRIDE 类别 | 提权 |
|---|---|
| MITRE ATT&CK 策略 | 提升权限 |
| 玻璃贴纸 |
|
| 缓解措施 |
|
使用过多的权限篡改或破坏数据
如果攻击者拥有足够的权限,就可以更改、损坏或永久删除 Cloud Storage 系统中的数据和配置,从而导致数据完整性和可用性受损。
| STRIDE 类别 | 篡改 |
|---|---|
| MITRE ATT&CK 策略 | 影响 |
| 玻璃贴纸 |
|
| 缓解措施 |
|
使用配置错误的 Storage Transfer Service 作业进行数据渗漏
拥有 storagetransfer.transferjobs.create 或 storagetransfer.transferjobs.update 权限的攻击者可以创建或修改 Storage Transfer Service 作业,以将数据从敏感的 Cloud Storage 存储桶复制到另一个项目中由攻击者控制的存储桶。此攻击媒介可用于静默且持续地渗漏大量数据,绕过可能侧重于 storage.objects.get 等直接 API 调用的典型数据访问监控。
| STRIDE 类别 | 信息披露 |
|---|---|
| MITRE ATT&CK 策略 | 渗漏 |
| 玻璃贴纸 |
恶意创建转移作业:拥有 |
| 缓解措施 |
|
因依赖项管理不当而导致数据访问权限丢失
对关键服务依赖项的攻击或管理不当可能会拒绝合法访问 Cloud Storage 中的数据,即使没有直接入侵存储系统本身,也会导致数据无法访问。
| STRIDE 类别 | 篡改 |
|---|---|
| MITRE ATT&CK 策略 | 影响 |
| 玻璃贴纸 |
|
| 缓解措施 |
|
通过可观测性不足来混淆活动
如果未正确配置审核和监控,攻击者可能会针对 Cloud Storage 资源执行恶意操作,而不会被检测到。如果可观测性不足,攻击者便可隐藏其踪迹,从而妨碍有效的突发事件响应和取证。
| STRIDE 类别 | 否认 |
|---|---|
| MITRE ATT&CK 策略 | 防护规避 |
| 玻璃贴纸 |
|
| 缓解措施 |
|
利用存储在 Cloud Storage 中的遭入侵工件进行供应链投毒
如果攻击者获得对用于存储软件工件(例如二进制文件、容器映像或构建脚本)的 Cloud Storage 存储桶的写入权限(例如 storage.objects.create 或 storage.objects.delete),他们就可以用恶意版本替换合法工件。信任此存储桶中制品的下游 CI/CD 流水线、开发者或最终用户会无意中运行遭入侵的代码,从而导致广泛的供应链攻击。
| STRIDE 类别 | 篡改 |
|---|---|
| MITRE ATT&CK 策略 | 初始访问 |
| 玻璃贴纸 |
|
| 缓解措施 |
|
使用 Cloud Storage 对象泛洪或出站流量滥用进行基于费用的拒绝服务攻击
如果攻击者对可公开写入或安全性较差的存储桶拥有对象创建权限,则可以上传大量小对象,从而导致 A 类操作和存储费用大幅增加。或者,如果攻击者对停用了“请求者付费”功能的存储桶具有读取权限,则可以反复下载大型对象,从而产生过高的网络出站流量费用,并可能因结算限额而影响合法用户的服务可用性。
| STRIDE 类别 | 拒绝服务攻击 |
|---|---|
| MITRE ATT&CK 策略 | 影响 |
| 玻璃贴纸 |
|
| 缓解措施 |
|
利用 Cloud Storage 对象版本控制滥用行为操纵数据完整性
虽然对象版本控制是一项关键的防御措施,但如果攻击者拥有足够的权限(例如 storage.objects.delete 或 storage.objects.create),则可以操纵对象历史记录来破坏数据完整性。他们可以删除对象的当前版本,导致较旧的(可能不正确或存在安全漏洞)版本成为“有效”版本。这可用于还原安全补丁、重新引入 bug 或恢复过时的信息,但由于对象仍然存在,因此不会立即显现出来。
| STRIDE 类别 | 篡改 |
|---|---|
| MITRE ATT&CK 策略 | 影响 |
| 玻璃贴纸 |
|
| 缓解措施 |
|
使用由 Cloud Storage 触发的 Dataflow 流水线进行数据渗漏
如果 Dataflow 流水线配置为在 Cloud Storage 存储桶中创建对象时自动触发,则能够写入该存储桶的攻击者可能会窃取数据。如果 Dataflow 作业的服务账号有权访问其他敏感数据并写入外部位置(例如,另一个 Cloud Storage 存储桶或 BigQuery),攻击者可以精心制作一个输入文件,使流水线读取敏感数据并将其写入攻击者控制的位置。
| STRIDE 类别 | 信息披露 |
|---|---|
| MITRE ATT&CK 策略 | 渗漏 |
| 玻璃贴纸 |
跨项目数据渗漏:攻击者将文件上传到触发存储桶。Dataflow 流水线以具有特权的服务账号运行,从其他项目读取敏感数据,并将输出写入攻击者输入文件中指定的公开 Cloud Storage 存储桶。 |
| 缓解措施 |
|
通过在 Cloud Storage 中操纵 IaC 状态来破坏完整性
如果使用 Cloud Storage 存储桶来存储基础设施即代码 (IaC) 状态文件(例如 Terraform 中的 terraform.tfstate 文件),那么拥有状态存储桶写入权限的攻击者可以篡改状态文件。通过修改状态,攻击者可以在下次运行 IaC 时注入恶意资源、更改关键安全配置或导致资源被销毁。这种篡改会绕过代码审核流程,因为攻击目标是状态,而不是代码本身。
| STRIDE 类别 | 篡改 |
|---|---|
| MITRE ATT&CK 策略 | 影响 |
| 玻璃贴纸 |
安全控制停用:攻击者更改状态文件,以显示防火墙规则或 IAM 允许政策的不准确状态。下一次 Terraform 应用可能无法正确应用预期的安全配置。 |
| 缓解措施 |
|
存储在 Cloud Storage 中的启动或引导脚本的提权
如果 Compute Engine 实例或 GKE 节点从 Cloud Storage 存储桶拉取其启动或引导脚本,则具有该存储桶写入权限的攻击者可以修改这些脚本。由于这些脚本通常以高权限运行(例如,在虚拟机上以 root 身份运行或使用节点的服务账号运行),攻击者可以注入命令来创建后门用户、窃取元数据和访问令牌,或安装恶意软件。通过这些操作,攻击者可以将权限从 Cloud Storage 对象写入权限升级为对计算资源的完全控制权限。
| STRIDE 类别 | 提权 |
|---|---|
| MITRE ATT&CK 策略 | 提升权限 |
| 玻璃贴纸 |
|
| 缓解措施 |
|
使用 Cloud Storage 托管的机器学习训练数据的供应链后门
如果攻击者对包含机器学习模型训练数据的 Cloud Storage 存储桶拥有写入权限,则可能会毒化数据集。通过注入精心设计的恶意数据,攻击者可以在训练后的模型中创建后门。这种后门可能会导致模型错误地对特定输入进行分类,从而使攻击者受益,同时在一般数据上正常运行以躲避检测。例如,模型可能会批准欺诈性交易或绕过安全检查。
| STRIDE 类别 | 篡改 |
|---|---|
| MITRE ATT&CK 策略 | 影响 |
| 玻璃贴纸 |
|
| 缓解措施 |
|
利用由 Cloud Storage 中的对象创建触发的扇出工作流进行拒绝服务攻击
如果某个工作流(例如 Cloud Run Functions 或 Workflows)配置为触发 Cloud Storage 存储桶中的对象创建并执行资源密集型任务,则具有 storage.objects.create 权限的攻击者可以发起拒绝服务攻击。通过在短时间内上传大量文件(称为扇出触发),攻击者可以导致下游服务快速伸缩,消耗过多的资源,达到并发或伸缩限制,并产生巨额费用,最终导致合法用户无法使用服务。
| STRIDE 类别 | 拒绝服务攻击 |
|---|---|
| MITRE ATT&CK 策略 | 影响 |
| 玻璃贴纸 |
|
| 缓解措施 |
|
使用 Cloud Storage 支持的备份流水线进行未经授权的数据移动
备份和灾难恢复 (DR) 工具通常使用 Cloud Storage 作为备份的暂存区或最终目标位置。如果攻击者入侵了此工具的配置,他们可以将备份重定向到攻击者控制的 Cloud Storage 存储桶。备份服务账号通常对许多数据源(例如数据库或虚拟机)具有广泛的读取权限,因此攻击者可以通过操纵备份作业的目标参数来窃取大量敏感数据。
| STRIDE 类别 | 信息披露 |
|---|---|
| MITRE ATT&CK 策略 | 渗漏 |
| 玻璃贴纸 |
|
| 缓解措施 |
|
在混合环境中,使用旧版 Cloud Storage ACL 绕过政策
Cloud Storage 支持两种互斥的访问权限控制系统:IAM 和旧版 ACL。如果停用统一存储桶级访问权限,系统会同时评估这两个系统。攻击者可以利用此配置,通过向对象添加旧版 ACL(例如,向个人 Google 账号或公开群组授予访问权限)来利用此配置,即使存储桶级允许政策看起来很严格也是如此。这种攻击会创建 IAM 中心型安全扫描器通常会忽略的影子访问路径,从而让攻击者绕过预期的安全政策。
| STRIDE 类别 | 提权 |
|---|---|
| MITRE ATT&CK 策略 | 防护规避 |
| 玻璃贴纸 |
|
| 缓解措施 |
|
利用以 Cloud Storage 为目标的遭入侵 CI/CD 流水线进行数据销毁
CI/CD 流水线通常会被授予高权限的服务账号,以管理基础架构和部署制品。如果攻击者破解了 CI/CD 系统,则可以使用流水线的服务账号对 Cloud Storage 执行破坏性操作。例如,攻击者将恶意代码注入到 build 脚本中或获得对编排器的访问权限,这都属于入侵行为。这种入侵可能涉及删除存储分区或覆盖关键对象。
| STRIDE 类别 | 篡改 |
|---|---|
| MITRE ATT&CK 策略 | 影响 |
| 玻璃贴纸 |
|
| 缓解措施 |
|
使用过度授权的紧急情况账号擅自删除存储桶
Break-glass 账号或紧急访问账号是仅在紧急情况下使用的高特权身份。如果这些账号未得到妥善保护和管控(例如,凭据泄露或访问权限不受时间限制),攻击者一旦入侵紧急情况账号,便可执行极具破坏性的操作。主要风险是删除整个 Cloud Storage 存储桶,这可能会导致灾难性的不可逆数据丢失,因为删除存储桶是一项永久性操作。
| STRIDE 类别 | 提权 |
|---|---|
| MITRE ATT&CK 策略 | 提升权限 |
| 玻璃贴纸 |
|
| 缓解措施 |
|
使用写入 Cloud Storage 的遭入侵的日志记录接收器进行静默数据渗出
您可以配置 Cloud Logging,以将日志导出到 Cloud Storage 存储桶。如果攻击者获得修改日志接收器的权限,他们可以重新配置该接收器,以将敏感日志导出到另一个项目中由攻击者控制的 Cloud Storage 存储桶。导出敏感日志可让攻击者静默且持续地窃取日志中捕获的敏感数据。
| STRIDE 类别 | 信息披露 |
|---|---|
| MITRE ATT&CK 策略 | 渗漏 |
| 玻璃贴纸 |
|
| 缓解措施 |
|
通过集中式 CMEK 撤消功能启用勒索软件防护
如果 Cloud Storage 存储分区使用 CMEK 加密,则数据的可用性取决于密钥的可用性。如果攻击者获得了 Cloud KMS 的足够权限,就可以销毁或停用用于关键 Cloud Storage 存储桶的密钥。此操作会使存储桶中的所有数据在加密方面无法访问,实际上是一种数据销毁或勒索软件,因为数据仍然存在,但无法解密。
| STRIDE 类别 | 篡改 |
|---|---|
| MITRE ATT&CK 策略 | 影响 |
| 玻璃贴纸 |
|
| 缓解措施 |
|
使用快照或备份导出功能将数据渗漏到 Cloud Storage
许多 Google Cloud 服务(例如 Compute Engine 或 Cloud SQL)允许创建快照或将备份导出到 Cloud Storage。如果攻击者有权执行这些导出操作,则可以创建包含敏感数据的资源的快照,并将该快照保存到权限宽松的 Cloud Storage 存储桶中,例如公共存储桶或与外部账号共享的存储桶。此操作会绕过主资源更严格的访问控制(例如数据库凭据),因为现在可以使用 Cloud Storage IAM 访问数据。
| STRIDE 类别 | 信息披露 |
|---|---|
| MITRE ATT&CK 策略 | 渗漏 |
| 玻璃贴纸 |
|
| 缓解措施 |
|