Skills

GCP Pentesting

GCP 云环境渗透测试总体方法论。当目标使用 Google Cloud Platform、发现 GCP 相关资产(GCS Bucket/Compute...

Install

npx skills add wgpsec/AboutSecurity --skill gcp-pentesting -g -a claude-code -y
Repository
wgpsec/AboutSecurity1.8k
Category
DevOps
Updated
11d ago
License
See repository
Context cost
Mediumabout 3,000 tokens
Runs scripts
No, instructions only

What it does

GCP 云环境渗透测试总体方法论。当目标使用 Google Cloud Platform、发现 GCP 相关资产(GCS Bucket/Compute Engine/Cloud Functions/GKE)、获取 GCP 凭据(Service Account Key/OAuth Token/Metadata Token)、或需要对 GCP 环境进行安全评估时使用。提供从未授权枚举到提权、后渗透、GCP-to-Workspace 穿越的全流程决策树。覆盖 37+ GCP 服务攻击面

GCP 云环境渗透测试方法论

GCP 是全球三大公有云之一,承载了大量企业核心业务。其独特的资源层级模型(Organization → Folder → Project → Resource)、Service Account 机制和 IAM 权限继承模型构成了与 AWS/Azure 截然不同的攻击面。本技能以攻击阶段(Phase)为主线,组织从"零凭据"到"完全控制"的完整渗透路径。

GCP 与 AWS 的核心区别

概念GCPAWS
资源层级Organization → Folder → Project → ResourceAccount → OU → Resource
身份主体Google Account、Service Account、GroupIAM User、IAM Role
凭据类型SA Key (JSON)、OAuth Token、Metadata TokenAK/SK、STS Token、Instance Profile
权限绑定在资源上绑定(get-iam-policy)在主体上附加策略(Policy)
PassRole 等价iam.serviceAccounts.actAsiam:PassRole
元数据端点需要 Metadata-Flavor: Google 头IMDSv1 无需头 / IMDSv2 需 Token
访问范围OAuth Scopes 限制 Token 能力无等价机制

深入参考

识别到具体攻击阶段后,加载对应参考文档获取完整技术细节:

Phase 0: 攻击面判断

拿到一个 GCP 相关目标后,首先判断当前手持的资产类型,决定进入哪个攻击阶段:

当前持有什么?
├── 无任何凭据
│   ├── 有目标域名/IP → Phase 1(未授权枚举)
│   ├── 有 SSRF 漏洞 → 直接打 Metadata 获取 SA Token → Phase 2
│   └── 仅知道组织名称 → OSINT + Phase 1
│
├── 有 Service Account Key(JSON 格式,含 private_key 字段)
│   └── → Phase 2(凭据验证与权限评估)
│
├── 有 OAuth Access Token(ya29. 开头)
│   └── → Phase 2(注意:有效期通常 1 小时,需快速行动)
│
├── 有 Refresh Token(从 gcloud 本地配置窃取)
│   └── → 生成新 Access Token → Phase 2(可长期维持)
│
├── 在 Compute Engine / Cloud Functions / Cloud Run 实例内部
│   └── → 通过 Metadata 获取绑定 SA 的 Token → Phase 2
│
└── 有 gcloud CLI 配置目录(~/.config/gcloud/)
    └── → 提取 access_tokens.db / credentials.db → Phase 2

GCP 凭据类型速查

Read the whole SKILL.md on GitHub

More in DevOps