Raccogliere i log di Cato Networks

Supportato in:

Questo documento spiega come importare i log di Cato Networks in Google Security Operations utilizzando AWS S3. Il parser inizializza innanzitutto un insieme di campi con stringhe vuote e poi analizza i log di Cato Networks in formato JSON. Dopodiché, mappa i campi estratti con i campi corrispondenti nel modello Unified Data Model (UDM) di Google SecOps, gestendo diversi tipi di eventi e arricchendo i dati con un contesto aggiuntivo.

Prima di iniziare

Assicurati di soddisfare i seguenti prerequisiti:

  • Istanza Google SecOps
  • Accesso con privilegi ad AWS S3, AWS IAM
  • Accesso con privilegi a Cato Networks

Configura AWS IAM e il bucket S3

  1. Crea un bucket Amazon S3 seguendo questa guida utente: Creazione di un bucket
  2. Salva il Nome e la Regione del bucket per riferimento futuro.
  3. Crea un utente seguendo questa guida utente: Creazione di un utente IAM.
  4. Seleziona l'utente creato.
  5. Seleziona la scheda Credenziali di sicurezza.
  6. Fai clic su Crea chiave di accesso nella sezione Chiavi di accesso.
  7. Seleziona Servizio di terze parti come Caso d'uso.
  8. Fai clic su Avanti.
  9. (Facoltativo) Aggiungi un tag di descrizione.
  10. Fai clic su Crea chiave di accesso.
  11. Fai clic su Scarica file CSV per salvare la chiave di accesso e la chiave di accesso segreta per riferimento futuro.
  12. Fai clic su Fine.
  13. Seleziona la scheda Autorizzazioni.
  14. Fai clic su Aggiungi autorizzazioni nella sezione Criteri per le autorizzazioni.
  15. Seleziona Aggiungi autorizzazioni.
  16. Seleziona Allega direttamente le norme.
  17. Cerca la norma AmazonS3FullAccess e selezionala.
  18. Fai clic su Avanti.
  19. Fai clic su Aggiungi autorizzazioni.

Configura un nuovo criterio IAM per il bucket S3 per attivare i caricamenti di dati

  1. In Policy, fai clic sulla scheda JSON.
  2. Modifica il seguente JSON, sostituisci <bucket name> con il tuo bucket S3 e poi incollalo nella scheda.

    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Sid": "",
                "Effect": "Allow",
                "Action": [
                    "s3:ListBucket",
                    "s3:GetBucketLocation"
                ],
                "Resource": [
                    "arn:aws:s3:::<bucket name>"
                ]
            },
            {
                "Sid": "",
                "Effect": "Allow",
                "Action": [
                    "s3:PutObject"
                ],
                "Resource": [
                    "arn:aws:s3:::<bucket name>/*"
                ]
            }
        ]
    }
    
  3. Fai clic su Crea criterio.

Configura un nuovo ruolo IAM con l'ARN di Cato

  1. Nella schermata Seleziona entità attendibile, seleziona Policy di attendibilità personalizzata e aggiungi l'ARN di Cato al ruolo: arn:aws:iam::428465470022:role/cato-events-integration

    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Sid": "Statement1",
                "Effect": "Allow",
                "Principal": {
                    "AWS": "arn:aws:iam::428465470022:role/cato-events-integration"
                },
                "Action": "sts:AssumeRole"
            }
        ]
    }
    
  2. Fai clic su Avanti.

  3. Nella schermata Aggiungi autorizzazioni, collega il criterio che hai creato in precedenza al ruolo.

  4. Fai clic su Avanti.

  5. Inserisci il Nome ruolo e fai clic su Crea ruolo.

Configura l'integrazione di eventi e S3 di Cato Networks

  1. Accedi alla UI web di Cato Networks.
  2. Vai a Risorse > Integrazioni eventi.
  3. Fai clic su Abilita integrazione con gli eventi Cato.
  4. Fai clic su New (Nuovo).
  5. Fornisci i seguenti dettagli di configurazione:
    • Inserisci il nome dell'integrazione.
    • Nome bucket: nome identico del bucket S3.
    • Cartella: nome identico per il percorso della cartella all'interno del bucket S3 (se necessario).
    • Regione: la stessa regione del bucket S3.
    • ARN ruolo: copia e incolla l'ARN del ruolo per il bucket S3.
    • (Facoltativo) Definisci le impostazioni del filtro per gli eventi caricati nel bucket S3. Quando definisci più filtri, esiste una relazione AND e vengono caricati gli eventi che corrispondono a tutti i filtri.
  6. Fai clic su Applica.

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

Configura i feed da Impostazioni SIEM > Feed

Per configurare un feed:

  1. Vai a Impostazioni SIEM > Feed.
  2. Fai clic su Aggiungi nuovo feed.
  3. Nella pagina successiva, fai clic su Configura un singolo feed.
  4. Nel campo Nome feed, inserisci un nome per il feed (ad esempio, Cato Logs).
  5. Seleziona Amazon S3 come Tipo di origine.
  6. Seleziona Cato Networks come Tipo di log.
  7. Fai clic su Avanti.
  8. Specifica i valori per i seguenti parametri di input:

    • Region (Regione): la regione in cui si trova il bucket Amazon S3.
    • URI S3: l'URI del bucket (il formato deve essere s3://<your-log-bucket-name>). Sostituisci quanto segue:
      • your-log-bucket-name: il nome del bucket.
    • L'URI è una: seleziona Directory o Directory che include sottodirectory.
    • Opzioni di eliminazione dell'origine: seleziona l'opzione di eliminazione in base alle tue preferenze.
    • ID chiave di accesso: la chiave di accesso utente con accesso al bucket S3.
    • Chiave di accesso segreta: la chiave segreta dell'utente con accesso al bucket S3.
  9. Fai clic su Avanti.

  10. Controlla la nuova configurazione del feed nella schermata Finalizza e poi fai clic su Invia.

Configurare i feed dall'hub dei contenuti

Specifica i valori per i seguenti campi:

  • Region (Regione): la regione in cui si trova il bucket Amazon S3.

    • URI S3: l'URI del bucket (il formato deve essere s3://<your-log-bucket-name>). Sostituisci quanto segue:
      • your-log-bucket-name: il nome del bucket.
    • L'URI è una: seleziona Directory o Directory che include sottodirectory.
    • Opzioni di eliminazione dell'origine: seleziona l'opzione di eliminazione in base alle tue preferenze.
    • ID chiave di accesso: la chiave di accesso utente con accesso al bucket S3.
    • Chiave di accesso segreta: la chiave segreta dell'utente con accesso al bucket S3.

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: lo spazio dei nomi associato al feed.
  • Etichette di importazione: etichette applicate a tutti gli eventi di questo feed.

Tabella di mappatura UDM

Campo log Mappatura UDM Logic
account_id target.user.userid Il valore di questo campo viene estratto dal campo account_id.
azione additional.fields.value.string_value Il valore di questo campo viene estratto dal campo action.
app_stack additional.fields.value.list_value.values.string_value Il valore di questo campo viene estratto dal campo app_stack.
applicazione principal.application Il valore di questo campo viene estratto dal campo application.
categorie additional.fields.value.list_value.values.string_value Il valore di questo campo viene estratto dal campo categories.
clientIP principal.ip, principal.asset.ip Il valore di questo campo viene estratto dal campo clientIP.
creationTime Questo campo viene utilizzato per calcolare il timestamp dell'evento.
custom_categories additional.fields.value.list_value.values.string_value Il valore di questo campo viene estratto dal campo custom_categories.
dest_country target.location.country_or_region Il valore di questo campo viene estratto dal campo dest_country.
dest_country_code target.resource.attribute.labels.value Il valore di questo campo viene estratto dal campo dest_country_code.
dest_ip target.ip, target.asset.ip Il valore di questo campo viene estratto dal campo dest_ip.
dest_port target.port Il valore di questo campo viene estratto dal campo dest_port.
destinationCountry target.location.country_or_region Il valore di questo campo viene estratto dal campo destinationCountry.
destinationIp target.ip, target.asset.ip Il valore di questo campo viene estratto dal campo destinationIp.
destinationName target.hostname, target.asset.hostname Il valore di questo campo viene estratto dal campo destinationName.
device_name network.dhcp.client_hostname Il valore di questo campo viene estratto dal campo device_name.
dns_name additional.fields.value.string_value Il valore di questo campo viene estratto dal campo dns_name.
event_count additional.fields.value.string_value Il valore di questo campo viene estratto dal campo event_count.
event_sub_type metadata.description Il valore di questo campo viene estratto dal campo event_sub_type.
fieldsMap.ISP_name additional.fields.value.string_value Il valore di questo campo viene estratto dal campo fieldsMap.ISP_name.
fieldsMap.action security_result.action_details Il valore di questo campo viene estratto dal campo fieldsMap.action.
fieldsMap.categories security_result.category_details Il valore di questo campo viene estratto dal campo fieldsMap.categories.
fieldsMap.dest_country target.location.country_or_region Il valore di questo campo viene estratto dal campo fieldsMap.dest_country.
fieldsMap.dest_ip target.ip, target.asset.ip Il valore di questo campo viene estratto dal campo fieldsMap.dest_ip.
fieldsMap.dest_port principal.port Il valore di questo campo viene estratto dal campo fieldsMap.dest_port.
fieldsMap.domain_name principal.administrative_domain Il valore di questo campo viene estratto dal campo fieldsMap.domain_name.
fieldsMap.event_sub_type metadata.description Il valore di questo campo viene estratto dal campo fieldsMap.event_sub_type.
fieldsMap.event_type metadata.product_event_type Il valore di questo campo viene estratto dal campo fieldsMap.event_type.
fieldsMap.ip_protocol network.ip_protocol Il valore di questo campo viene estratto dal campo fieldsMap.ip_protocol.
fieldsMap.os_type Questo campo viene utilizzato per determinare il sistema operativo del principal.
fieldsMap.pop_name additional.fields.value.string_value Il valore di questo campo viene estratto dal campo fieldsMap.pop_name.
fieldsMap.rule_id security_result.rule_id Il valore di questo campo viene estratto dal campo fieldsMap.rule_id.
fieldsMap.rule_name security_result.rule_name Il valore di questo campo viene estratto dal campo fieldsMap.rule_name.
fieldsMap.src_ip principal.ip, principal.asset.ip Il valore di questo campo viene estratto dal campo fieldsMap.src_ip.
fieldsMap.src_isp_ip src.ip, src.asset.ip Il valore di questo campo viene estratto dal campo fieldsMap.src_isp_ip.
fieldsMap.time Questo campo viene utilizzato per calcolare il timestamp dell'evento.
file_hash target.file.sha256 Il valore di questo campo viene estratto dal campo file_hash.
file_name target.file.full_path Il valore di questo campo viene estratto dal campo file_name.
file_size target.file.size Il valore di questo campo viene estratto dal campo file_size.
http_host_name principal.hostname, principal.asset.hostname Il valore di questo campo viene estratto dal campo http_host_name.
insertionDate additional.fields.value.string_value Il valore di questo campo viene estratto dal campo insertionDate.
internalId additional.fields.value.string_value Il valore di questo campo viene estratto dal campo internalId.
ip_protocol network.ip_protocol Il valore di questo campo viene estratto dal campo ip_protocol.
is_sanctioned_app security_result.detection_fields.value Il valore di questo campo viene estratto dal campo is_sanctioned_app.
os_type principal.platform Il valore di questo campo viene estratto dal campo os_type.
pop_name Questo campo viene utilizzato per compilare il campo fieldsMap.pop_name.
prettyType metadata.product_event_type Il valore di questo campo viene estratto dal campo prettyType.
regola additional.fields.value.string_value Il valore di questo campo viene estratto dal campo rule.
rule_id security_result.rule_id Il valore di questo campo viene estratto dal campo rule_id.
rule_name security_result.rule_name Il valore di questo campo viene estratto dal campo rule_name.
server_port target.port Il valore di questo campo viene estratto dal campo server_port.
gravità security_result.severity_details Il valore di questo campo viene estratto dal campo severity.
sourceCountry principal.location.country_or_region Il valore di questo campo viene estratto dal campo sourceCountry.
sourceInternalIp principal.ip Il valore di questo campo viene estratto dal campo sourceInternalIp.
sourceIp src.ip, src.asset.ip Il valore di questo campo viene estratto dal campo sourceIp.
sourceName principal.user.user_display_name Il valore di questo campo viene estratto dal campo sourceName.
sport principal.port Il valore di questo campo viene estratto dal campo sport.
src_country Questo campo viene utilizzato per compilare il campo sourceCountry.
src_country_code principal.resource.attribute.labels.value Il valore di questo campo viene estratto dal campo src_country_code.
src_ip principal.ip, principal.asset.ip Il valore di questo campo viene estratto dal campo src_ip.
src_is_site_or_vpn security_result.detection_fields.value Il valore di questo campo viene estratto dal campo src_is_site_or_vpn.
src_isp_ip src.ip, src.asset.ip Il valore di questo campo viene estratto dal campo src_isp_ip.
src_site additional.fields.value.string_value Il valore di questo campo viene estratto dal campo src_site.
src_site_name additional.fields.value.string_value Il valore di questo campo viene estratto dal campo src_site_name.
start Questo campo viene utilizzato per calcolare il timestamp dell'evento.
subnet_name additional.fields.value.string_value Il valore di questo campo viene estratto dal campo subnet_name.
tempo Questo campo viene utilizzato per calcolare il timestamp dell'evento.
time_str Questo campo viene utilizzato per calcolare il timestamp dell'evento.
tunnel_host_logon_names principal.user.userid Il valore di questo campo viene estratto dal campo tunnel_host_logon_names.
URL target.url Il valore di questo campo viene estratto dal campo url.
user_id principal.user.userid Il valore di questo campo viene estratto dal campo user_id.
metadata.event_type Il valore di questo campo è impostato su GENERIC_EVENT e può essere sostituito con NETWORK_CONNECTION, NETWORK_DHCP o NETWORK_HTTP in base all'evento.
metadata.log_type Il valore di questo campo è impostato su CATO_NETWORKS.
metadata.product_name Il valore di questo campo è impostato su SASE.
metadata.vendor_name Il valore di questo campo è impostato su Cato Networks.
network.application_protocol Il valore di questo campo è impostato su DHCP per gli eventi Connected.
network.dhcp.chaddr Il valore di questo campo è impostato su 01:23:45:ab:cd:ef per gli eventi Connected.
network.dhcp.lease_time_seconds Il valore di questo campo è impostato su 86400 per gli eventi Connected.
network.dhcp.opcode Il valore di questo campo è impostato su BOOTREPLY per gli eventi Connected.
network.dhcp.type Il valore di questo campo è impostato su ACK per gli eventi Connected.
network.direction Il valore di questo campo è impostato su OUTBOUND per gli eventi Anti Malware e URL Filtering.
security_result.action Il valore di questo campo è impostato su ALLOW se il campo action non è BLOCK, altrimenti è impostato su BLOCK.
event_type metadata.description Il valore di questo campo viene estratto dal campo event_type.

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