Nach Secrets suchen

Mit Artefaktanalyse-Scans auf Sicherheitslücken können Secrets wie Dienstkontoschlüssel und API-Schlüssel identifiziert werden, die in gescannten Images gespeichert sind. Informationen zu diesen Secrets finden Sie im Ereignisbericht des Sicherheitslückenscans. Sie können Maßnahmen ergreifen, um die Offenlegung vertraulicher Informationen zu verhindern.

Übersicht

Wenn bei einem Scan auf Sicherheitslücken ein Secret erkannt wird, erstellt die Artefaktanalyse ein Secret-Vorkommen mit Details zum Secret. Mit der Artefaktanalyse können die folgenden Secrets erkannt werden:

Secrets

  • Anthropic-Administratorschlüssel
  • Anthropic-API-Schlüssel
  • Azure-Zugriffstokens
  • Azure-ID-Tokens
  • Persönliche Zugriffstokens für Docker Hub
  • GitHub-App-Aktualisierungstokens
  • Server-zu-Server-Tokens für GitHub-Apps
  • GitHub-App-Nutzer-zu-Server-Tokens
  • Klassische persönliche GitHub-Zugriffstokens
  • Granulare persönliche Zugriffstokens für GitHub
  • GitHub-OAuth-Tokens
  • Google Cloud OAuth2-Paare (Client-ID und ‑Schlüssel)
  • Google Cloud OAuth2-Zugriffstokens
  • Google Cloud Dienstkontoschlüssel
  • Google Cloud API-Schlüssel
  • Huggingface-API-Schlüssel
  • OpenAI-API-Schlüssel
  • Perplexity API-Schlüssel
  • Eingeschränkte Stripe-Schlüssel
  • Geheime Stripe-Schlüssel
  • Stripe-Webhook-Secrets

Ausführliche Informationen zu den verschiedenen Arten von vertraulichen Informationen in Ereignisberichten finden Sie in der Dokumentation zur Artifact Analysis API unter SecretKind.

Mit der Artefaktanalyse können nur Secrets erkannt werden, die als Textdateien gespeichert sind. Die folgenden Dateiendungen werden unterstützt:

  • .cer
  • .cfg
  • .crt
  • .der
  • .env
  • .html
  • .key
  • .ipynb
  • .json
  • .log
  • .md
  • .pem
  • .py
  • .pypirc
  • .textproto
  • .toml
  • .txt
  • .xml
  • .yaml

Hinweise

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Wenn Sie für diese Anleitung ein vorhandenes Projekt verwenden, prüfen Sie, ob Sie die erforderlichen Berechtigungen haben. Wenn Sie ein neues Projekt erstellt haben, haben Sie bereits die erforderlichen Berechtigungen.

  4. Verify that billing is enabled for your Google Cloud project.

  5. Enable the Artifact Registry and Container Scanning APIs.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  6. Install the Google Cloud CLI.

  7. If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

  8. To initialize the gcloud CLI, run the following command:

    gcloud init
  9. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  10. Wenn Sie für diese Anleitung ein vorhandenes Projekt verwenden, prüfen Sie, ob Sie die erforderlichen Berechtigungen haben. Wenn Sie ein neues Projekt erstellt haben, haben Sie bereits die erforderlichen Berechtigungen.

  11. Verify that billing is enabled for your Google Cloud project.

  12. Enable the Artifact Registry and Container Scanning APIs.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  13. Install the Google Cloud CLI.

  14. If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

  15. To initialize the gcloud CLI, run the following command:

    gcloud init

Wenn Sie diese API aktivieren, wird auch das Scannen von Sprachpaketen in Artifact Registry aktiviert. Unterstützte Pakettypen

Erforderliche Rollen

Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für das Projekt zuzuweisen, damit Sie die Berechtigungen zum Scannen von Bildern nach vertraulichen Informationen während der Sicherheitslücken-Scans erhalten:

Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.

Secrets ansehen

So rufen Sie vertrauliche Informationen nach einem Scan auf Sicherheitslücken auf:

  1. Docker-Image per Push an Artifact Registry übertragen

  2. Warten Sie, bis der Scan auf Sicherheitslücken abgeschlossen ist.

  3. Führen Sie den folgenden Befehl aus, um die Geheimnisvorkommen für das gescannte Image aufzulisten:

    $ curl -G -H "Content-Type: application/json"   -H "Authorization: Bearer $(gcloud auth print-access-token)" --data-urlencode "filter=(kind=\"SECRET\" AND resourceUrl=\"RESOURCE_URL\")" https://containeranalysis.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/occurrences
    

    Wobei:

    • PROJECT_ID ist Ihre Projekt-ID der Google Cloud Console.
    • LOCATION ist der regionale oder multiregionale Speicherort Ihres Repositorys.
    • RESOURCE_URL ist die URL des gescannten Bildes im Format https://LOCATION-docker.pkg.dev/PROJECT_ID/REPOSITORY/IMAGE_ID.

    Die folgende Beispielantwort zeigt ein mögliches Ergebnis. In diesem Fall wurde einGoogle Cloud API-Schlüssel mit dem Namen my_api_key.yaml im documents-Verzeichnis eines Bildes gefunden. Das Attribut secret enthält Informationen zum gefundenen Secret.

    {
      "occurrences": [
        {
          "name": "projects/my-project/locations/us-east1/occurrences/45619d23-66b1-4f5b-9b12-9060d7f97ff3",
          "resourceUri": "https://us-east1-docker.pkg.dev/my-project/my-images/test-image-0106@sha256:73cf5b9a788dc391c40e9cf1599144d03875b5d2dc935988ebfef8260bd2678e",
          "noteName": "projects/my-project/locations/us-east1/notes/secret_kind_gcp_api_key",
          "kind": "SECRET",
          "createTime": "2026-01-06T21:16:14.905851Z",
          "updateTime": "2026-01-06T21:16:14.905851Z",
          "secret": {
            "kind": "SECRET_KIND_GCP_API_KEY",
            "locations": [
              {
                "fileLocation": {
                  "filePath": "documents/my_api_key.yaml",
                  "layerDetails": {
                    "index": 2,
                    "diffId": "7b76df10d6d90391830392eac96b0ef2d2d43822c6ff4754aa6daea0fe14a8c5",
                    "command": "COPY . . # buildkit",
                    "chainId": "sha256:75df0c59982f47cc38e730e1a122b67fceaaf7797d91e1fa17ffffc5cfe7ff59"
                  }
                }
              }
            ]
          }
        }
      ]
    }
    

Beschränkungen

  • Während der öffentlichen Vorschau des Secret-Scans sind Vorkommen vom Typ „Secret“ nur in der Container Analysis API sichtbar.
  • Die Artefaktanalyse meldet beim Scannen von Secrets maximal ein Vorkommen pro Secret und Image. Pro Vorkommen werden maximal 1.000 Dateispeicherorte zurückgegeben.
  • Bei erkannten Secrets kann es zu falsch positiven Ergebnissen kommen. Prüfen Sie immer jedes erkannte Secret, bevor Sie Maßnahmen in Bezug auf Ihre Bilder ergreifen.