Raccogliere i log di Azure Firewall

Supportato in:

Questo documento spiega come esportare i log di Azure Firewall in Google Security Operations utilizzando l'account di archiviazione Azure. Il parser tenta innanzitutto di elaborare l'input come JSON, estraendo i dati dal campo Record. Se il campo Record è vuoto, il parser utilizza una serie di pattern Grok e istruzioni condizionali per estrarre i campi pertinenti dal messaggio, gestendo formati e variazioni diversi nei log di Azure Firewall.

Prima di iniziare

  • Assicurati di avere un'istanza Google SecOps.
  • Assicurati di avere un tenant Azure attivo.
  • Assicurati di disporre dell'accesso privilegiato ad Azure.

Configura l'account di archiviazione Azure

  1. Nella console di Azure, cerca Account di archiviazione.
  2. Fai clic su + Crea.
  3. Specifica i valori per i seguenti parametri di input:
    • Abbonamento: seleziona l'abbonamento.
    • Gruppo di risorse: seleziona il gruppo di risorse.
    • Regione: seleziona la regione.
    • Prestazioni: seleziona il rendimento (consigliato standard).
    • Redundanza: seleziona la ridondanza (consigliata GRS o LRS).
    • Nome account di archiviazione: inserisci un nome per il nuovo account di archiviazione.
  4. Fai clic su Review + create (Rivedi e crea).
  5. Esamina la panoramica dell'account e fai clic su Crea.
  6. Nella pagina Panoramica dell'account di archiviazione, seleziona il sottomenu Chiavi di accesso in Sicurezza + reti.
  7. Fai clic su Mostra accanto a chiave1 o chiave2.
  8. Fai clic su Copia negli appunti per copiare la chiave.
  9. Salva la chiave in un luogo sicuro per utilizzarla in un secondo momento.
  10. Nella pagina Panoramica dell'account di archiviazione, seleziona il sottomenu Endpoint in Impostazioni.
  11. Fai clic su Copia negli appunti per copiare l'URL dell'endpoint del servizio Blob (ad esempio https://<storageaccountname>.blob.core.windows.net).
  12. Salva l'URL dell'endpoint in un luogo sicuro per utilizzarlo in un secondo momento.

Configurare l'esportazione dei log per i log dei firewall di Azure

  1. Accedi al portale di Azure utilizzando il tuo account con privilegi.
  2. Vai a Firewall e seleziona il firewall richiesto.
  3. Seleziona Monitoraggio > Servizi di diagnostica.
  4. Fai clic su + Aggiungi impostazione di diagnostica.
    • Inserisci un nome descrittivo per l'impostazione di diagnostica.
  5. Seleziona allLogs.
  6. Seleziona la casella di controllo Archivia in un account di archiviazione come destinazione.
    • Specifica l'abbonamento e l'account di archiviazione.
  7. Fai clic su Salva.

Configura un feed in Google SecOps per importare i log di Azure Firewall

  1. Vai a Impostazioni SIEM > Feed.
  2. Fai clic su Aggiungi nuovo.
  3. Nel campo Nome feed, inserisci un nome per il feed (ad esempio Log di Azure Firewall).
  4. Seleziona Microsoft Azure Blob Storage come Tipo di origine.
  5. Seleziona Azure Firewall come Tipo di log.
  6. Fai clic su Avanti.
  7. Specifica i valori per i seguenti parametri di input:

    • URI Azure: l'URL dell'endpoint del blob.
      • ENDPOINT_URL/BLOB_NAME
        • Sostituisci quanto segue:
        • ENDPOINT_URL: l'URL dell'endpoint blob (https://<storageaccountname>.blob.core.windows.net)
        • BLOB_NAME: il nome del blob (ad esempio <logname>-logs)
    • L'URI è un: seleziona il TIPO DI URI in base alla configurazione dello stream di log (File singolo | Directory | Directory che include sottodirectory).
    • Opzioni di eliminazione dell'origine: seleziona l'opzione di eliminazione in base alle tue preferenze.

    • Chiave condivisa: la chiave di accesso ad Azure Blob Storage.

    • Spazio dei nomi degli asset: lo spazio dei nomi degli asset.

    • Etichette di importazione: l'etichetta da applicare agli eventi di questo feed.

  8. Fai clic su Avanti.

  9. Rivedi la configurazione del nuovo feed nella schermata Concludi e poi fai clic su Invia.

Mappatura UDM

Campo log Mappatura UDM Logica
@timestamp metadata.event_timestamp Converte il campo del log non elaborato @timestamp in formato UDM.
categoria security_result.rule_type Mappa il campo del log non elaborato category all'UDM.
operationName metadata.product_event_type Mappa il campo del log non elaborato operationName all'UDM.
properties.Action security_result.action Mappa il campo del log non elaborato properties.Action all'UDM, convertendo ALLOW in ALLOW, DENY in BLOCK e qualsiasi altro valore in UNKNOWN_ACTION.
properties.DestinationIp target.ip Mappa il campo del log non elaborato properties.DestinationIp all'UDM.
properties.DestinationPort target.port Mappa il campo del log non elaborato properties.DestinationPort all'UDM.
properties.DnssecOkBit additional.fields.value.bool_value Mappa il campo del log non elaborato properties.DnssecOkBit all'UDM.
properties.EDNS0BufferSize additional.fields.value.number_value Mappa il campo del log non elaborato properties.EDNS0BufferSize all'UDM.
properties.ErrorMessage additional.fields.value.string_value Mappa il campo del log non elaborato properties.ErrorMessage all'UDM.
properties.ErrorNumber additional.fields.value.number_value Mappa il campo del log non elaborato properties.ErrorNumber all'UDM.
properties.Policy security_result.detection_fields.value Mappa il campo del log non elaborato properties.Policy all'UDM.
properties.Protocol network.ip_protocol Mappa il campo del log non elaborato properties.Protocol a UDM se non è HTTPS o HTTP.
properties.Protocol network.application_protocol Mappa il campo del log non elaborato properties.Protocol a UDM se è HTTPS o HTTP.
properties.QueryClass network.dns.questions.class Mappa il campo del log non elaborato properties.QueryClass a UDM utilizzando una tabella di ricerca per mappare le classi di query DNS.
properties.QueryId network.dns.id Mappa il campo del log non elaborato properties.QueryId all'UDM.
properties.QueryName network.dns.questions.name Mappa il campo del log non elaborato properties.QueryName all'UDM.
properties.QueryType network.dns.questions.type Mappa il campo del log non elaborato properties.QueryType a UDM utilizzando una tabella di ricerca per la mappatura dei tipi di record DNS.
properties.RequestSize network.sent_bytes Mappa il campo del log non elaborato properties.RequestSize all'UDM.
properties.ResponseCode network.dns.response_code Mappa il campo del log non elaborato properties.ResponseCode a UDM utilizzando una tabella di ricerca per la mappatura dei codici di risposta DNS.
properties.ResponseFlags additional.fields.value.string_value Mappa il campo del log non elaborato properties.ResponseFlags all'UDM.
properties.ResponseSize network.received_bytes Mappa il campo del log non elaborato properties.ResponseSize all'UDM.
properties.Rule security_result.rule_name Mappa il campo del log non elaborato properties.Rule all'UDM.
properties.RuleCollection security_result.detection_fields.value Mappa il campo del log non elaborato properties.RuleCollection all'UDM.
properties.RuleCollectionGroup security_result.detection_fields.value Mappa il campo del log non elaborato properties.RuleCollectionGroup all'UDM.
properties.SourceIp principal.ip Mappa il campo del log non elaborato properties.SourceIp all'UDM.
properties.SourcePort principal.port Mappa il campo del log non elaborato properties.SourcePort all'UDM.
properties.msg security_result.description Mappa il campo del log non elaborato properties.msg a UDM dopo aver estratto altri campi.
records.category security_result.rule_type Mappa il campo del log non elaborato records.category all'UDM.
records.operationName metadata.product_event_type Mappa il campo del log non elaborato records.operationName all'UDM.
records.properties.msg Questo campo viene utilizzato per estrarre più campi utilizzando i pattern Grok e non ha una mappatura diretta all'UDM.
records.resourceId metadata.product_log_id Mappa il campo del log non elaborato records.resourceId all'UDM.
resourceId metadata.product_log_id Mappa il campo del log non elaborato resourceId all'UDM.
tempo metadata.event_timestamp Converte il campo del log non elaborato time in formato UDM.
metadata.vendor_name Questo campo viene compilato dall'analizzatore con il valore Microsoft Inc..
metadata.product_name Questo campo viene compilato dall'analizzatore con il valore Azure Firewall Application Rule.
metadata.log_type Questo campo viene compilato dall'analizzatore con il valore AZURE_FIREWALL.
additional.fields.key Questo campo viene compilato dall'analizzatore con la chiave del campo aggiuntivo.
security_result.detection_fields.key Questo campo viene compilato dall'analizzatore con la chiave per il campo di rilevamento.
network.application_protocol Questo campo viene compilato dall'analizzatore con il valore DNS per i log DNS.
metadata.event_type Questo campo viene compilato dall'analizzatore in base al messaggio di log. Può essere NETWORK_CONNECTION, GENERIC_EVENT, STATUS_UPDATE o NETWORK_DNS.

Modifiche

2024-12-26

Correzione di bug:

  • Quando i log contengono la parola chiave Alert, mappa security_result.action a ALLOW.

2024-11-13

Miglioramento:

  • Action è stato mappato a security_result.detection_fields.
  • Signature è stato mappato a security_result.detection_fields.
  • IDS è stato mappato a security_result.detection_fields.
  • Priority è stato mappato a security_result.priority_details.
  • Classification è stato mappato a security_result.detection_fields.

2024-09-04

Miglioramento:

  • from_ip è stato mappato a dns.questions.name per gli eventi DNS.

2024-07-02

Miglioramento:

  • È stato aggiunto il supporto per gestire un nuovo formato del timestamp.

2024-04-29

Miglioramento:

  • È stato aggiunto il supporto per la gestione di un nuovo formato dei log importati.

2024-02-07

Miglioramento:

  • ICMP type è stato mappato a additional.fields.
  • Action e properties.Action sono stati mappati a security_result.action_details.

2023-06-01

Miglioramento:

  • I log JSON appena importati della categoria AZFWDnsQuery vengono analizzati.
  • properties.msg mappato nei log JSON appena importati della categoria AzureFirewallNetworkRule.

2022-04-29

Correzione di bug:

  • I log JSON appena importati vengono analizzati per aumentare la percentuale di analisi complessiva.
  • operationName mappato a metadata.product_event_type.
  • resourceId mappato a metadata.product_log_id.

Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.