Raccogliere i log di flusso VPC AWS
Questo documento descrive come raccogliere i log di flusso VPC di AWS utilizzando un forwarder di Google Security Operations.
Per ulteriori informazioni, consulta Importazione dei dati in Google Security Operations.
Un'etichetta di importazione identifica l'analizzatore sintattico che normalizza i dati dei log non elaborati
in formato UDM strutturato. Le informazioni contenute in questo documento si applicano al parser con l'etichetta di importazione AWS_VPC_FLOW
.
Prima di iniziare
Assicurati che il bucket Amazon S3 sia stato creato. Per ulteriori informazioni, vedi Creare il primo bucket S3.
Assicurati che il gruppo di log Amazon CloudWatch sia stato creato. Per ulteriori informazioni, consulta Utilizzo di gruppi di log e stream di log.
Configura il flusso VPC AWS
Configura il flusso VPC AWS in base a se inoltri i log ad Amazon S3 o ad Amazon CloudWatch.
Per informazioni sull'inoltro dei log al bucket Amazon S3, consulta la sezione Configurare i log dei flussi per inoltrarli ad Amazon S3 di questo documento.
Per informazioni sull'inoltro dei log ad Amazon CloudWatch, consulta la sezione Configurare i log del flusso in Amazon CloudWatch di questo documento.
Configura i log di flusso per inoltrare i log ad Amazon S3
Dopo aver creato e configurato il bucket Amazon S3, puoi creare log di flusso per le interfacce di rete, le subnet e le reti VPC.
Creare un log di flusso per un'interfaccia di rete
- Accedi alla console Amazon EC2.
- Nel riquadro di navigazione, seleziona Interfacce di rete.
- Seleziona una o più interfacce di rete.
- Seleziona Azioni > Crea log di flusso.
- Configura le impostazioni dei log di flusso. Per ulteriori informazioni, consulta la sezione Configura le impostazioni dei log dei flussi di questo documento.
Creare un log di flusso per una subnet
- Accedi alla console Amazon VPC.
- Nel riquadro di navigazione, seleziona Subnet.
- Seleziona una o più subnet.
- Seleziona Azioni > Crea log di flusso.
- Configura le impostazioni dei log di flusso. Per ulteriori informazioni, consulta la sezione Configura le impostazioni dei log dei flussi di questo documento.
Creare un log di flusso per una VPC
- Accedi alla console Amazon VPC.
- Nel riquadro di navigazione, seleziona VPC.
- Seleziona una o più VPC.
- Seleziona Azioni > Crea log di flusso.
- Configura le impostazioni dei log di flusso. Per ulteriori informazioni, consulta la sezione Configura le impostazioni dei log dei flussi di questo documento.
Configura le impostazioni dei log di flusso
Nella sezione Filtro, specifica il traffico IP da registrare:
Accetta: registra solo il traffico accettato.
Rifiuta: registra solo il traffico rifiutato.
Tutto: registra il traffico accettato e rifiutato.
Nella sezione Intervallo di aggregazione massimo, seleziona 1 minuto.
Nella sezione Destinazione, seleziona Invia a un bucket Amazon S3.
Nella sezione ARN del bucket S3, specifica l'ARN di un bucket Amazon S3.
Nella sezione Formato record del log, specifica i seguenti formati per il record del log di flusso:
- Per utilizzare il formato dei record dei log flusso predefinito, seleziona Formato predefinito AWS.
- Per creare un formato personalizzato, seleziona Formato personalizzato.
Configura il flusso dei log VPC con il formato dei log AWS personalizzato per utilizzare le funzionalità di MSS True IP.
Nell'elenco Formato log, seleziona tutti gli attributi.
Nella sezione Anteprima formato, esamina il formato personalizzato.
Nella sezione Formato file log, seleziona Testo (predefinito).
Nella sezione Prefisso S3 compatibile con Hive, mantieni deselezionata la casella di controllo Attiva.
Nella sezione Partiziona i log in base al tempo, seleziona Ogni 1 ora (60 min).
Per aggiungere un tag al log del flusso, seleziona Aggiungi nuovo tag e specifica la chiave e il valore del tag.
Seleziona Crea log di flusso. Per ulteriori informazioni, consulta Pubblicare i log dei flussi in Amazon S3.
Configura i log di flusso in Amazon CloudWatch
Puoi configurare i log di flusso da VPC, subnet o interfacce di rete.
Nella sezione Filtro, specifica il tipo di traffico IP da registrare:
Accetta: registra solo il traffico accettato.
Rifiuta: registra solo il traffico rifiutato.
Tutto: registra il traffico accettato e rifiutato.
Nella sezione Intervallo di aggregazione massimo, seleziona 1 minuto.
Nella sezione Destinazione, seleziona Invia a Log di CloudWatch.
Nella sezione Gruppo di log di destinazione, fornisci il nome del gruppo di log di destinazione che hai creato.
Nell'elenco Ruolo IAM, seleziona il nome del ruolo. Il nome del ruolo selezionato dispone delle autorizzazioni per pubblicare i log nei log di CloudWatch.
Il ruolo IAM deve includere le seguenti autorizzazioni:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", "logs:DescribeLogGroups", "logs:DescribeLogStreams" ], "Resource": "*" } ] }
Nella sezione Formato record del log, seleziona Formato personalizzato per il record del log di flusso.
Per aggiungere un tag al log del flusso, seleziona Aggiungi nuovo tag e specifica la chiave e il valore del tag.
Seleziona Crea log di flusso. Per ulteriori informazioni, consulta Pubblicare i log dei flussi in Amazon S3.
Amazon S3 può essere configurato per inviare le notifiche di eventi ad Amazon SQS. Per ulteriori informazioni, consulta Configurare un bucket per le notifiche (argomento SNS o coda SQS).
I criteri utente IAM sono obbligatori per Amazon S3 e Amazon SQS se utilizzi Amazon SQS (Amazon S3 che utilizza Amazon SQS) come metodo di raccolta dei log. Per ulteriori informazioni, consulta Utilizzare i criteri IAM con AWS KMS.
In base al servizio e alla regione, identifica gli endpoint per la connettività facendo riferimento alla seguente documentazione AWS:
Per informazioni su eventuali origini di log, consulta Endpoint e quote di AWS Identity and Access Management.
Per informazioni sulle origini di log di Amazon S3, consulta Endpoint e quote di Amazon Simple Storage Service.
Per informazioni sulle origini di log di Amazon SQS, consulta Endpoint e quote di Amazon Simple Queue Service.
Per informazioni sulle origini di log di Amazon CloudWatch, consulta Prezzi e quote degli endpoint dei log di Amazon CloudWatch.
Configura il forwarder di Google Security Operations e syslog per importare i log di flusso VPC di AWS
- Seleziona Impostazioni SIEM > Inoltratori.
- Fai clic su Aggiungi nuovo mittente.
- Inserisci un nome univoco per il nome del mittente.
- Fai clic su Invia e poi su Conferma. Il forwarder viene aggiunto e viene visualizzata la finestra Aggiungi configurazione del collettore.
- Digita un nome nel campo Nome del raccoglitore.
- Nel campo Tipo di log, seleziona Flusso VPC AWS.
- Nel campo Tipo di raccoglitore, seleziona Syslog.
- Configura i seguenti parametri di input obbligatori:
- Protocollo: specifica il protocollo di connessione che il collector utilizzerà per ascoltare i dati syslog.
- Indirizzo: specifica l'indirizzo IP o il nome host di destinazione in cui risiede il collector e gli indirizzi dei dati syslog.
- Porta: specifica la porta di destinazione in cui risiede il raccoglitore e che ascolta i dati syslog.
- Fai clic su Invia e poi su Conferma.
Per ulteriori informazioni sui forwarder di Google Security Operations, consulta la documentazione dei forwarder di Google Security Operations. Per informazioni sui requisiti per ciascun tipo di inoltro, consulta Configurazione degli inoltratori per tipo.
Se riscontri problemi durante la creazione dei reindirizzamenti, contatta l'assistenza di Google Security Operations.
Riferimento alla mappatura dei campi
Questo codice del parser prende i log non elaborati di AWS CloudTrail in formato JSON che descrivono gli eventi VPC EC2 e li trasforma in un formato UDM strutturato. Estrae i campi pertinenti, li rinomina in modo che corrispondano allo schema UDM e arricchisce i dati con un contesto aggiuntivo, come il tipo di risorsa, l'ambiente cloud e le etichette, per facilitare l'analisi.
Tabella di mappatura UDM per l'analizzatore VPC AWS EC2
Campo log (crescente) | Mappatura UDM | Logica |
---|---|---|
CidrBlock | event.idm.entity.entity.resource.attribute.labels.cidr_block | Mappato direttamente dal campo "CidrBlock" nel log non elaborato. |
CidrBlock | event.idm.entity.entity.network.ip_subnet_range | Mappato direttamente dal campo "CidrBlock" nel log non elaborato. |
CidrBlockAssociation.AssociationID | event.idm.entity.entity.resource.attribute.labels.cidr_block_association_association_id | Mappato direttamente dal campo "AssociationID" all'interno dell'array "CidrBlockAssociation" nel log non elaborato. |
CidrBlockAssociation.CidrBlockState.State | event.idm.entity.entity.resource.attribute.labels.cidr_block_association_cidr_block_state_state | Mappato direttamente dal campo "Stato" all'interno dell'oggetto "CidrBlockState" dell'array "CidrBlockAssociation" nel log non elaborato. |
CidrBlockAssociation.CidrBlockState.StatusMessage | event.idm.entity.entity.resource.attribute.labels.cidr_block_association_cidr_block_state_status_message | Mappato direttamente dal campo "StatusMessage" all'interno dell'oggetto "CidrBlockState" dell'array "CidrBlockAssociation" nel log non elaborato. |
DhcpOptionsID | event.idm.entity.entity.resource.attribute.labels.dhcp_options_id | Mappato direttamente dal campo "DhcpOptionsID" nel log non elaborato. |
ID | event.idm.entity.entity.resource.product_object_id | Mappato direttamente dal campo "ID" nel log non elaborato, che viene rinominato in "VpcID" nel parser. |
ID | event.idm.entity.metadata.product_entity_id | Mappato direttamente dal campo "ID" nel log non elaborato, che viene rinominato in "VpcID" nell'analizzatore. |
InstanceTenancy | event.idm.entity.entity.resource.attribute.labels.instance_tenancy | Mappato direttamente dal campo "InstanceTenancy" nel log non elaborato. |
IsDefault | event.idm.entity.entity.resource.attribute.labels.is_default | Mappato direttamente dal campo "IsDefault" nel log non elaborato. |
Ipv6CidrBlockAssociationSet.AssociationID | event.idm.entity.entity.resource.attribute.labels.ipv6_cidr_block_association_set_association_id | Mappato direttamente dal campo "AssociationID" all'interno dell'array "Ipv6CidrBlockAssociationSet" nel log non elaborato. |
Ipv6CidrBlockAssociationSet.Ipv6CidrBlock | event.idm.entity.entity.resource.attribute.labels.ipv6_cidr_block_association_set_ipv6_cidr_block | Mappato direttamente dal campo "Ipv6CidrBlock" all'interno dell'array "Ipv6CidrBlockAssociationSet" nel log non elaborato. |
Ipv6CidrBlockAssociationSet.Ipv6CidrBlockState.State | event.idm.entity.entity.resource.attribute.labels.ipv6_cidr_block_association_set_ipv6_cidr_block_state_state | Mappato direttamente dal campo "Stato" all'interno dell'oggetto "Ipv6CidrBlockState" dell'array "Ipv6CidrBlockAssociationSet" nel log non elaborato. |
Ipv6CidrBlockAssociationSet.Ipv6CidrBlockState.StatusMessage | event.idm.entity.entity.resource.attribute.labels.ipv6_cidr_block_association_set_ipv6_cidr_block_state_status_message | Mappato direttamente dal campo "StatusMessage" all'interno dell'oggetto "Ipv6CidrBlockState" dell'array "Ipv6CidrBlockAssociationSet" nel log non elaborato. |
Ipv6CidrBlockAssociationSet.Ipv6Pool | event.idm.entity.entity.resource.attribute.labels.ipv6_cidr_block_association_set_ipv6_pool | Mappato direttamente dal campo "Ipv6Pool" all'interno dell'array "Ipv6CidrBlockAssociationSet" nel log non elaborato. |
Ipv6CidrBlockAssociationSet.NetworkBorderGroup | event.idm.entity.entity.resource.attribute.labels.ipv6_cidr_block_association_set_network_border_group | Mappato direttamente dal campo "NetworkBorderGroup" all'interno dell'array "Ipv6CidrBlockAssociationSet" nel log non elaborato. |
OwnerID | event.idm.entity.entity.resource.attribute.labels.owner_id | Mappato direttamente dal campo "OwnerID" nel log non elaborato. |
Stato | event.idm.entity.entity.resource.attribute.labels.state | Mappato direttamente dal campo "Stato" nel log non elaborato. |
TagSet.Key | event.idm.entity.entity.resource.attribute.labels.key | Mappato direttamente dal campo "Key" all'interno dell'array "TagSet" nel log non elaborato. Viene creata una nuova etichetta per ogni tag in "TagSet". |
TagSet.Value | event.idm.entity.entity.resource.attribute.labels.value | Mappato direttamente dal campo "Valore" all'interno dell'array "TagSet" nel log non elaborato. In questo modo viene inserito il valore per ogni etichetta corrispondente creata dal campo "Chiave". |
N/D | event.idm.entity.entity.resource.attribute.cloud.environment | Hardcoded su "AMAZON_WEB_SERVICES" nel codice del parser. |
N/D | event.idm.entity.entity.resource.resource_type | Hardcoded su "VPC_NETWORK" nel codice del parser. |
N/D | event.idm.entity.metadata.collected_timestamp | Viene completato con il timestamp dell'evento, che viene ricavato dal campo "collection_time" nel log non elaborato. |
N/D | event.idm.entity.metadata.entity_type | Hardcoded su "RESOURCE" nel codice del parser. |
N/D | event.idm.entity.metadata.product_name | Hardcoded su "Amazon VPC" nel codice del parser. |
N/D | event.idm.entity.metadata.vendor_name | Hardcoded su "AWS" nel codice del parser. |
N/D | events.timestamp | Viene completato con il timestamp dell'evento, che viene ricavato dal campo "collection_time" nel log non elaborato. |