AWS VPC-Flusslogs erfassen
In diesem Dokument wird beschrieben, wie Sie AWS-VPC-Flusslogs mit einem Google Security Operations-Weiterleiter erfassen.
Weitere Informationen finden Sie unter Datenaufnahme in Google Security Operations.
Mit einem Datenaufnahmelabel wird der Parser identifiziert, der Roh-Logdaten in das strukturierte UDM-Format normalisiert. Die Informationen in diesem Dokument beziehen sich auf den Parser mit dem Datenaufnahmelabel AWS_VPC_FLOW
.
Hinweise
Der Amazon S3-Bucket muss erstellt worden sein. Weitere Informationen finden Sie unter Ersten S3-Bucket erstellen.
Prüfen Sie, ob die Amazon CloudWatch-Loggruppe erstellt wurde. Weitere Informationen finden Sie unter Mit Protokollgruppen und Protokollstreams arbeiten.
AWS-VPC-Flow konfigurieren
Konfigurieren Sie den AWS VPC-Flow entsprechend der Frage, ob Sie die Protokolle an Amazon S3 oder an Amazon CloudWatch weiterleiten.
Informationen zum Weiterleiten von Protokollen an den Amazon S3-Bucket finden Sie in diesem Dokument im Abschnitt Flow-Logs so konfigurieren, dass sie an Amazon S3 weitergeleitet werden.
Informationen zum Weiterleiten von Protokollen an Amazon CloudWatch finden Sie in diesem Dokument im Abschnitt Flussprotokolle für Amazon CloudWatch konfigurieren.
Flusslogs so konfigurieren, dass Protokolle an Amazon S3 weitergeleitet werden
Nachdem Sie den Amazon S3-Bucket erstellt und konfiguriert haben, können Sie Flussprotokolle für Ihre Netzwerkschnittstellen, Subnetze und VPC-Netzwerke erstellen.
Flussprotokoll für eine Netzwerkschnittstelle erstellen
- Melden Sie sich in der Amazon EC2-Konsole an.
- Wählen Sie im Navigationsbereich Netzwerkschnittstellen aus.
- Wählen Sie eine oder mehrere Netzwerkschnittstellen aus.
- Wählen Sie Aktionen > Ablaufprotokoll erstellen aus.
- Konfigurieren Sie die Flusslog-Einstellungen. Weitere Informationen finden Sie im Abschnitt Einstellungen für Ablaufprotokolle konfigurieren in diesem Dokument.
Flussprotokoll für ein Subnetz erstellen
- Melden Sie sich in der Amazon VPC-Konsole an.
- Wählen Sie im Navigationsbereich Subnetze aus.
- Wählen Sie ein oder mehrere Subnetze aus.
- Wählen Sie Aktionen > Ablaufprotokoll erstellen aus.
- Konfigurieren Sie die Flusslog-Einstellungen. Weitere Informationen finden Sie im Abschnitt Einstellungen für Ablaufprotokolle konfigurieren in diesem Dokument.
Flusslog für eine VPC erstellen
- Melden Sie sich in der Amazon VPC-Konsole an.
- Wählen Sie im Navigationsbereich VPCs aus.
- Wählen Sie eine oder mehrere VPCs aus.
- Wählen Sie Aktionen > Ablaufprotokoll erstellen aus.
- Konfigurieren Sie die Flusslog-Einstellungen. Weitere Informationen finden Sie im Abschnitt Einstellungen für Ablaufprotokolle konfigurieren in diesem Dokument.
Flusslog-Einstellungen konfigurieren
Geben Sie im Bereich Filter den zu protokollierenden IP-Traffic an:
Accept (Akzeptieren): Es wird nur akzeptierter Traffic protokolliert.
Ablehnen: Es wird nur abgelehnter Traffic protokolliert.
Alle: Akzeptierter und abgelehnter Traffic wird protokolliert.
Wählen Sie im Bereich Maximales Aggregationsintervall die Option 1 Minute aus.
Wählen Sie im Bereich Ziel die Option An einen Amazon S3-Bucket senden aus.
Geben Sie im Abschnitt S3-Bucket-ARN die ARN eines Amazon S3-Buckets an.
Geben Sie im Abschnitt Protokolldateiformat die folgenden Formate für den Flussprotokolleintrag an:
- Wenn Sie das Standardformat für Flussprotokolle verwenden möchten, wählen Sie AWS-Standardformat aus.
- Wenn Sie ein benutzerdefiniertes Format erstellen möchten, wählen Sie Benutzerdefiniertes Format aus.
Konfigurieren Sie den VPC-Logfluss mit dem benutzerdefinierten AWS-Logformat, um MSS-True-IP-Funktionen zu verwenden.
Wählen Sie in der Liste Logformat alle Attribute aus.
Sehen Sie sich im Bereich Formatvorschau das benutzerdefinierte Format an.
Wählen Sie im Bereich Logdateiformat die Option Text (Standard) aus.
Entfernen Sie im Bereich Hive-kompatibles S3-Präfix das Häkchen aus dem Kästchen Aktivieren.
Wählen Sie im Bereich Logs nach Zeit partitionieren die Option Alle 1 Stunde (60 Minuten) aus.
Wenn Sie dem Flussprotokoll ein Tag hinzufügen möchten, wählen Sie Neues Tag hinzufügen aus und geben Sie den Tag-Schlüssel und den Tag-Wert an.
Wählen Sie Ablaufprotokoll erstellen aus. Weitere Informationen finden Sie unter Flusslogs in Amazon S3 veröffentlichen.
Flusslogs für Amazon CloudWatch konfigurieren
Sie können Flusslogs entweder über VPCs, Subnetze oder Netzwerkschnittstellen konfigurieren.
Geben Sie im Bereich Filter die Art des zu protokollierenden IP-Traffics an:
Accept (Akzeptieren): Es wird nur akzeptierter Traffic protokolliert.
Ablehnen: Es wird nur abgelehnter Traffic protokolliert.
Alle: Akzeptierter und abgelehnter Traffic wird protokolliert.
Wählen Sie im Bereich Maximales Aggregationsintervall die Option 1 Minute aus.
Wählen Sie im Bereich Ziel die Option An CloudWatch-Protokolle senden aus.
Geben Sie im Abschnitt Ziel-Loggruppe den Namen der von Ihnen erstellten Ziel-Loggruppe an.
Wählen Sie in der Liste IAM-Rolle den Rollennamen aus. Der ausgewählte Rollenname hat Berechtigungen zum Veröffentlichen von Protokollen in CloudWatch-Protokollen.
Die IAM-Rolle muss die folgenden Berechtigungen enthalten:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", "logs:DescribeLogGroups", "logs:DescribeLogStreams" ], "Resource": "*" } ] }
Wählen Sie im Bereich Logeintragsformat die Option Benutzerdefiniertes Format für den Flussprotokolleintrag aus.
Wenn Sie dem Flussprotokoll ein Tag hinzufügen möchten, wählen Sie Neues Tag hinzufügen aus und geben Sie den Tag-Schlüssel und den Tag-Wert an.
Wählen Sie Ablaufprotokoll erstellen aus. Weitere Informationen finden Sie unter Flusslogs in Amazon S3 veröffentlichen.
Amazon S3 kann so konfiguriert werden, dass die Ereignisbenachrichtigungen an Amazon SQS gesendet werden. Weitere Informationen finden Sie unter Einen Bucket für Benachrichtigungen konfigurieren (SNS-Thema oder SQS-Warteschlange).
IAM-Nutzerrichtlinien sind für Amazon S3 und Amazon SQS erforderlich, wenn Sie Amazon SQS (Amazon S3 mit Amazon SQS) als Methode zur Protokollerstellung verwenden. Weitere Informationen finden Sie unter IAM-Richtlinien mit AWS KMS verwenden.
Bestimme anhand des Dienstes und der Region die Endpunkte für die Konnektivität. Orientiere dich dabei an der folgenden AWS-Dokumentation:
Informationen zu Protokollierungsquellen finden Sie unter Endpunkte und Kontingente für die AWS Identity and Access Management.
Informationen zu Amazon S3-Logging-Quellen finden Sie unter Amazon Simple Storage Service-Endpunkte und ‑Kontingente.
Informationen zu Protokollquellen für Amazon SQS finden Sie unter Endpunkte und Kontingente für Amazon Simple Queue Service.
Informationen zu Amazon CloudWatch-Logging-Quellen finden Sie unter Endpunkte und Kontingente für Amazon CloudWatch-Logs.
Google Security Operations-Weiterleiter und syslog für die Aufnahme von AWS-VPC-Flusslogs konfigurieren
- Wählen Sie SIEM-Einstellungen > Weiterleitungen aus.
- Klicken Sie auf Neuen Weiterleiter hinzufügen.
- Geben Sie einen eindeutigen Namen für den Namen des Absenders ein.
- Klicken Sie auf Senden und dann auf Bestätigen. Der Weiterleiter wird hinzugefügt und das Fenster Aufnehmerkonfiguration hinzufügen wird angezeigt.
- Geben Sie im Feld Name des Collectors einen Namen ein.
- Wählen Sie im Feld Logtyp die Option AWS VPC-Flow aus.
- Wählen Sie im Feld Typ des Collectors die Option Syslog aus.
- Konfigurieren Sie die folgenden obligatorischen Eingabeparameter:
- Protokoll: Geben Sie das Verbindungsprotokoll an, das der Collector zum Abhören von syslog-Daten verwendet.
- Adresse: Geben Sie die Ziel-IP-Adresse oder den Hostnamen an, unter dem sich der Collector befindet, und die Adressen der Syslog-Daten.
- Port: Geben Sie den Zielport an, an dem sich der Collector befindet und auf syslog-Daten wartet.
- Klicken Sie auf Senden und dann auf Bestätigen.
Weitere Informationen zu Google Security Operations-Weiterleitungen finden Sie in der Dokumentation zu Google Security Operations-Weiterleitungen. Informationen zu den Anforderungen für die einzelnen Weiterleitungstypen finden Sie unter Weiterleitungskonfiguration nach Typ.
Wenn beim Erstellen von Weiterleitungen Probleme auftreten, wenden Sie sich an den Google Security Operations-Support.
Referenz für die Feldzuordnung
Dieser Parsercode nimmt Roh-AWS-CloudTrail-Logs im JSON-Format auf, die EC2-VPC-Ereignisse beschreiben, und wandelt sie in ein strukturiertes UDM-Format um. Es werden relevante Felder extrahiert, umbenannt, damit sie dem UDM-Schema entsprechen, und die Daten werden für eine einfachere Analyse um zusätzlichen Kontext wie Ressourcentyp, Cloud-Umgebung und Labels ergänzt.
UDM-Zuordnungstabelle für AWS EC2 VPC-Parser
Logfeld (aufsteigend) | UDM-Zuordnung | Logik |
---|---|---|
CidrBlock | event.idm.entity.entity.resource.attribute.labels.cidr_block | Wird direkt aus dem Feld „CidrBlock“ im Rohprotokoll zugeordnet. |
CidrBlock | event.idm.entity.entity.network.ip_subnet_range | Wird direkt aus dem Feld „CidrBlock“ im Rohprotokoll zugeordnet. |
CidrBlockAssociation.AssociationID | event.idm.entity.entity.resource.attribute.labels.cidr_block_association_association_id | Wird direkt aus dem Feld „AssociationID“ im Array „CidrBlockAssociation“ im Rohprotokoll zugeordnet. |
CidrBlockAssociation.CidrBlockState.State | event.idm.entity.entity.resource.attribute.labels.cidr_block_association_cidr_block_state_state | Wird direkt aus dem Feld „State“ im Objekt „CidrBlockState“ des Arrays „CidrBlockAssociation“ im Rohprotokoll zugeordnet. |
CidrBlockAssociation.CidrBlockState.StatusMessage | event.idm.entity.entity.resource.attribute.labels.cidr_block_association_cidr_block_state_status_message | Wird direkt aus dem Feld „StatusMessage“ im Objekt „CidrBlockState“ des Arrays „CidrBlockAssociation“ im Rohprotokoll zugeordnet. |
DhcpOptionsID | event.idm.entity.entity.resource.attribute.labels.dhcp_options_id | Wird direkt aus dem Feld „DhcpOptionsID“ im Rohprotokoll zugeordnet. |
ID | event.idm.entity.entity.resource.product_object_id | Wird direkt aus dem Feld „ID“ im Rohprotokoll zugeordnet, das im Parser in „VpcID“ umbenannt wird. |
ID | event.idm.entity.metadata.product_entity_id | Wird direkt aus dem Feld „ID“ im Rohprotokoll zugeordnet, das im Parser in „VpcID“ umbenannt wird. |
InstanceTenancy | event.idm.entity.entity.resource.attribute.labels.instance_tenancy | Wird direkt aus dem Feld „InstanceTenancy“ im Rohprotokoll zugeordnet. |
IsDefault | event.idm.entity.entity.resource.attribute.labels.is_default | Direkt aus dem Feld „IsDefault“ im Rohprotokoll zugeordnet. |
Ipv6CidrBlockAssociationSet.AssociationID | event.idm.entity.entity.resource.attribute.labels.ipv6_cidr_block_association_set_association_id | Wird direkt aus dem Feld „AssociationID“ im Array „Ipv6CidrBlockAssociationSet“ im Rohprotokoll zugeordnet. |
Ipv6CidrBlockAssociationSet.Ipv6CidrBlock | event.idm.entity.entity.resource.attribute.labels.ipv6_cidr_block_association_set_ipv6_cidr_block | Wird direkt aus dem Feld „Ipv6CidrBlock“ im Array „Ipv6CidrBlockAssociationSet“ im Rohprotokoll zugeordnet. |
Ipv6CidrBlockAssociationSet.Ipv6CidrBlockState.State | event.idm.entity.entity.resource.attribute.labels.ipv6_cidr_block_association_set_ipv6_cidr_block_state_state | Wird direkt aus dem Feld „State“ im Objekt „Ipv6CidrBlockState“ des Arrays „Ipv6CidrBlockAssociationSet“ im Rohprotokoll zugeordnet. |
Ipv6CidrBlockAssociationSet.Ipv6CidrBlockState.StatusMessage | event.idm.entity.entity.resource.attribute.labels.ipv6_cidr_block_association_set_ipv6_cidr_block_state_status_message | Wird direkt aus dem Feld „StatusMessage“ im Objekt „Ipv6CidrBlockState“ des Arrays „Ipv6CidrBlockAssociationSet“ im Rohprotokoll zugeordnet. |
Ipv6CidrBlockAssociationSet.Ipv6Pool | event.idm.entity.entity.resource.attribute.labels.ipv6_cidr_block_association_set_ipv6_pool | Wird direkt aus dem Feld „Ipv6Pool“ im Array „Ipv6CidrBlockAssociationSet“ im Rohprotokoll zugeordnet. |
Ipv6CidrBlockAssociationSet.NetworkBorderGroup | event.idm.entity.entity.resource.attribute.labels.ipv6_cidr_block_association_set_network_border_group | Wird direkt aus dem Feld „NetworkBorderGroup“ im Array „Ipv6CidrBlockAssociationSet“ im Rohprotokoll zugeordnet. |
OwnerID | event.idm.entity.entity.resource.attribute.labels.owner_id | Wird direkt aus dem Feld „OwnerID“ im Rohprotokoll zugeordnet. |
Bundesland | event.idm.entity.entity.resource.attribute.labels.state | Wird direkt aus dem Feld „Status“ im Rohprotokoll zugeordnet. |
TagSet.Key | event.idm.entity.entity.resource.attribute.labels.key | Wird direkt aus dem Feld „Key“ im Array „TagSet“ im Rohprotokoll zugeordnet. Dadurch wird für jedes Tag im „TagSet“ ein neues Label erstellt. |
TagSet.Value | event.idm.entity.entity.resource.attribute.labels.value | Wird direkt aus dem Feld „Wert“ im Array „TagSet“ im Rohprotokoll zugeordnet. Dadurch wird der Wert für jedes entsprechende Label aus dem Feld „Schlüssel“ eingefügt. |
– | event.idm.entity.entity.resource.attribute.cloud.environment | Im Parsercode hartcodiert auf „AMAZON_WEB_SERVICES“. |
– | event.idm.entity.entity.resource.resource_type | Im Parsercode hartcodiert auf „VPC_NETWORK“. |
– | event.idm.entity.metadata.collected_timestamp | Wird mit dem Ereigniszeitstempel ausgefüllt, der aus dem Feld „collection_time“ im Rohprotokoll abgeleitet wird. |
– | event.idm.entity.metadata.entity_type | Im Parsercode hartcodiert auf „RESOURCE“. |
– | event.idm.entity.metadata.product_name | Im Parsercode auf „Amazon VPC“ hartcodiert. |
– | event.idm.entity.metadata.vendor_name | Im Parsercode auf „AWS“ hartcodiert. |
– | events.timestamp | Wird mit dem Ereigniszeitstempel ausgefüllt, der aus dem Feld „collection_time“ im Rohprotokoll abgeleitet wird. |