概述
该技能是一套 GCP 云环境攻击方法论。其描述说明,当目标使用 Google Cloud Platform,或发现 GCP Service Account、Metadata、Storage Bucket 时使用。资料中特别指出 GCP 与 AWS 的区别:GCP 的 IAM 继承模型 + Service Account 密钥机制 = 独特的攻击路径。
主要能力(按攻击阶段)
Phase 1:初始访问与信息收集
- Metadata 服务利用(SSRF → GCP 凭据):GCP Metadata 端点需要 Metadata-Flavor header,但不需要 AWS IMDSv2 式 token。资料给出获取 Service Account Token、项目信息、实例属性(可能含敏感配置)、SSH 密钥的 curl 命令示例。
- Service Account 密钥发现:搜索泄露的 SA 密钥(JSON 格式),如通过 grep 搜索 private_key_id、查找含 iam.gserviceaccount.com 的 JSON 文件;常见位置包括 ~/.config/gcloud/、/root/.config/gcloud/application_default_credentials.json、环境变量 GOOGLE_APPLICATION_CREDENTIALS、Kubernetes Secrets、GitHub/GitLab 泄露。
- Bucket 枚举:公开 Bucket 探测(GCP Bucket URL 格式 https://storage.googleapis.com/BUCKET_NAME 与 gs://BUCKET_NAME),按常见命名模式探测,以及使用 GCPBucketBrute。
Phase 2:认证与权限确认
使用窃取的 SA 密钥认证(gcloud auth activate-service-account --key-file),或使用 access token(gcloud config set auth/access_token_file),确认身份并枚举权限,包括列出当前 SA 的 IAM 角色、测试具体权限。
Phase 3:IAM 提权
资料列举常见提权路径:iam.serviceAccountKeys.create、iam.serviceAccounts.getAccessToken、iam.serviceAccounts.implicitDelegation、iam.serviceAccounts.signBlob、iam.serviceAccounts.signJwt、deploymentmanager.deployments.create、cloudfunctions.functions.create、compute.instances.create、run.services.create、orgpolicy.policy.set。并给出利用示例:创建新的 SA 密钥、获取其他 SA 的 Token、通过 Cloud Function 提权、通过 Compute Instance 提权。
Phase 4:数据访问
包括 Storage Bucket 操作(gsutil ls/cp 等)、BigQuery 数据导出(bq ls/query/extract)、Secret Manager 读取(gcloud secrets list、versions access)、Firestore/Datastore 导出。
Phase 5:持久化
包括创建新 SA 密钥、授予外部账户权限(add-iam-policy-binding)、创建 Cloud Function 定时回连(通过 Cloud Scheduler 触发)、Compute Engine startup-script 持久化。
使用方式
资料以阶段化流程组织,配合具体命令行示例(gcloud、gsutil、bq、curl、python3 等)与工具速查表。深入参考指向 references/gcp-iam-privesc.md(GCP IAM 提权路径详解)与 references/gke-attack.md(GKE 攻击与逃逸)。
工具速查
- gcloud CLI:GCP 官方工具
- GCPBucketBrute:Bucket 枚举
- ScoutSuite:多云安全审计
- Prowler:GCP 安全检查
- GCP IAM Privilege Escalation:提权检查工具
- Hayat:GCP 攻击框架
适用场景
适用于针对 GCP 云环境的渗透测试与安全评估,覆盖从初始访问、权限确认、IAM 提权、数据访问到持久化的完整流程。
限制
资料未提供适用前提、授权要求、检测规避或实际效果等信息;未提供价格、收费与平台支持信息。