AWS Key Management Service-Logs erfassen

Unterstützt in:

In diesem Dokument wird beschrieben, wie Sie AWS Key Management Service-Protokolle (KMS) in Google Security Operations aufnehmen. AWS KMS ist ein vollständig verwalteter Dienst, mit dem Sie Verschlüsselungsschlüssel erstellen und verwalten können, die zum Verschlüsseln Ihrer Daten verwendet werden. Diese Integration hilft bei der Überwachung und Prüfung der Verwendung von Verschlüsselungsschlüsseln.

Hinweise

Folgende Voraussetzungen müssen erfüllt sein:

  • Google SecOps-Instanz
  • Berechtigter Zugriff auf AWS

Amazon S3 und IAM konfigurieren

  1. Erstellen Sie einen Amazon S3-Bucket. Folgen Sie dazu dieser Anleitung: Bucket erstellen.
  2. Speichern Sie den Namen und die Region des Buckets für später.
  3. Erstellen Sie einen Nutzer gemäß der Anleitung IAM-Nutzer erstellen.
  4. Wählen Sie den erstellten Nutzer aus.
  5. Wählen Sie den Tab Sicherheitsanmeldedaten aus.
  6. Klicken Sie im Bereich Zugriffsschlüssel auf Zugriffsschlüssel erstellen.
  7. Wählen Sie als Anwendungsfall Drittanbieterdienst aus.
  8. Klicken Sie auf Weiter.
  9. Optional: Fügen Sie ein Beschreibungs-Tag hinzu.
  10. Klicken Sie auf Zugriffsschlüssel erstellen.
  11. Klicken Sie auf CSV-Datei herunterladen, um den Zugriffsschlüssel und den Secret Access Key zur späteren Verwendung zu speichern.
  12. Klicken Sie auf Fertig.
  13. Wählen Sie den Tab Berechtigungen aus.
  14. Klicken Sie im Bereich Berechtigungsrichtlinien auf Berechtigungen hinzufügen.
  15. Wählen Sie Berechtigungen hinzufügen aus.
  16. Wählen Sie Richtlinien direkt anhängen aus.
  17. Suchen Sie nach der Richtlinie AmazonS3FullAccess und wählen Sie sie aus.
  18. Klicken Sie auf Weiter.
  19. Klicken Sie auf Berechtigungen hinzufügen.

CloudTrail für AWS KMS konfigurieren

  1. Melden Sie sich bei der AWS Management Console an.
  2. Geben Sie in die Suchleiste CloudTrail ein und wählen Sie den Dienst aus der Liste aus.
  3. Klicken Sie auf Weg erstellen.
  4. Geben Sie einen Trail-Namen an, z. B. KMS-Aktivitäts-Trail.
  5. Klicken Sie auf das Kästchen Für alle Konten in meiner Organisation aktivieren.
  6. Geben Sie den zuvor erstellten S3-Bucket-URI ein (das Format sollte s3://your-log-bucket-name/ sein) oder erstellen Sie einen neuen S3-Bucket.
  7. Wenn die serverseitige Verschlüsselung mit AWS KMS aktiviert ist, geben Sie einen Namen für den AWS KMS-Alias an oder wählen Sie einen vorhandenen AWS KMS-Schlüssel aus.
  8. Die anderen Einstellungen können Sie beibehalten.
  9. Klicken Sie auf Weiter.
  10. Wählen Sie unter Ereignistypen die Optionen Verwaltungsereignisse und Datenereignisse aus.
  11. Klicken Sie auf Weiter.
  12. Prüfen Sie die Einstellungen unter Überprüfen und erstellen.
  13. Klicken Sie auf Weg erstellen.
  14. Optional: Wenn Sie einen neuen Bucket erstellt haben, fahren Sie mit der folgenden Anleitung fort:
    1. Rufen Sie S3 auf.
    2. Suchen Sie den neu erstellten Log-Bucket und wählen Sie ihn aus.
    3. Wählen Sie den Ordner AWSLogs aus.
    4. Klicken Sie auf S3-URI kopieren und speichern Sie die URI.

Feeds einrichten

Es gibt zwei verschiedene Einstiegspunkte zum Einrichten von Feeds auf der Google SecOps-Plattform:

  • SIEM-Einstellungen > Feeds
  • Content Hub > Content-Pakete

Feeds über „SIEM-Einstellungen“ > „Feeds“ einrichten

Informationen zum Konfigurieren mehrerer Feeds für unterschiedliche Protokolltypen innerhalb dieser Produktfamilie finden Sie unter Feeds nach Produkt konfigurieren.

So konfigurieren Sie einen einzelnen Feed:

  1. Gehen Sie zu SIEM-Einstellungen > Feeds.
  2. Klicken Sie auf Neuen Feed hinzufügen.
  3. Klicken Sie auf der nächsten Seite auf Einzelnen Feed konfigurieren.
  4. Geben Sie im Feld Feedname einen Namen für den Feed ein, z. B. AWS KMS-Protokolle.
  5. Wählen Sie als Quelltyp Amazon S3 aus.
  6. Wählen Sie AWS KMS als Logtyp aus.
  7. Klicken Sie auf Weiter.
  8. Geben Sie Werte für die folgenden Eingabeparameter an:

    • Region: Die Region, in der sich der Amazon S3-Bucket befindet.
    • S3-URI: Der Bucket-URI.
      • s3://your-log-bucket-name/
        • Ersetzen Sie your-log-bucket-name durch den tatsächlichen Namen Ihres S3-Buckets.
    • URI ist ein: Wählen Sie je nach Bucket-Struktur entweder Verzeichnis oder Verzeichnis mit Unterverzeichnissen aus.
    • Optionen zum Löschen der Quelle: Wählen Sie die Löschoption entsprechend Ihren Datenaufnahmeeinstellungen aus.

    • Access Key ID: Der Zugriffsschlüssel des Nutzers mit Leseberechtigungen für den S3-Bucket.

    • Secret Access Key: Der geheime Schlüssel des Nutzers mit Berechtigungen zum Lesen aus dem S3-Bucket.

    • Asset-Namespace: Der Asset-Namespace.

    • Aufnahmelabels: Das Label, das auf die Ereignisse aus diesem Feed angewendet werden soll.

  9. Klicken Sie auf Weiter.

  10. Prüfen Sie die neue Feedkonfiguration auf dem Bildschirm Abschließen und klicken Sie dann auf Senden.

Feeds über den Content Hub einrichten

Geben Sie Werte für die folgenden Felder an:

  • Region: Die Region, in der sich der Amazon S3-Bucket befindet.
  • S3-URI: Der Bucket-URI.
    • s3://your-log-bucket-name/
      • Ersetzen Sie your-log-bucket-name durch den tatsächlichen Namen Ihres S3-Buckets.
  • URI ist ein: Wählen Sie je nach Bucket-Struktur entweder Verzeichnis oder Verzeichnis mit Unterverzeichnissen aus.
  • Optionen zum Löschen der Quelle: Wählen Sie die Löschoption entsprechend Ihren Datenaufnahmeeinstellungen aus.
  • Access Key ID: Der Zugriffsschlüssel des Nutzers mit Leseberechtigungen für den S3-Bucket.

  • Secret Access Key: Der geheime Schlüssel des Nutzers mit Berechtigungen zum Lesen aus dem S3-Bucket.

Erweiterte Optionen

  • Feedname: Ein vordefinierter Wert, der den Feed identifiziert.
  • Quelltyp: Methode, mit der Protokolle in Google SecOps erfasst werden.
  • Asset-Namespace: Dem Feed zugeordneter Namespace.
  • Aufnahmelabels: Labels, die auf alle Ereignisse aus diesem Feed angewendet werden.

UDM-Zuordnungstabelle

Logfeld UDM-Zuordnung Logik
data.detail.awsRegion principal.location.country_or_region Direkt aus dem Feld data.detail.awsRegion im Rohprotokoll zugeordnet.
data.detail.eventCategory security_result.category_details Direkt aus dem Feld data.detail.eventCategory im Rohprotokoll zugeordnet.
data.detail.eventName metadata.product_event_type Direkt aus dem Feld data.detail.eventName im Rohprotokoll zugeordnet. In diesem Feld wird der metadata.event_type-Wert anhand der folgenden Logik bestimmt: Wenn „eventName“ „Entschlüsseln“ oder „Verschlüsseln“ ist, ist „event_type“ „USER_RESOURCE_ACCESS“. Wenn „eventName“ „GenerateDataKey“ ist, ist „event_type“ „USER_RESOURCE_CREATION“. Andernfalls ist „event_type“ „GENERIC_EVENT“.
data.detail.requestID additional.fields.key Der Wert ist im Parsercode auf „requestID“ hartcodiert.
data.detail.requestID additional.fields.value.string_value Direkt aus dem Feld data.detail.requestID im Rohprotokoll zugeordnet.
data.detail.requestParameters.encryptionAlgorithm security_result.detection_fields.key Der Wert ist im Parsercode auf „encryptionAlgorithm“ hartcodiert.
data.detail.requestParameters.encryptionAlgorithm security_result.detection_fields.value Direkt aus dem Feld data.detail.requestParameters.encryptionAlgorithm im Rohprotokoll zugeordnet.
data.detail.resources.ARN target.resource.id Direkt aus dem Feld data.detail.resources.ARN im Rohprotokoll zugeordnet.
data.detail.resources.type target.resource.resource_subtype Direkt aus dem Feld data.detail.resources.type im Rohprotokoll zugeordnet.
data.detail.userIdentity.sessionContext.attributes.mfaAuthenticated principal.user.attribute.labels.key Der Wert ist im Parsercode auf „mfaAuthenticated“ hartcodiert.
data.detail.userIdentity.sessionContext.attributes.mfaAuthenticated principal.user.attribute.labels.value Direkt aus dem Feld data.detail.userIdentity.sessionContext.attributes.mfaAuthenticated im Rohprotokoll zugeordnet.
data.detail.userIdentity.sessionContext.sessionIssuer.principalId principal.user.userid Direkt aus dem Feld data.detail.userIdentity.sessionContext.sessionIssuer.principalId im Rohprotokoll zugeordnet.
data.detail.userIdentity.sessionContext.sessionIssuer.userName principal.user.user_display_name Direkt aus dem Feld data.detail.userIdentity.sessionContext.sessionIssuer.userName im Rohprotokoll zugeordnet.
data.detail.userIdentity.type principal.user.attribute.roles.name Direkt aus dem Feld data.detail.userIdentity.type im Rohprotokoll zugeordnet.
data.id metadata.product_log_id Direkt aus dem Feld data.id im Rohprotokoll zugeordnet.
data.time metadata.event_timestamp.seconds Der Sekundenwert des Zeitstempels, der aus dem Feld data.time im Rohprotokoll geparst wurde.
metadata.event_type Dieses Feld wird von der Parserlogik basierend auf dem Wert von data.detail.eventName abgeleitet: Wenn eventName „Entschlüsseln“ oder „Verschlüsseln“ ist, ist „USER_RESOURCE_ACCESS“ der Wert für „event_type“. Wenn eventName „GenerateDataKey“ ist, ist „USER_RESOURCE_CREATION“ der Wert für „event_type“. Andernfalls ist „GENERIC_EVENT“ der Wert für „event_type“.
metadata.log_type Der Wert ist im Parsercode auf „AWS_KMS“ hartcodiert.
metadata.product_name Der Wert ist im Parsercode auf „AWS Key Management Service“ hartcodiert.
metadata.vendor_name Der Wert ist im Parsercode auf „AMAZON“ hartcodiert.
principal.asset.attribute.cloud.environment Der Wert ist im Parsercode auf „AMAZON_WEB_SERVICES“ hartcodiert.

Änderungen

2022-05-27

  • Verbesserung:
  • Der in „metadata.product_name“ gespeicherte Wert wurde in „AWS Key Management Service“ geändert.

Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten