Raccogliere i log di Check Point EDR
Questo documento spiega come importare i log di Check Point Antivirus in Google Security Operations utilizzando Bindplane. Il parser gestisce i log di Check Point SandBlast, convertendo i log formattati SYSLOG + KV e SYSLOG + CEF nel modello UDM (Unified Data Model). Il parser estrae i campi dai messaggi CEF utilizzando i moduli inclusi e li mappa ai campi UDM, gestendo vari tipi di eventi e arricchendo i dati con un contesto aggiuntivo dai log non elaborati. Per i messaggi non CEF, il parser utilizza l'estrazione di coppie chiave/valore, i pattern grok e la logica condizionale per mappare i campi pertinenti allo schema UDM EDR.
Prima di iniziare
Assicurati di soddisfare i seguenti prerequisiti:
- Istanza Google SecOps
- Windows 2016 o versioni successive oppure un host Linux con
systemd
- Se l'esecuzione avviene tramite un proxy, le porte del firewall sono aperte
- Accesso privilegiato all'appliance Check Point con SandBlast
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
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 di 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 la guida all'installazione.
Configura l'agente Bindplane per importare Syslog e inviarli 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: '/path/to/ingestion-authentication-file.json' # Replace with your actual customer ID from Step 2 customer_id: <customer_id> endpoint: malachiteingestion-pa.googleapis.com # Add optional ingestion labels for better organization ingestion_labels: log_type: 'CHECKPOINT_EDR' raw_log_field: body 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
<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
Configurare Syslog nella serie di appliance Checkpoint 1500
- Accedi all'appliance Checkpoint.
- Vai a Log e monitoraggio > Server di log > Server Syslog.
- Fai clic su Configura.
- Fornisci i seguenti dettagli di configurazione:
- Protocollo: seleziona UDP.
- Nome: inserisci un nome descrittivo.
- Indirizzo IP: inserisci l'indirizzo IP dell'agente Bindplane.
- Porta: inserisci il numero di porta dell'agente Bindplane.
- Seleziona Attiva il server di log.
- Seleziona i log da inoltrare: sia i log di sistema che quelli di sicurezza.
- Fai clic su Applica.
Tabella di mappatura UDM
Campo log | Mappatura UDM | Logic |
---|---|---|
action |
event.idm.read_only_udm.security_result.action |
Mappato direttamente dal campo CEF action . |
action_comment |
event.idm.read_only_udm.additional.fields[<N>].key : action_comment event.idm.read_only_udm.additional.fields[<N>].value.string_value : valore di action_comment |
Mappato direttamente dal campo action_comment . |
action_details |
event.idm.read_only_udm.security_result.action_details |
Mappato direttamente dal campo CEF action_details . |
additional_info |
event.idm.read_only_udm.additional.fields[<N>].key : additional_info event.idm.read_only_udm.additional.fields[<N>].value.string_value : valore di additional_info |
Mappato direttamente dal campo additional_info . |
am_update_proxy |
event.idm.read_only_udm.intermediary.domain.name |
Mappato direttamente dal campo am_update_proxy . |
am_update_source |
event.idm.read_only_udm.target.url |
Mappato direttamente dal campo am_update_source . |
client_version |
event.idm.read_only_udm.metadata.product_version |
Mappato direttamente dal campo client_version . |
cn1 |
event.idm.read_only_udm.security_result.severity |
Mappato dal campo CEF cn1 e convertito in valori di gravità UDM (CRITICAL, HIGH, MEDIUM, LOW, INFO). |
cs1 |
event.idm.read_only_udm.additional.fields[<N>].key : Connectivity State event.idm.read_only_udm.additional.fields[<N>].value.string_value : valore di cs1 |
Mappato direttamente dal campo cs1 . |
description |
event.idm.read_only_udm.metadata.description |
Mappato direttamente dal campo CEF description . |
deviceDirection |
event.idm.read_only_udm.network.direction |
Mappato dal campo deviceDirection . Un valore di 0 viene mappato a INBOUND , gli altri valori non vengono mappati. |
deviceFacility |
event.idm.read_only_udm.additional.fields[<N>].key : deviceFacility event.idm.read_only_udm.additional.fields[<N>].value.string_value : valore di deviceFacility |
Mappato direttamente dal campo deviceFacility . |
dst |
event.idm.read_only_udm.network.target.ip |
Mappato direttamente dal campo dst quando event_type è Firewall . |
engine_ver |
event.idm.read_only_udm.additional.fields[<N>].key : engine_ver event.idm.read_only_udm.additional.fields[<N>].value.string_value : valore di engine_ver |
Mappato direttamente dal campo engine_ver . |
ep_rule_id |
event.idm.read_only_udm.firewall.firewall_rule_id |
Mappato direttamente dal campo ep_rule_id quando event_type è Firewall . |
event_type |
event.idm.read_only_udm.metadata.product_event_type |
Mappato direttamente dal campo CEF event_type . |
failed_updates |
event.idm.read_only_udm.additional.fields[<N>].key : failed_updates event.idm.read_only_udm.additional.fields[<N>].value.string_value : valore di failed_updates |
Mappato direttamente dal campo failed_updates . |
file_md5 |
event.idm.read_only_udm.source_file.hash_md5 |
Mappato direttamente dal campo file_md5 quando event_type è TE Event . |
file_name |
event.idm.read_only_udm.source_file.file_name |
Mappato direttamente dal campo file_name quando event_type è TE Event . |
file_sha1 |
event.idm.read_only_udm.source_file.hash_sha1 |
Mappato direttamente dal campo file_sha1 quando event_type è TE Event . |
file_sha256 |
event.idm.read_only_udm.source_file.hash_sha256 |
Mappato direttamente dal campo file_sha256 quando event_type è TE Event . |
host_type |
event.idm.read_only_udm.principal.asset.type |
Mappato dal campo host_type . Desktop viene convertito in WORKSTATION , poi il valore viene convertito in maiuscolo. |
ifdir |
event.idm.read_only_udm.network.direction |
Mappato direttamente dal campo ifdir e convertito in maiuscolo quando event_type è Firewall . |
installed_products |
event.idm.read_only_udm.principal.asset.software.name |
Mappato direttamente dal campo installed_products . |
is_scanned |
sec_res.detection_fields[<N>].key : is_scanned sec_res.detection_fields[<N>].value : valore di is_scanned |
Mappato direttamente dal campo is_scanned . |
local_time |
event.idm.read_only_udm.additional.fields[<N>].key : local_time event.idm.read_only_udm.additional.fields[<N>].value.string_value : valore di local_time |
Mappato direttamente dal campo local_time . |
log_type |
event.idm.read_only_udm.metadata.log_type |
Mappato direttamente dal campo log_type . |
loguid |
event.idm.read_only_udm.metadata.product_log_id |
Mappato direttamente dal campo loguid . |
machine_guid |
event.idm.read_only_udm.principal.asset.product_object_id |
Mappato direttamente dal campo machine_guid . |
media_authorized |
event.idm.read_only_udm.additional.fields[<N>].key : media_authorized event.idm.read_only_udm.additional.fields[<N>].value.string_value : valore di media_authorized |
Mappato direttamente dal campo media_authorized . |
media_class_id |
event.idm.read_only_udm.additional.fields[<N>].key : media_class_id event.idm.read_only_udm.additional.fields[<N>].value.string_value : valore di media_class_id |
Mappato direttamente dal campo media_class_id . |
media_description |
event.idm.read_only_udm.additional.fields[<N>].key : media_description event.idm.read_only_udm.additional.fields[<N>].value.string_value : valore di media_description |
Mappato direttamente dal campo media_description . |
media_encrypted |
event.idm.read_only_udm.additional.fields[<N>].key : media_encrypted event.idm.read_only_udm.additional.fields[<N>].value.string_value : valore di media_encrypted |
Mappato direttamente dal campo media_encrypted . |
media_manufacturer |
event.idm.read_only_udm.additional.fields[<N>].key : media_manufacturer event.idm.read_only_udm.additional.fields[<N>].value.string_value : valore di media_manufacturer |
Mappato direttamente dal campo media_manufacturer . |
media_type |
event.idm.read_only_udm.additional.fields[<N>].key : media_type event.idm.read_only_udm.additional.fields[<N>].value.string_value : valore di media_type |
Mappato direttamente dal campo media_type . |
msg |
event.idm.read_only_udm.metadata.description |
Mappato direttamente dal campo CEF msg . |
origin |
event.idm.read_only_udm.about.ip |
Mappato direttamente dal campo CEF origin . |
os_name |
event.idm.read_only_udm.additional.fields[<N>].key : os_name event.idm.read_only_udm.additional.fields[<N>].value.string_value : valore di os_name |
Mappato direttamente dal campo os_name . |
os_version |
event.idm.read_only_udm.principal.asset.platform_software.platform_version |
Mappato direttamente dal campo os_version . |
policy_date |
event.idm.read_only_udm.additional.fields[<N>].key : policy_date event.idm.read_only_udm.additional.fields[<N>].value.string_value : valore di policy_date |
Mappato direttamente dal campo policy_date . |
policy_guid |
event.idm.read_only_udm.principal.resource.product_object_id |
Mappato direttamente dal campo policy_guid . |
policy_name |
event.idm.read_only_udm.principal.resource.name |
Mappato direttamente dal campo policy_name . |
policy_number |
event.idm.read_only_udm.principal.resource.product_object_id |
Mappato direttamente dal campo policy_number . |
policy_type |
event.idm.read_only_udm.additional.fields[<N>].key : policy_type event.idm.read_only_udm.additional.fields[<N>].value.string_value : valore di policy_type |
Mappato direttamente dal campo policy_type . |
policy_version |
event.idm.read_only_udm.additional.fields[<N>].key : policy_version event.idm.read_only_udm.additional.fields[<N>].value.string_value : valore di policy_version |
Mappato direttamente dal campo policy_version . |
product |
event.idm.read_only_udm.metadata.product_name |
Mappato direttamente dal campo CEF product . |
proto |
event.idm.read_only_udm.network.protocol |
Mappato direttamente dal campo proto quando event_type è Firewall . |
reading_data_access |
event.idm.read_only_udm.additional.fields[<N>].key : reading_data_access event.idm.read_only_udm.additional.fields[<N>].value.string_value : valore di reading_data_access |
Mappato direttamente dal campo reading_data_access . |
requestClientApplication |
event.idm.read_only_udm.network.http.user_agent |
Mappato direttamente dal campo requestClientApplication . |
result |
event.idm.read_only_udm.security_result.summary |
Mappato direttamente dal campo result . |
rt |
event.idm.read_only_udm.metadata.event_timestamp.seconds |
Mappato dal campo rt , diviso per 1000 e la parte intera viene considerata come secondi. |
rule_name |
event.idm.read_only_udm.firewall.firewall_rule |
Mappato direttamente dal campo rule_name quando event_type è Firewall . |
s_port |
event.idm.read_only_udm.network.client.port |
Mappato direttamente dal campo s_port quando event_type è Firewall . |
sequencenum |
event.idm.read_only_udm.additional.fields[<N>].key : sequencenum event.idm.read_only_udm.additional.fields[<N>].value.string_value : valore di sequencenum |
Mappato direttamente dal campo sequencenum . |
service |
event.idm.read_only_udm.network.target.port |
Mappato direttamente dal campo service quando event_type è Firewall . |
severity |
event.idm.read_only_udm.security_result.severity |
Mappato dal campo severity e convertito in valori di gravità UDM (CRITICAL, HIGH, MEDIUM, LOW, INFO). |
shost |
event.idm.read_only_udm.principal.hostname |
Mappato direttamente dal campo CEF shost . |
sig_ver |
event.idm.read_only_udm.additional.fields[<N>].key : sig_ver event.idm.read_only_udm.additional.fields[<N>].value.string_value : valore di sig_ver |
Mappato direttamente dal campo sig_ver . |
src |
event.idm.read_only_udm.principal.ip |
Mappato direttamente dal campo CEF src . |
src_machine_name |
event.idm.read_only_udm.principal.hostname |
Mappato direttamente dal campo src_machine_name quando event_type è vuoto. |
subject |
event.idm.read_only_udm.task.task_name |
Mappato direttamente dal campo subject quando event_type è vuoto. |
suser |
event.idm.read_only_udm.principal.user.user_display_name |
Mappato direttamente dal campo CEF suser . |
time |
event.idm.read_only_udm.metadata.event_timestamp.seconds |
Mappato direttamente dal campo time e convertito in secondi Unix epoch. |
user_name |
event.idm.read_only_udm.principal.user.email_addresses |
Mappato direttamente dal campo CEF user_name . |
user_sid |
event.idm.read_only_udm.principal.user.windows_sid |
Mappato direttamente dal campo user_sid . |
version |
event.idm.read_only_udm.additional.fields[<N>].key : version event.idm.read_only_udm.additional.fields[<N>].value.string_value : valore di version |
Mappato direttamente dal campo version . |
writing_data_access |
event.idm.read_only_udm.additional.fields[<N>].key : writing_data_access event.idm.read_only_udm.additional.fields[<N>].value.string_value : valore di writing_data_access |
Mappato direttamente dal campo writing_data_access . |
N/A | event.idm.read_only_udm.metadata.event_type |
Imposta GENERIC_EVENT se nel log non sono presenti principal.ip , principal.hostname o principal.mac ; in caso contrario, imposta STATUS_UPDATE . |
N/A | event.idm.read_only_udm.metadata.vendor_name |
Valore costante: Check Point . |
N/A | event.idm.read_only_udm.metadata.log_type |
Valore costante: CHECKPOINT_EDR . |
N/A | event.idm.read_only_udm.principal.asset.platform_software.platform |
Imposta su WINDOWS se os_name contiene WINDOWS o Windows . |
N/A | event.idm.read_only_udm.network.http.user_agent |
Imposta su Check Point Endpoint Security Client se è presente requestClientApplication . |
N/A | event.edr.data_source |
Valore costante: CHECKPOINT_SANDBLAST quando message non contiene CEF . |
Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.