Raccogliere i log di Amazon CloudFront
Questo documento descrive come raccogliere i log di Amazon CloudFront configurando un feed Google Security Operations.
Per saperne di più, consulta la Panoramica sull'importazione dei dati in Google Security Operations.
Un'etichetta di importazione identifica il parser 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_CLOUDFRONT
.
Prima di iniziare
Assicurati che il bucket Amazon S3 sia stato creato. Per saperne di più, consulta Creare il primo bucket S3.
Configura Amazon CloudFront
- Accedi alla console AWS Management.
- Accedi alla console Amazon S3 e crea il bucket Amazon S3.
- Fai clic su On per attivare la registrazione.
- Nel campo Bucket per i log, specifica il nome del bucket Amazon S3.
- Nel campo Prefisso log, specifica un prefisso facoltativo.
- Dopo aver archiviato i file di log nel bucket Amazon S3, crea una coda SQS e collegala al bucket Amazon S3.
Identificare gli endpoint per la connettività
Controlla i criteri utente di Identity and Access Management e della chiave KMS richiesti per S3, SQS e KMS.
In base al servizio e alla regione, identifica gli endpoint per la connettività facendo riferimento alla seguente documentazione di AWS:
- Per informazioni su eventuali origini di logging, consulta Endpoint e quote di AWS Identity and Access Management.
- Per informazioni sulle origini di logging S3, consulta Endpoint e quote di Amazon Simple Storage Service.
- Per informazioni sulle origini di logging SQS, consulta Endpoint e quote di Amazon Simple Queue Service.
Configurare i feed
Esistono due diversi punti di accesso per configurare i feed nella piattaforma Google SecOps:
- Impostazioni SIEM > Feed
- Hub dei contenuti > Pacchetti di contenuti
Configurare i feed da Impostazioni SIEM > Feed
Per configurare più feed per diversi tipi di log all'interno di questa famiglia di prodotti, consulta Configurare i feed per prodotto.
Per configurare un singolo feed:
- Vai a Impostazioni SIEM > Feed.
- Fai clic su Aggiungi nuovo feed.
- Nella pagina successiva, fai clic su Configura un singolo feed.
- Inserisci un nome univoco per il nome del feed.
- Seleziona Amazon S3 o Amazon SQS come Tipo di origine.
- Seleziona AWS CloudFront come tipo di log.
- Fai clic su Avanti.
- Google SecOps supporta la raccolta dei log utilizzando l'ID chiave di accesso e il metodo segreto. Per creare l'ID chiave di accesso e il segreto, consulta Configurare l'autenticazione dello strumento con AWS.
- In base alla configurazione di Amazon CloudFront che hai creato, specifica i valori per
i seguenti campi:
- Se utilizzi Amazon S3, specifica i valori per i seguenti campi:
- Regione
- URI S3
- L'URI è un
- Opzione di eliminazione dell'origine
- Se utilizzi Amazon SQS, specifica i valori per i seguenti campi:
- Regione
- Nome coda
- Numero di conto
- ID chiave di accesso alla coda
- Chiave di accesso segreta della coda
- Opzione di eliminazione dell'origine
- Se utilizzi Amazon S3, specifica i valori per i seguenti campi:
- Fai clic su Avanti e poi su Invia.
Per inviare i log di Amazon CloudFront al bucket Amazon S3, consulta Configurare e utilizzare i log standard (log di accesso).
Configurare i feed dall'hub dei contenuti
Puoi configurare il feed di importazione in Google SecOps utilizzando Amazon SQS (opzione preferita) o Amazon S3.
Specifica i valori per i seguenti campi:
- Regione: la regione in cui è ospitato il bucket S3 o la coda SQS.
- Nome coda: nome della coda SQS da cui leggere i dati di log.
- Numero di account: il numero di account proprietario della coda SQS.
- ID chiave di accesso alla coda: ID chiave di accesso all'account di 20 caratteri. Ad esempio,
AKIAOSFOODNN7EXAMPLE
. - Queue Secret Access Key (Chiave di accesso segreta della coda): chiave di accesso segreta di 40 caratteri. Ad esempio,
wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
. - Opzione di eliminazione dell'origine: opzione per eliminare file e directory dopo il trasferimento dei dati.
Opzioni avanzate
- Nome feed: un valore precompilato che identifica il feed.
- Tipo di origine: metodo utilizzato per raccogliere i log in Google SecOps.
- Spazio dei nomi dell'asset: spazio dei nomi associato al feed.
- Etichette di importazione: etichette applicate a tutti gli eventi di questo feed.
Per saperne di più sui feed di Google Security Operations, consulta la documentazione sui feed di Google Security Operations. Per informazioni sui requisiti per ciascun tipo di feed, consulta Configurazione dei feed per tipo. Se riscontri problemi durante la creazione dei feed, contatta l'assistenza Google Security Operations.
Riferimento alla mappatura dei campi
Questo parser estrae i campi dai log di AWS CloudFront in formato SYSLOG o JSON, normalizzandoli in UDM. Utilizza pattern grok per analizzare le stringhe di messaggi, gestisce varie trasformazioni dei dati (ad es. conversioni di tipo, ridenominazione) e arricchisce i dati con un contesto aggiuntivo, come l'analisi dello user agent e l'identificazione del protocollo dell'applicazione.
Tabella di mappatura UDM
Campo log | Mappatura UDM | Logic |
---|---|---|
c-ip |
principal.ip |
Mappato direttamente. Mappato anche a principal.asset.ip . |
c-port |
principal.port |
Mappato direttamente. |
cs(Cookie) |
additional.fields[].key : "cookie"additional.fields[].value.string_value : mappato direttamente. |
Mappato in modo condizionale se cs(Cookie) è presente e agent non contiene "://". |
cs(Host) |
principal.hostname |
Mappato direttamente. Mappato anche a principal.asset.hostname . Utilizzato per creare target.url se non sono disponibili altri campi URL. |
cs(Referer) |
network.http.referral_url |
Mappato direttamente. |
cs(User-Agent) |
network.http.user_agent |
Mappato direttamente. Mappato anche a network.http.parsed_user_agent e analizzato nei suoi componenti se non contiene "://". |
cs-bytes |
network.sent_bytes |
Mappato direttamente. Convertito in numero intero senza segno. |
cs-method |
network.http.method |
Mappato direttamente. |
cs-protocol |
network.application_protocol |
Mappato dopo la conversione in maiuscolo. Se il valore non viene riconosciuto come protocollo applicativo standard e cs-protocol-version contiene "HTTP", network.application_protocol viene impostato su "HTTP". |
dport |
target.port |
Mappato direttamente. Convertito in numero intero. |
edge_location |
principal.location.name |
Mappato direttamente. |
fle-encrypted-fields |
additional.fields[].key : "fle-encrypted-fields"additional.fields[].value.string_value : mappato direttamente. |
Mappato in modo condizionale se presente. |
fle-status |
additional.fields[].key : "fle-status"additional.fields[].value.string_value : mappato direttamente. |
Mappato in modo condizionale se presente. |
host |
principal.hostname , principal.asset.hostname |
Mappato direttamente. |
id |
principal.asset_id |
Mappato direttamente con il prefisso "id: ". |
ip |
target.ip , target.asset.ip |
Mappato direttamente. |
log_id |
metadata.product_log_id |
Mappato direttamente. |
resource |
additional.fields[].key : "resource"additional.fields[].value.string_value : mappato direttamente. |
Mappato in modo condizionale se presente. |
result_type |
additional.fields[].key : "result_type"additional.fields[].value.string_value : mappato direttamente. |
Mappato in modo condizionale se presente. |
sc-bytes |
network.received_bytes |
Mappato direttamente. Convertito in numero intero senza segno. |
sc-content-len |
additional.fields[].key : "sc-content-len"additional.fields[].value.string_value : mappato direttamente. |
Mappato in modo condizionale se presente. |
sc-content-type |
additional.fields[].key : "sc-content-type"additional.fields[].value.string_value : mappato direttamente. |
Mappato in modo condizionale se presente. |
sc-status |
network.http.response_code |
Mappato direttamente. Convertito in numero intero. |
ssl-cipher |
network.tls.cipher |
Mappato direttamente. |
ssl-protocol |
network.tls.version |
Mappato direttamente. |
timestamp |
metadata.event_timestamp |
Analizzati e mappati, se disponibili. Sono supportati diversi formati. |
ts |
metadata.event_timestamp |
Analizzati e mappati, se disponibili. È previsto il formato ISO8601. |
url |
target.url |
Mappato direttamente. |
url_back_to_product |
metadata.url_back_to_product |
Mappato direttamente. |
x-edge-detailed-result-type |
additional.fields[].key : "x-edge-detailed-result-type"additional.fields[].value.string_value : mappato direttamente. |
Mappato in modo condizionale se presente. |
x-edge-location |
additional.fields[].key : "x-edge-location"additional.fields[].value.string_value : mappato direttamente. |
Mappato in modo condizionale se presente. |
x-edge-request-id |
additional.fields[].key : "x-edge-request-id"additional.fields[].value.string_value : mappato direttamente. |
Mappato in modo condizionale se presente. |
x-edge-response-result-type |
additional.fields[].key : "x-edge-response-result-type"additional.fields[].value.string_value : mappato direttamente. |
Mappato in modo condizionale se presente. |
x-edge-result-type |
additional.fields[].key : "x-edge-result-type"additional.fields[].value.string_value : mappato direttamente. |
Mappato in modo condizionale se presente. |
x-forwarded-for |
target.ip , target.asset.ip |
Mappato direttamente. Se sono presenti più indirizzi IP (separati da virgole), questi vengono suddivisi e uniti nei rispettivi campi UDM. |
x-host-header |
target.hostname , target.asset.hostname |
Mappato direttamente. Imposta su "NETWORK_HTTP" se sono presenti ip o x-forwarded-for e http_verb . In caso contrario, imposta "GENERIC_EVENT". Codificato su "AWS_CLOUDFRONT". Codificato come "AWS CloudFront". Codificato in modo permanente su "AMAZON". L'ora di importazione della voce di log in Google Security Operations. |
Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.