AWS Route 53-Protokolle erfassen
In diesem Dokument wird beschrieben, wie Sie AWS CloudTrail so konfigurieren, dass AWS Route 53-DNS-Logs in einem S3-Bucket gespeichert und die Logs von S3 in Google Security Operations aufgenommen werden. Amazon Route 53 bietet DNS-Abfrageprotokolle und die Möglichkeit, Ihre Ressourcen mithilfe von Systemdiagnosen zu überwachen. Route 53 ist in AWS CloudTrail eingebunden, einem Dienst, der einen Datensatz der von einem Nutzer, einer Rolle oder einem AWS-Dienst in Route 53 ausgeführten Aktionen bereitstellt.
Hinweise
- Sie benötigen eine Google SecOps-Instanz.
- Sie benötigen erhöhte Zugriffsrechte für AWS.
AWS CloudTrail und Route 53 konfigurieren
- Melden Sie sich in der AWS Console an.
- Suchen Sie nach Cloudtrail.
- Wenn Sie noch keinen Trail haben, klicken Sie auf Trail erstellen.
- Geben Sie einen Wegnamen an .
- Wählen Sie Neuen S3-Bucket erstellen aus. Sie können auch einen vorhandenen S3-Bucket verwenden.
- Geben Sie einen Namen für den AWS KMS-Alias an oder wählen Sie einen vorhandenen AWS KMS-Schlüssel aus.
- Lassen Sie die anderen Einstellungen unverändert und klicken Sie auf Weiter.
- Wählen Sie Ereignistyp aus und achten Sie darauf, dass Verwaltungsereignisse ausgewählt ist. Diese Ereignisse enthalten Route 53 API-Aufrufe.
- Klicken Sie auf Weiter.
- Prüfen Sie die Einstellungen unter Überprüfen und erstellen.
- Klicken Sie auf Weg erstellen.
- Suchen Sie in der AWS-Konsole nach S3.
- Klicken Sie auf den neu erstellten Log-Bucket und wählen Sie den Ordner AWSLogs aus .
- Klicken Sie auf S3-URI kopieren und speichern Sie sie.
AWS IAM-Nutzer konfigurieren
- Suchen Sie in der AWS Console nach IAM.
- Klicken Sie auf Nutzer.
- Klicken Sie auf Nutzer hinzufügen.
- Gib einen Namen für den Nutzer an, z. B. „chronicle-feed-user“.
- Wählen Sie als AWS-Anmeldedatentyp Zugriffsschlüssel – programmatischer Zugriff aus.
- Klicken Sie auf Next: Permissions.
- Wählen Sie Vorhandene Richtlinien direkt anhängen aus.
- Wählen Sie AmazonS3ReadOnlyAccess oder AmazonS3FullAccess aus.
- Klicken Sie auf Weiter: Tags.
- Optional: Fügen Sie bei Bedarf Tags hinzu.
- Klicken Sie auf Weiter: Überprüfen.
- Überprüfen Sie die Konfiguration und klicken Sie auf Nutzer erstellen.
- Kopieren Sie die Zugriffsschlüssel-ID und den geheimen Zugriffsschlüssel des erstellten Nutzers.
Feed in Google SecOps für die Aufnahme der AWS Route 53-Protokolle konfigurieren
- Gehen Sie zu SIEM-Einstellungen > Feeds.
- Klicken Sie auf Neu hinzufügen.
- Geben Sie im Feld Feedname einen Namen für den Feed ein, z. B. AWS Route 53-Logs.
- Wählen Sie als Quelltyp Amazon S3 aus.
- Wählen Sie AWS Route 53 als Logtyp aus.
- Klicken Sie auf Weiter.
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:/BUCKET_NAME
- Ersetzen Sie
BUCKET_NAME
durch den tatsächlichen Namen des Buckets.
- Ersetzen Sie
- URI ist ein: Wählen Sie Verzeichnis mit Unterverzeichnissen aus.
- Optionen zum Löschen der Quelle: Wählen Sie die gewünschte Löschoption aus.
- Zugriffsschlüssel-ID: Der Nutzerzugriffsschlüssel mit Zugriff auf den S3-Bucket.
- Geheimer Zugriffsschlüssel: Der geheime Schlüssel des Nutzers mit Zugriff auf den S3-Bucket.
- Asset-Namespace: der Asset-Namespace.
- Aufnahmelabels: Das Label, das auf die Ereignisse aus diesem Feed angewendet werden soll.
Klicken Sie auf Weiter.
Prüfen Sie die neue Feedkonfiguration auf dem Bildschirm Abschließen und klicken Sie dann auf Senden.
UDM-Zuordnungstabelle
Logfeld | UDM-Zuordnung | Logik |
---|---|---|
Die Konto-ID von Tinfoil Security | read_only_udm.principal.resource.product_object_id | Die mit der Abfrage verknüpfte AWS-Konto-ID. |
firewall_domain_list_id | read_only_udm.security_result.rule_labels.value | Die ID der Domainliste, zu der die abgefragte Domain gehört. |
firewall_rule_action | read_only_udm.security_result.action | Die Aktion, die von der Firewallregel ausgeführt wurde, die mit der Abfrage übereinstimmt. Mögliche Werte sind „ALLOW“ (Zulassen), „BLOCK“ (Blockieren) oder „UNKNOWN_ACTION“ (UNBEKANNTE_AKTION), wenn die Aktion nicht erkannt wird. |
firewall_rule_group_id | read_only_udm.security_result.rule_id | Die ID der Firewallregelgruppe, die mit der Abfrage übereinstimmt. |
logEvents{}.id | read_only_udm.principal.resource.product_object_id | Die eindeutige ID des Protokollereignisses. Wird als Fallback verwendet, wenn „account_id“ nicht vorhanden ist. |
logEvents{}.message | Dieses Feld wird basierend auf seinem Format in andere UDM-Felder analysiert. | |
logEvents{}.timestamp | read_only_udm.metadata.event_timestamp.seconds | Der Zeitpunkt, zu dem die DNS-Abfrage protokolliert wurde. |
messageType | Mit diesem Feld wird die Struktur der Protokollnachricht bestimmt. | |
Inhaber | read_only_udm.principal.user.userid | Die AWS-Konto-ID des Inhabers des Protokolls. |
query_class | read_only_udm.network.dns.questions.class | Die Klasse der DNS-Abfrage. |
query_name | read_only_udm.network.dns.questions.name | Der abgefragte Domainname. |
query_timestamp | read_only_udm.metadata.event_timestamp.seconds | Die Uhrzeit, zu der die DNS-Abfrage erfolgt ist. |
query_type | read_only_udm.metadata.product_event_type | Der Typ der DNS-Abfrage. |
rcode | read_only_udm.metadata.description | Der Antwortcode der DNS-Abfrage. |
Region | read_only_udm.principal.location.name | Die AWS-Region, in der die Abfrage gestartet wurde. |
srcaddr | read_only_udm.principal.ip | Die IP-Adresse des Clients, der die DNS-Abfrage gestellt hat. |
srcids.instance | read_only_udm.principal.hostname | Die Instanz-ID des Clients, der die DNS-Abfrage gestellt hat. |
srcids.resolver_endpoint | read_only_udm.security_result.rule_labels.value | Die Endpunkt-ID des Resolvers, der die Abfrage verarbeitet hat. |
srcids.resolver_network_interface | read_only_udm.security_result.rule_labels.value | Die Netzwerkschnittstellen-ID des Resolvers, der die Abfrage verarbeitet hat. |
srcport | read_only_udm.principal.port | Die Portnummer des Clients, der die DNS-Abfrage gestellt hat. |
transport | read_only_udm.network.ip_protocol | Das Transportprotokoll, das für die DNS-Abfrage verwendet wird. |
Version | read_only_udm.metadata.product_version | Die Version des Formats für Route 53-Resolver-Abfrageprotokolle. |
– | read_only_udm.metadata.event_type | Hartcodiert auf „NETWORK_DNS“. |
– | read_only_udm.metadata.product_name | Hartcodiert auf „AWS Route 53“. |
– | read_only_udm.metadata.vendor_name | „AMAZON“ ist hartcodiert. |
– | read_only_udm.principal.cloud.environment | Hartcodiert auf „AMAZON_WEB_SERVICES“. |
– | read_only_udm.network.application_protocol | Hartcodiert auf „DNS“. |
– | read_only_udm.network.dns.response_code | Über eine Suchtabelle aus dem Feld „rcode“ zugeordnet. |
– | read_only_udm.network.dns.questions.type | Über eine Suchtabelle aus dem Feld „query_type“ zugeordnet. |
– | read_only_udm.metadata.product_deployment_id | Mit dem Grok-Muster aus dem Feld „logevent.message_data“ extrahiert. |
– | read_only_udm.network.dns.authority.name | Mit dem Grok-Muster aus dem Feld „logevent.message_data“ extrahiert. |
– | read_only_udm.security_result.rule_labels.key | Legen Sie je nach verfügbaren Feldern „firewall_domain_list_id“, „resolver_endpoint“ oder „resolver_network_interface“ fest. |
– | read_only_udm.security_result.action_details | Legen Sie den Wert von „firewall_rule_action“ fest, wenn er nicht „ALLOW“ oder „BLOCK“ ist. |
Änderungen
2024-10-22
- Verbesserung: Das Feld „answers“ wurde auf „network.dns.answers“ umgestellt.
2024-10-17
- Verbesserung: „on_error“ wurde allen Feldern hinzugefügt, bevor sie in UDM zugeordnet wurden.
2023-12-20
- Fehlerkorrektur:
- Es wurde gsub hinzugefügt, um „\"“ durch „#“ zu ersetzen, um SYSLOG in JSON zu konvertieren.
- Gsub hinzugefügt, um „#“ wieder durch „"“ zu ersetzen.
2023-05-08
- Verbesserung:
- Das Grok-Muster für die DNS-Abfrageprotokolle wurde geändert, um ein neues Protokollformat zu unterstützen.
- JSON-Protokolle mit mehreren Ereignissen verarbeiten
2022-08-10
- Zusätzliche Mutationen in Großbuchstaben wurden entfernt.
2022-07-22
- Neu erstellter Parser.
Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten