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
Einem oder mehreren Datenbanknutzern wurden alle Berechtigungen für eine PostgreSQL-Datenbank (oder alle Funktionen oder Prozeduren in einer Datenbank) gewährt.
Die Quelle dieses Ergebnisses ist Event Threat Detection.
Maßnahmen
So reagieren Sie auf dieses Ergebnis:
Schritt 1: Ergebnisdetails prüfen
- Öffnen Sie das
Exfiltration: Cloud SQL Over-Privileged Grant-Ergebnis, wie unter Ergebnisse prüfen beschrieben. Sehen Sie sich im Bereich „Ergebnisdetails“ auf dem Tab Zusammenfassung die Informationen in den folgenden Abschnitten an:
- Was erkannt wurde, insbesondere die folgenden Felder:
- Anzeigename der Datenbank: Der Name der Datenbank in der betroffenen Cloud SQL for PostgreSQL-Instanz.
- Datenbanknutzername: Der PostgreSQL-Nutzer, der übermäßige Berechtigungen gewährt hat.
- Datenbankabfrage: Die ausgeführte PostgreSQL-Abfrage, mit der die Berechtigungen erteilt wurden.
- Empfänger von Datenbankberechtigungen: die Empfänger der zu weit gefassten Berechtigungen.
- Betroffene Ressource, insbesondere die folgenden Felder:
- Vollständiger Name der Ressource: Der Ressourcenname der betroffenen Cloud SQL for PostgreSQL-Instanz.
- Vollständiger Name des übergeordneten Elements: Der Ressourcenname der Cloud SQL for PostgreSQL-Instanz.
- Vollständiger Projektname: das Google Cloud Projekt, das die Cloud SQL PostgreSQL-Instanz enthält.
- Weitere Informationen, insbesondere die folgenden Felder:
- 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 erkannt wurde, insbesondere die folgenden Felder:
Klicken Sie auf den Tab JSON, um das vollständige JSON für das Ergebnis aufzurufen.
Schritt 2: Datenbankberechtigungen prüfen
- Verbindung zur PostgreSQL-Datenbank herstellen
- Zugriffsberechtigungen auflisten und anzeigen für Folgendes:
- Datenbanken. Verwenden Sie den Metacommand
\loder\listund prüfen Sie, welche Berechtigungen für die Datenbank zugewiesen sind, die unter Anzeigename der Datenbank (aus Schritt 1) aufgeführt ist. - Funktionen oder Prozeduren. Verwenden Sie den Metacommand
\dfund prüfen Sie, welche Berechtigungen für Funktionen oder Prozeduren in der Datenbank zugewiesen sind, die in Database display name (aus Schritt 1) aufgeführt ist.
- Datenbanken. Verwenden Sie den Metacommand
Schritt 3: Protokolle prüfen
- Rufen Sie in der Google Cloud Console den Log-Explorer auf. Klicken Sie dazu auf den Link im Cloud Logging-URI (aus Schritt 1). Die Seite Log-Explorer enthält alle Logs, die sich auf die relevante Cloud SQL-Instanz beziehen.
- Prüfen Sie im Log-Explorer die PostgreSQL-
pgaudit-Logs, in denen ausgeführte Abfragen an die Datenbank aufgezeichnet werden. Verwenden Sie dazu die folgenden Filter:protoPayload.request.database="var class="edit">database"
Schritt 4: Angriffs- und Reaktionsmethoden untersuchen
- Sehen Sie sich den MITRE-ATT&CK-Framework-Eintrag für diesen Ergebnistyp an: Exfiltration Over Web Service.
- Um festzustellen, ob zusätzliche Schritte zur Abhilfe erforderlich sind, kombinieren Sie Ihre Untersuchungsergebnisse mit dem MITRE-Forschung.
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.
- Wenden Sie sich an den Inhaber der Instanz mit übermäßigen Berechtigungen.
- Ziehen Sie in Betracht, alle Berechtigungen für die in Database grantees aufgeführten Empfänger zu widerrufen, bis die Untersuchung abgeschlossen ist.
- Um den Zugriff auf die Datenbank (aus Anzeigename der Datenbank in Schritt 1) zu beschränken, widerrufen Sie unnötige Berechtigungen von den Berechtigten (aus Berechtigte für die Datenbank in Schritt 1).
Beispiel für JSON-Ergebnis
Das folgende Beispiel zeigt das JSON für ein Ergebnis.
{ "finding": { "name": "organizations/ORGANIZATION_ID/sources/SOURCE_ID/findings/FINDING_ID", "parent": "organizations/ORGANIZATION_ID/sources/SOURCE_ID", "resource_name": "//cloudsql.googleapis.com/projects/PROJECT_ID/instances/INSTANCE_NAME", "state": "ACTIVE", "category": "Exfiltration: CloudSQL Over-Privileged Grant", "sourceProperties": { "sourceId": { "projectNumber": "PROJECT_NUMBER", "customerOrganizationNumber": "ORGANIZATION_ID" }, "detectionCategory": { "ruleName": "cloudsql_exfil", "subRuleName": "user_granted_all_permissions" }, "detectionPriority": "LOW", "affectedResources": [ { "gcpResourceName": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER" }, { "gcpResourceName": "//cloudsql.googleapis.com/projects/PROJECT_ID/instances/INSTANCE_NAME" } ], "evidence": [{ "sourceLogId": { "projectId": "PROJECT_ID", "resourceContainer": "projects/PROJECT_ID", "timestamp": { "seconds": "0", "nanos": 0.0 }, "insertId": "INSERT_ID" } }], "findingId": "FINDING_ID", "contextUris": { "mitreUri": { "displayName": "MITRE Link", "url": "https://attack.mitre.org/techniques/T1567/002/" }, "cloudLoggingQueryUri": [{ "displayName": "Cloud Logging Query Link", "url": "LOGGING_LINK" }], "relatedFindingUri": { "displayName": "Related CloudSQL Exfiltration findings", "url": "RELATED_FINDINGS_LINK" } } }, "eventTime": "2022-01-19T21:36:07.901Z", "createTime": "2022-01-19T21:36:08.695Z", "severity": "LOW", "workflowState": "NEW", "canonicalName": "projects/PROJECT_NUMBER/sources/SOURCE_ID/findings/FINDING_ID" "mute": "UNDEFINED", "findingClass": "THREAT", "mitreAttack": { "primaryTactic": "EXFILTRATION", "primaryTechniques": ["EXFILTRATION_OVER_WEB_SERVICE"] }, "database": { "displayName": "DATABASE_NAME", "userName": "USER_NAME", "query": "QUERY", "grantees": [GRANTEE], }, "access": { "serviceName": "cloudsql.googleapis.com", "methodName": "cloudsql.instances.query" } }, "resource": { "name": "//cloudsql.googleapis.com/projects/PROJECT_ID/instances/INSTANCE_NAME", "projectName": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER", "projectDisplayName": "PROJECT_ID", "parentName": "//cloudsql.googleapis.com/projects/PROJECT_NUMBER", "parentDisplayName": "PROJECT_ID", "type": "google.cloud.sql.Instance", "folders": [{ "resourceFolder": "//cloudresourcemanager.googleapis.com/folders/FOLDER_NUMBER", "resourceFolderDisplayName": "FOLDER_ID" }], "displayName": "INSTANCE_NAME" } }
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