Raccogliere i log degli asset Tanium
Questo documento spiega come importare i log degli asset Tanium in Google Security Operations utilizzando due metodi diversi. Puoi scegliere tra l'esportazione nativa di Amazon S3 di Tanium Connect o l'inoltro syslog in tempo reale tramite Bindplane. Entrambi i metodi utilizzano il modulo Tanium Connect per estrarre i dati degli asset da Tanium e inoltrarli a Chronicle per l'analisi e il monitoraggio. Il parser trasforma i log non elaborati in un formato strutturato conforme a UDM di Chronicle. A questo scopo, normalizza innanzitutto le coppie chiave-valore di vari formati di input (JSON, Syslog) e poi mappa i campi estratti agli attributi UDM corrispondenti all'interno di oggetti JSON nidificati che rappresentano entità asset, utente e relazione.
Prima di iniziare
Assicurati di soddisfare i seguenti prerequisiti:
- Un'istanza Google SecOps
- Accesso con privilegi alla console Tanium (modulo Connect) per configurare le destinazioni di esportazione
- Scegli il metodo di integrazione che preferisci:
- Opzione 1 (consigliata): accesso con privilegi ad AWS (S3, IAM) per l'esportazione S3 nativa
- Opzione 2: Windows 2016 o versioni successive oppure un host Linux con
systemd
per l'installazione dell'agente Bindplane
Opzione 1: configura l'esportazione dei log delle risorse Tanium utilizzando AWS S3
Crea un bucket Amazon S3
- Crea un bucket Amazon S3 seguendo questa guida utente: Creazione di un bucket
- Salva il nome e la regione del bucket per riferimento futuro (ad esempio,
tanium-asset-logs
). - Crea un utente seguendo questa guida: Creazione di un utente IAM.
- Seleziona l'utente creato.
- Seleziona la scheda Credenziali di sicurezza.
- Fai clic su Crea chiave di accesso nella sezione Chiavi di accesso.
- Seleziona Servizio di terze parti come Caso d'uso.
- Fai clic su Avanti.
- (Facoltativo) Aggiungi un tag di descrizione.
- Fai clic su Crea chiave di accesso.
- Fai clic su Scarica file CSV per salvare la chiave di accesso e la chiave di accesso segreta per un utilizzo successivo.
- Fai clic su Fine.
- Seleziona la scheda Autorizzazioni.
- Fai clic su Aggiungi autorizzazioni nella sezione Criteri per le autorizzazioni.
- Seleziona Aggiungi autorizzazioni.
- Seleziona Allega direttamente le norme.
- Cerca e seleziona il criterio AmazonS3FullAccess.
- Fai clic su Avanti.
- Fai clic su Aggiungi autorizzazioni.
Configurare Tanium Connect per l'esportazione S3
- Accedi alla console Tanium con privilegi di amministratore.
- Vai a Moduli > Connetti > Panoramica e fai clic su Crea connessione.
- Fai clic su Crea.
- Fornisci i seguenti dettagli di configurazione:
- Nome: inserisci un nome descrittivo (ad esempio,
Google SecOps Asset S3 Export
). - Descrizione: (facoltativo) descrizione per questa connessione.
- Attiva: seleziona Attiva per eseguire la routine in base a una programmazione.
- Nome: inserisci un nome descrittivo (ad esempio,
- Fai clic su Avanti.
- Nella configurazione Origine:
- Origine: seleziona Domanda salvata.
- Domanda: scegli una domanda salvata esistente che restituisce dati sugli asset o creane una nuova con sensori correlati agli asset (ad esempio, nome computer, indirizzo IP, piattaforma OS, dominio).
- Gruppo di computer: seleziona il gruppo di computer da scegliere come target per la raccolta dei dati degli asset.
- Fai clic su Avanti.
- Nella configurazione Destinazione:
- Destinazione: scegli AWS S3.
- Nome: inserisci un nome di destinazione (ad esempio,
Chronicle Asset S3
). - ID chiave di accesso AWS: inserisci l'ID chiave di accesso dell'utente IAM.
- Chiave di accesso segreta AWS: inserisci la chiave di accesso segreta dell'utente IAM.
- Nome bucket S3:
tanium-asset-logs
. - Prefisso chiave S3:
tanium/assets/
(prefisso facoltativo per l'organizzazione). - Regione: seleziona la regione AWS in cui si trova il bucket S3.
- Fai clic su Avanti.
- Nella configurazione Formattazione:
- Formato: seleziona JSON per l'esportazione dei dati strutturati.
- Colonne: seleziona i campi degli asset che vuoi esportare e formattali in modo appropriato.
- Fai clic su Avanti.
- Nella configurazione Pianificazione:
- Pianificazione: configura la pianificazione della pubblicazione (ad esempio, ogni ora o ogni giorno).
- Data/ora di inizio: imposta quando deve iniziare l'esecuzione della connessione.
- Fai clic su Salva per creare la connessione e avviare l'esportazione automatica di S3.
(Facoltativo) Crea chiavi e utenti IAM di sola lettura per Google SecOps
- Vai alla console AWS > IAM > Utenti > Aggiungi utenti.
- Fai clic su Add users (Aggiungi utenti).
- Fornisci i seguenti dettagli di configurazione:
- Utente: inserisci
secops-reader
. - Tipo di accesso: seleziona Chiave di accesso - Accesso programmatico.
- Utente: inserisci
- Fai clic su Crea utente.
- Collega la criterio per la lettura minima (personalizzata): Utenti > secops-reader > Autorizzazioni > Aggiungi autorizzazioni > Collega le norme direttamente > Crea norma.
Nell'editor JSON, inserisci la seguente policy:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": ["s3:GetObject"], "Resource": "arn:aws:s3:::tanium-asset-logs/*" }, { "Effect": "Allow", "Action": ["s3:ListBucket"], "Resource": "arn:aws:s3:::tanium-asset-logs" } ] }
Imposta il nome su
secops-reader-policy
.Vai a Crea criterio > cerca/seleziona > Avanti > Aggiungi autorizzazioni.
Vai a Credenziali di sicurezza > Chiavi di accesso > Crea chiave di accesso.
Scarica il file CSV (questi valori vengono inseriti nel feed).
Configura un feed in Google SecOps per importare i log degli asset Tanium
- Vai a Impostazioni SIEM > Feed.
- Fai clic su + Aggiungi nuovo feed.
- Nel campo Nome feed, inserisci un nome per il feed (ad esempio,
Tanium Asset logs
). - Seleziona Amazon S3 V2 come Tipo di origine.
- Seleziona Asset Tanium come Tipo di log.
- Fai clic su Avanti.
- Specifica i valori per i seguenti parametri di input:
- URI S3:
s3://tanium-asset-logs/tanium/assets/
- Opzioni di eliminazione dell'origine: seleziona l'opzione di eliminazione in base alle tue preferenze.
- Età massima del file: includi i file modificati nell'ultimo numero di giorni. Il valore predefinito è 180 giorni.
- ID chiave di accesso: chiave di accesso utente con accesso al bucket S3.
- Chiave di accesso segreta: chiave segreta dell'utente con accesso al bucket S3.
- Spazio dei nomi dell'asset: lo spazio dei nomi dell'asset.
- Etichette di importazione: l'etichetta applicata agli eventi di questo feed.
- URI S3:
- Fai clic su Avanti.
- Controlla la nuova configurazione del feed nella schermata Finalizza e poi fai clic su Invia.
Opzione 2: configura l'esportazione dei log di Tanium Asset utilizzando syslog e Bindplane
Recuperare il file di autenticazione importazione di Google SecOps
- Accedi alla console Google SecOps.
- Vai a Impostazioni SIEM > Agenti di raccolta.
- Scarica il file di autenticazione importazione. Salva il file in modo sicuro sul sistema in cui verrà installato Bindplane.
Recuperare l'ID cliente Google SecOps
- Accedi alla console Google SecOps.
- Vai a Impostazioni SIEM > Profilo.
- Copia e salva l'ID cliente dalla sezione Dettagli dell'organizzazione.
Installa l'agente Bindplane
Installa l'agente Bindplane sul sistema operativo Windows o Linux seguendo le istruzioni riportate di seguito.
Installazione di Windows
- Apri il prompt dei comandi o PowerShell come amministratore.
Esegui questo comando:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
Installazione di Linux
- Apri un terminale con privilegi root o sudo.
Esegui questo comando:
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
Risorse aggiuntive per l'installazione
- Per ulteriori opzioni di installazione, consulta questa guida all'installazione.
Configura l'agente Bindplane per importare Syslog e inviarlo a Google SecOps
Accedi al file di configurazione:
- Individua il file
config.yaml
. In genere, si trova nella directory/etc/bindplane-agent/
su Linux o nella directory di installazione su Windows. - Apri il file utilizzando un editor di testo (ad esempio
nano
,vi
o Blocco note).
- Individua il file
Modifica il file
config.yaml
come segue:receivers: udplog: # Replace the port and IP address as required listen_address: "0.0.0.0:514" exporters: chronicle/chronicle_w_labels: compression: gzip # Adjust the path to the credentials file you downloaded in Step 1 creds_file_path: '/path/to/ingestion-authentication-file.json' # Replace with your actual customer ID from Step 2 customer_id: <PLACEHOLDER_CUSTOMER_ID> endpoint: malachiteingestion-pa.googleapis.com # Add optional ingestion labels for better organization log_type: 'TANIUM_ASSET' raw_log_field: body ingestion_labels: service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - udplog exporters: - chronicle/chronicle_w_labels
- Sostituisci la porta e l'indirizzo IP in base alle esigenze della tua infrastruttura.
- Sostituisci
<PLACEHOLDER_CUSTOMER_ID>
con l'ID cliente effettivo. - Aggiorna
/path/to/ingestion-authentication-file.json
al percorso in cui è stato salvato il file di autenticazione nella sezione Recupera il file di autenticazione per l'importazione di Google SecOps.
Riavvia l'agente Bindplane per applicare le modifiche
Per riavviare l'agente Bindplane in Linux, esegui questo comando:
sudo systemctl restart bindplane-agent
Per riavviare l'agente Bindplane in Windows, puoi utilizzare la console Servizi o inserire il seguente comando:
net stop BindPlaneAgent && net start BindPlaneAgent
Configura l'inoltro Syslog sull'asset Tanium
- Accedi alla console Tanium con privilegi di amministratore.
- Vai a Moduli > Connetti > Panoramica e fai clic su Crea connessione.
- Fai clic su Crea.
- Fornisci i seguenti dettagli di configurazione:
- Nome: inserisci un nome descrittivo (ad esempio,
Google SecOps Asset Integration
). - Descrizione: (facoltativo) descrizione per questa connessione.
- Attiva: seleziona Attiva per eseguire la routine in base a una programmazione.
- Nome: inserisci un nome descrittivo (ad esempio,
- Fai clic su Avanti.
- Nella configurazione Origine:
- Origine: seleziona Domanda salvata.
- Domanda: scegli una domanda salvata esistente che restituisce dati sugli asset o creane una nuova con sensori correlati agli asset.
- Gruppo di computer: seleziona il gruppo di computer da scegliere come target per la raccolta dei dati degli asset.
- Fai clic su Avanti.
- Nella configurazione Destinazione:
- Destinazione: scegli SIEM/Syslog.
- Nome: inserisci un nome di destinazione (ad esempio,
Chronicle Asset Syslog
). - Host: inserisci l'indirizzo IP dell'agente BindPlane.
- Porta: inserisci il numero di porta dell'agente BindPlane (ad esempio,
514
). - Protocollo: seleziona UDP.
- Formato: seleziona SYSLOG RFC 5424.
- Fuso orario: seleziona il fuso orario UTC per una coerenza universale tra i sistemi.
- Fai clic su Avanti.
- Nella configurazione Formattazione:
- Formato: seleziona JSON.
- Colonne: seleziona i campi Asset che vuoi inoltrare (ad esempio, Nome computer, Indirizzo IP, Piattaforma OS, Dominio).
- Fai clic su Avanti.
- Nella configurazione Pianificazione:
- Pianificazione: configura la pianificazione della pubblicazione (ad esempio, ogni ora).
- Data/ora di inizio: imposta quando deve iniziare l'esecuzione della connessione.
- Fai clic su Salva per creare la connessione e iniziare l'inoltro.
Tabella di mappatura UDM
Campo log | Mappatura UDM | Logic |
---|---|---|
application_name | entity.metadata.source_labels.value | Il valore viene estratto dal campo "application_name" se esiste nel log non elaborato. |
application_vendor | entity.metadata.source_labels.value | Il valore viene estratto dal campo "application_vendor" se esiste nel log non elaborato. |
application_version | entity.metadata.product_version | Il valore viene estratto dal campo "application_version" se esiste nel log non elaborato. |
BIOS_Current_Language | entity.metadata.source_labels.value | Il valore viene estratto dal campo "BIOS_Current_Language" se esiste nel log non elaborato. |
BIOS_Release_Date | entity.metadata.source_labels.value | Il valore viene estratto dal campo "BIOS_Release_Date" se esiste nel log non elaborato. |
BIOS_Vendor | entity.metadata.source_labels.value | Il valore viene estratto dal campo "BIOS_Vendor" se esiste nel log non elaborato. |
BIOS_Version | entity.metadata.product_version | Il valore viene estratto dal campo "BIOS_Version" se esiste nel log non elaborato. |
Tipo di telaio | entity.entity.asset.category | Il valore viene estratto dal campo "Tipo di telaio" se esiste nel log non elaborato. |
ID computer | entity.entity.asset.product_object_id | Il valore viene estratto dal campo "ID computer" se esiste nel log non elaborato. Utilizzato anche per compilare entity.relations.entity.asset.asset_id con il prefisso "id: ". |
Nome computer | entity.entity.asset.hostname | Il valore viene preso dal campo "Nome computer" se esiste nel log non elaborato. |
Conteggio | entity.metadata.source_labels.value | Il valore viene estratto dal campo "Conteggio" se esiste nel log non elaborato. |
Endpoint Fingerprint | entity.entity.asset.hardware.serial_number | Il valore viene estratto dal campo "Impronta dell'endpoint" se esiste nel log non elaborato. |
Indirizzo IP | entity.entity.asset.ip | I valori vengono prelevati dal campo "Indirizzo IP" e aggiunti come indirizzi IP separati all'array. |
Ultimo utente che ha eseguito l'accesso | entity.relations.entity.user.userid | Il valore viene estratto dal campo "Ultimo utente che ha eseguito l'accesso", con l'eventuale prefisso del dominio rimosso, se presente nel log non elaborato. |
Ultimo riavvio | entity.entity.asset.last_boot_time | Il valore viene analizzato dal campo "Ultimo riavvio" e formattato come timestamp se esiste nel log non elaborato. |
Indirizzo MAC | entity.entity.asset.mac | I valori vengono prelevati dal campo "Indirizzo MAC" e aggiunti come indirizzi MAC separati all'array. |
Produttore | entity.entity.asset.hardware.manufacturer | Il valore viene estratto dal campo "Produttore" se esiste nel log non elaborato. |
Sistema operativo | entity.entity.asset.platform_software.platform_version | Il valore viene estratto dal campo "Sistema operativo" se esiste nel log non elaborato. Utilizzato per determinare il valore di entity.entity.asset.platform_software.platform (WINDOWS, LINUX o MAC). |
piattaforma | entity.entity.asset.platform_software.platform_version | Il valore viene estratto dal campo "piattaforma" se esiste nel log non elaborato. Utilizzato per determinare il valore di entity.entity.asset.platform_software.platform (WINDOWS, LINUX o MAC). |
serial_number | entity.entity.asset.hardware.serial_number | Il valore viene estratto dal campo "serial_number" se esiste nel log non elaborato. |
versione | entity.entity.asset.platform_software.platform_version | Il valore viene estratto dal campo "version" (versione), se presente nel log non elaborato. Utilizzato per determinare il valore di entity.entity.asset.platform_software.platform (WINDOWS, LINUX o MAC). |
N/D | entity.metadata.collected_timestamp | Impostato sull'ora di creazione del batch. |
N/D | entity.metadata.vendor_name | Impostato sempre su "TANIUM_ASSET". |
N/D | entity.metadata.product_name | Impostato sempre su "TANIUM_ASSET". |
N/D | entity.metadata.entity_type | È sempre impostato su "ASSET". |
N/D | entity.relations.entity_type | Sempre impostato su "USER". |
N/D | entity.relations.relationship | È sempre impostato su "OWNS". |
Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.