In diesem Dokument wird ein bestimmter Typ von Bedrohungsergebnissen in Security Command Center beschrieben. Bedrohungsergebnisse werden von Bedrohungsdetektoren generiert, wenn sie eine potenzielle Bedrohung in Ihren Cloud-Ressourcen erkennen. Eine vollständige Liste der verfügbaren Bedrohungsergebnisse finden Sie im Index der Bedrohungsergebnisse.
Übersicht
Die von einem KI-Agenten initiierte Daten-Exfiltration aus Cloud SQL wird erkannt, indem Audit-Logs auf Live-Instanzdaten geprüft werden, die in einen Cloud Storage-Bucket exportiert wurden, der der Organisation gehört und öffentlich zugänglich ist.
Alle Cloud SQL-Instanztypen werden unterstützt.
Bei Aktivierungen der Security Command Center Premium-Stufe auf Projektebene ist dieses Ergebnis nur verfügbar, wenn die Standard-Legacy-Stufe in der übergeordneten Organisation aktiviert ist.
Die Quelle von diesem Ergebnis ist Event Threat Detection.
Maßnahmen
So reagieren Sie auf dieses Ergebnis:
Schritt 1: Ergebnisdetails prüfen
- Öffnen Sie ein Ergebnis vom Typ
Exfiltration: AI Agent Initiated CloudSQL Exfiltration to Public Bucket, wie unter Ergebnisse prüfen beschrieben. Der Detailbereich für das Ergebnis wird geöffnet und der Tab Zusammenfassung wird angezeigt. Sehen Sie sich auf dem Tab Zusammenfassung die Informationen in den folgenden Abschnitten an:
- Was wurde erkannt, insbesondere die folgenden Felder:
- E-Mail-Adresse des Principals : das Konto, das zur Exfiltration der Daten verwendet wird.
- Exfiltrationsquellen: Details zur Cloud SQL -Instanz, deren Daten exfiltriert wurden.
- Exfiltrationsziele: Details zum Cloud Storage Bucket, in den die Daten exportiert wurden.
- Betroffene Ressource, insbesondere die folgenden Felder:
- Vollständiger Name der Ressource: der Ressourcenname der Cloud SQL-Instanz deren Daten exfiltriert wurden.
- Vollständiger Projektname: das Google Cloud Projekt, das die Cloud SQL-Quelldaten enthält.
- Weitere Informationen, einschließlich:
- Cloud Logging-URI: Link zu Logging-Einträgen.
- MITRE ATT&CK-Methode: Link zur MITRE ATT&CK-Dokumentation.
- Ähnliche Ergebnisse: Links zu ähnlichen Ergebnissen.
- Was wurde erkannt, insbesondere die folgenden Felder:
Klicken Sie auf den Tab JSON.
Beachten Sie in der JSON-Datei für das Ergebnis die folgenden Felder:
sourceProperties:evidence:sourceLogId:projectId: das Google Cloud Projekt, das die Cloud SQL-Quellinstanz enthält.
propertiesexportScope: wie viele Daten exportiert wurden, z. B. die gesamte Instanz, eine oder mehrere Datenbanken, eine oder mehrere Tabellen oder eine Teilmenge, die durch eine Abfrage angegeben wird.
Schritt 2: Berechtigungen und Einstellungen prüfen
Rufen Sie in der Google Cloud Console die Seite IAM auf.
Wählen Sie gegebenenfalls das Projekt der Instanz aus, die im
projectIdFeld in der Ergebnis-JSON-Datei (aus Schritt 1) aufgeführt ist.Geben Sie auf der angezeigten Seite im Feld Filter die E-Mail-Adresse ein, die in der Zeile E-Mail-Adresse des Principals auf dem Tab Zusammenfassung der Ergebnisdetails (aus Schritt 1) aufgeführt ist. Prüfen Sie, welche Berechtigungen dem Konto zugewiesen sind.
Schritt 3: Protokolle prüfen
- Rufen Sie in der Google Cloud Console den Log-Explorer auf. Klicken Sie dazu auf den Link unter Cloud Logging-URI (aus Schritt 1). Die Seite Log-Explorer enthält alle Logs, die sich auf die relevante Cloud SQL-Instanz beziehen.
Schritt 4: Angriffs- und Reaktionsmethoden untersuchen
- Prüfen Sie den MITRE-ATT&CK-Framework-Eintrag für diesen Ergebnistyp: Exfiltration to Cloud Storage (Exfiltration in Cloud Storage).
- Prüfen Sie die ähnlichen Ergebnisse. Klicken Sie dazu auf den Link in der Zeile Ähnliche Ergebnisse , die in Schritt 1 beschrieben wurde. Ähnliche Ergebnisse haben denselben Ergebnistyp auf derselben Cloud SQL-Instanz.
- Um einen Antwortplan zu entwickeln, kombinieren Sie Ihre Prüfungsergebnisse mit der MITRE-Studie.
Schritt 5: Antwort implementieren
Der folgende Reaktionplan ist möglicherweise für dieses Ergebnis geeignet, kann sich jedoch auch auf Abläufe auswirken. Prüfen Sie die Informationen, die Sie im Rahmen Ihrer Untersuchung erfasst haben, sorgfältig, um die beste Lösung für die Behebung der Ergebnisse zu finden.
- Den Inhaber des Projekts mit exfiltrierten Daten kontaktieren
- Ziehen Sie in Betracht, Berechtigungen für
access.principalEmailzu widerrufen, bis die Untersuchung abgeschlossen ist. - Um eine weitere Daten-Exfiltration zu stoppen, fügen Sie den betroffenen Cloud SQL-Instanzen restriktive Richtlinien hinzu.
- Beschränken Sie den Zugriff auf die Cloud SQL Admin API und den Export aus der Cloud SQL Admin API mit VPC Service Controls.
- Um IAM-Rollen mit zu vielen Berechtigungen zu identifizieren und zu beheben, verwenden Sie IAM Recommender.
Beispiel für eine Ergebnis-JSON-Datei
Hier sehen Sie ein Beispiel für die Ergebnis-JSON-Datei, wobei Standardwerte ausgelassen wurden.
{ "finding": { "name": "organizations/ORGANIZATION_ID/sources/SOURCE_ID/locations/global/findings/FINDING_ID", "parent": "organizations/ORGANIZATION_ID/sources/SOURCE_ID/locations/global", "resourceName": "//cloudsql.googleapis.com/projects/PROJECT_ID/instances/INSTANCE_NAME", "state": "ACTIVE", "category": "Exfiltration: AI Agent Initiated CloudSQL Exfiltration to Public Bucket", "securityMarks": { "name": "organizations/ORGANIZATION_ID/sources/SOURCE_ID/locations/global/findings/FINDING_ID/securityMarks" }, "eventTime": "TIMESTAMP", "createTime": "TIMESTAMP", "severity": "HIGH", "canonicalName": "projects/PROJECT_NUMBER/sources/SOURCE_ID/locations/global/findings/FINDING_ID", "findingClass": "THREAT", "access": { "callerIp": "IP_ADDRESS", "callerIpGeo": { "regionCode": "COUNTRY_CODE" }, "serviceName": "cloudsql.googleapis.com", "methodName": "cloudsql.instances.export", "principalSubject": "principal://agents.global.org-ORGANIZATION_ID.system.id.goog/resources/aiplatform/projects/PROJECT_NUMBER/locations/LOCATION/reasoningEngines/REASONING_ENGINE_ID" }, "mitreAttack": { "primaryTactic": "EXFILTRATION", "primaryTechniques": [ "EXFILTRATION_OVER_WEB_SERVICE", "EXFILTRATION_TO_CLOUD_STORAGE" ] }, "exfiltration": { "sources": [ { "name": "//cloudsql.googleapis.com/projects/PROJECT_ID/instances/INSTANCE_NAME", "components": [ "Databases: DATABASE_NAME" ] } ], "targets": [ { "name": "//storage.googleapis.com/TARGET_STORAGE_BUCKET_NAME", "components": [ "TARGET_FILE_NAME" ] } ] }, "parentDisplayName": "Event Threat Detection", "domains": [ { "category": "AI" }, { "category": "IDENTITY_AND_ACCESS" } ], "logEntries": [ { "cloudLoggingEntry": { "insertId": "INSERT_ID", "logId": "cloudaudit.googleapis.com/data_access", "resourceContainer": "projects/PROJECT_ID", "timestamp": "TIMESTAMP" } } ] }, "resource": { "name": "//cloudsql.googleapis.com/projects/PROJECT_ID/instances/INSTANCE_NAME", "displayName": "INSTANCE_NAME", "type": "google.cloud.sql.Instance", "cloudProvider": "GOOGLE_CLOUD_PLATFORM", "service": "sqladmin.googleapis.com", "location": "LOCATION", "gcpMetadata": { "project": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER", "projectDisplayName": "PROJECT_ID", "parent": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER", "parentDisplayName": "PROJECT_ID", "organization": "organizations/ORGANIZATION_ID" }, "resourcePath": { "nodes": [ { "nodeType": "GCP_PROJECT", "id": "projects/PROJECT_NUMBER", "displayName": "PROJECT_ID" }, { "nodeType": "GCP_ORGANIZATION", "id": "organizations/ORGANIZATION_ID" } ] }, "resourcePathString": "organizations/ORGANIZATION_ID/projects/PROJECT_NUMBER" }, "sourceProperties": { "sourceId": { "projectNumber": "PROJECT_NUMBER", "customerOrganizationNumber": "ORGANIZATION_ID" }, "detectionCategory": { "ruleName": "agent_engine_cloudsql_exfil", "subRuleName": "agent_engine_export_to_public_gcs" }, "detectionPriority": "HIGH", "affectedResources": [ { "gcpResourceName": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER" }, { "gcpResourceName": "//storage.googleapis.com/TARGET_STORAGE_BUCKET_NAME" }, { "gcpResourceName": "//cloudsql.googleapis.com/projects/PROJECT_ID/instances/INSTANCE_NAME" } ], "evidence": [ { "sourceLogId": { "projectId": "PROJECT_ID", "resourceContainer": "projects/PROJECT_ID", "timestamp": { "seconds": "TIMESTAMP_SECONDS", "nanos": TIMESTAMP_NANOS }, "insertId": "INSERT_ID", "logId": "cloudaudit.googleapis.com/data_access" } } ], "properties": { "exportToGcs": { "cloudsqlInstanceResource": "//cloudsql.googleapis.com/projects/PROJECT_ID/instances/INSTANCE_NAME", "gcsUri": "gs://TARGET_STORAGE_BUCKET_NAME/TARGET_FILE_NAME", "bucketAccess": "PUBLICLY_ACCESSIBLE", "bucketResource": "//storage.googleapis.com/TARGET_STORAGE_BUCKET_NAME", "exportScope": "ONE_OR_MORE_DATABASES" } }, "findingId": "FINDING_ID", "contextUris": { "mitreUri": { "displayName": "MITRE Link", "url": "https://attack.mitre.org/techniques/T1567/002/" }, "cloudLoggingQueryUri": [ { "displayName": "Cloud Logging Query Link", "url": "https://console.cloud.google.com/logs/query;query=timestamp%3D%22TIMESTAMP%22%0AinsertId%3D%22INSERT_ID%22?project=PROJECT_ID" } ] }, "domains": [ { "category": "AI" }, { "category": "IDENTITY_AND_ACCESS" } ] } }
Nächste Schritte
- Informationen zum Arbeiten mit Bedrohungsergebnissen in Security Command Center
- Weitere Informationen finden Sie im Index der Bedrohungsergebnisse.
- Informationen zum Überprüfen von Ergebnissen über die Google Cloud Console
- Dienste, die Bedrohungsergebnisse generieren