Raccogli i log di CyberX
Questo documento descrive come raccogliere i log di CyberX utilizzando un forwarder di Google Security Operations.
Per ulteriori informazioni, consulta la Panoramica dell'importazione dei dati in Google Security Operations.
Un'etichetta di importazione identifica l'analizzatore sintattico 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 CyberX
.
Configura CyberX
- Accedi all'interfaccia utente di CyberX.
- Nell'interfaccia utente di CyberX, seleziona Inoltro e poi fai clic su Crea regola di inoltro.
Per selezionare i filtri per le notifiche:
- Nella sezione Protocolli, seleziona i protocolli richiesti o fai clic su Tutti per selezionarli tutti.
Nell'elenco Gravità, seleziona la gravità più bassa degli avvisi da inviare.
Ad esempio, gli avvisi critici e gravi vengono inviati utilizzando le notifiche se selezioni la gravità Grave.
Nella sezione Motori, seleziona i motori richiesti o fai clic su Tutti per selezionare tutti i motori.
Fai clic su Aggiungi per aggiungere un nuovo metodo di notifica.
Nell'elenco Azione, seleziona un tipo di azione tra quelle disponibili.
Se aggiungi più di un'azione, puoi creare più metodi di notifica per ogni regola.
In base all'azione selezionata, specifica i dettagli richiesti nei campi appropriati. Ad esempio, se hai selezionato Invia al server SYSLOG (CEF), procedi nel seguente modo:
- Nel campo Host, inserisci l'indirizzo del server syslog.
- Nel campo Fuso orario, inserisci il fuso orario del server syslog.
- Nel campo Porta, inserisci la porta del server syslog.
Fai clic su Invia.
Analogamente, per le altre azioni selezionate, specifica i dettagli richiesti.
Configura il forwarder di Google Security Operations per importare i log di CyberX
- Seleziona Impostazioni SIEM > Inoltratori.
- Fai clic su Aggiungi nuovo mittente.
- Nel campo Nome del forwarder, inserisci un nome univoco per il forwarder.
- Fai clic su Invia e poi su Conferma. Il forwarder viene aggiunto e viene visualizzata la finestra Aggiungi configurazione del collettore.
- Nel campo Nome del raccoglitore, digita un nome univoco per il raccoglitore.
- Seleziona
Microsoft CyberX
come Tipo di log. - Seleziona Syslog come Tipo di collettore.
- Configura i seguenti parametri di input:
- Protocollo: specifica il protocollo di connessione utilizzato dal collector per ascoltare i dati syslog.
- Indirizzo: specifica l'indirizzo IP o il nome host di destinazione in cui risiede il collector e ascolta i dati syslog.
- Porta: specifica la porta di destinazione in cui risiede il raccoglitore e che ascolta i dati syslog.
- Fai clic su Invia.
Per ulteriori informazioni sui forwarder di Google Security Operations, consulta Gestire le configurazioni dei forwarder tramite l'interfaccia utente di Google Security Operations.
Se riscontri problemi durante la creazione dei reindirizzamenti, contatta l'assistenza di Google Security Operations.
Riferimento alla mappatura dei campi
Questo parser gestisce i log di CyberX in formato SYSLOG+KV, trasformandoli in UDM. Inizializza numerosi campi con stringhe vuote, esegue diverse sostituzioni per rinominare e formattare le coppie chiave-valore all'interno del campo del messaggio, quindi utilizza i filtri grok
e kv
per estrarre i dati strutturati nei campi UDM. Il parser dà la priorità all'estrazione dei dati chiave-valore e, se necessario, utilizza i pattern grok, arricchendo l'evento UDM con informazioni su metadati, principale, target, rete e risultati di sicurezza.
Tabella di mappatura UDM
Campo log | Mappatura UDM | Logic |
---|---|---|
Maschera di accesso | security_result.detection_fields.value |
Valore di access_mask da access_request_kvdata analizzato |
Dominio dell'account | principal.administrative_domain |
Valore di principal_domain da principal_kvdata analizzato |
Dominio dell'account | target.administrative_domain |
Valore di target_domain da target_kvdata analizzato |
Nome account | principal.user.userid |
Valore di principal_account_name da principal_kvdata analizzato |
Nome account | target.user.userid |
Valore di target_account_name da target_kvdata analizzato |
azione | security_result.action_details |
Valore di action |
azione | security_result.action |
Derivato. Se action è "accept", "passthrough", "pass", "permit", "detected" o "close", mappa a "ALLOW". Se action è "deny", "dropped" o "blocked", mappa a "BLOCK". Se action è "timeout", mappa a "FAIL". In caso contrario, mappa a "UNKNOWN_ACTION". |
Nome algoritmo | security_result.detection_fields.value |
Valore di algorithm_name da cryptographic_kvdata analizzato |
app | target.application |
Valore di service se app_protocol_output è vuoto |
appcat | security_result.detection_fields.value |
Valore di appcat |
Nome applicazione | principal.application |
Valore di application_name |
Pacchetto di autenticazione | security_result.about.resource.name |
Valore di authentication_package |
Avviso di Azure Defender for IoT | security_result.detection_fields.value |
Valore di azure_defender_for_iot_alert |
canale | security_result.detection_fields.value |
Valore di channel |
Indirizzo client | principal.ip , principal.asset.ip |
Valore di source_ip |
Porta client | principal.port |
Valore di source_port |
craction | security_result.detection_fields.value |
Valore di craction |
È stato eseguito il backup delle credenziali di Gestore delle credenziali | security_result.description |
Valore di description |
Le credenziali di Gestore delle credenziali sono state lette. | security_result.description |
Valore di description |
crscore | security_result.severity_details |
Valore di crscore |
crlevel | security_result.severity , security_result.severity_details |
Valore di crlevel . Se crlevel è "HIGH", "MEDIUM", "LOW" o "CRITICAL", mappa alla gravità UDM corrispondente. |
Operazione di crittografia | metadata.description |
Valore di product_desc |
Nome della piattaforma CyberX | security_result.detection_fields.value |
Valore di cyberx_platform_name |
Descrizione | security_result.description |
Valore di description se Message è vuoto |
Destinazione | target.ip , target.asset.ip o target.hostname |
Se Destination è un indirizzo IP, mappalo su target.ip e target.asset.ip . In caso contrario, mappa a target.hostname . |
Indirizzo di destinazione | target.ip , target.asset.ip |
Valore di destination_ip da network_information analizzato |
Destinazione DRA | target.resource.name |
Valore di destination_dra |
IP di destinazione | target.ip , target.asset.ip |
Valore di destination_ip |
Porta di destinazione | target.port |
Valore di destination_port da network_information analizzato |
devid | principal.resource.product_object_id |
Valore di devid |
devname | principal.resource.name |
Valore di devname |
Direzione | network.direction |
Se Direction è "in entrata", "in entrata" o "risposta", mappa a "INBOUND". Se Direction è "outgoing", "outbound" o "request", mappalo a "OUTBOUND". |
dstip | target.ip , target.asset.ip |
Valore di dstip se destination_ip è vuoto |
dstcountry | target.location.country_or_region |
Valore di dstcountry |
dstintf | security_result.detection_fields.value |
Valore di dstintf |
dstintfrole | security_result.detection_fields.value |
Valore di dstintfrole |
dstosname | target.platform |
Valore di dstosname se è "WINDOWS", "LINUX" o "MAC". |
dstport | target.port |
Valore di dstport se destination_port è vuoto |
dstswversion | target.platform_version |
Valore di dstswversion |
duration | network.session_duration.seconds |
Valore di duration |
event_id | security_result.rule_name |
Utilizzato per creare il nome della regola come "EventID: %{event_id}" |
event_in_sequence | security_result.detection_fields.value |
Valore di event_in_sequence |
ID di runtime del filtro | security_result.detection_fields.value |
Valore di filter_run_time_id da filter_information analizzato |
Appartenenza al gruppo | security_result.detection_fields.value |
Valore di group_membership se event_id non è 4627 |
Appartenenza al gruppo | target.user.group_identifiers |
Valori da group_membership analizzato se event_id è 4627 |
handle_id | security_result.detection_fields.value |
Valore di handle_id da object_kvdata analizzato |
ID handle | security_result.detection_fields.value |
Valore di handle_id da object_kvdata analizzato |
impersonation_level | security_result.detection_fields.value |
Valore di impersonation_level da logon_information_kvdata analizzato |
Lunghezza chiave | security_result.detection_fields.value |
Valore di key_length da auth_kvdata analizzato |
Nome chiave | security_result.detection_fields.value |
Valore di key_name da cryptographic_kvdata analizzato |
Tipo di chiave | security_result.detection_fields.value |
Valore di key_type da cryptographic_kvdata analizzato |
parole chiave | security_result.detection_fields.value |
Valore di keywords |
Nome livello | security_result.detection_fields.value |
Valore di layer_name da filter_information analizzato |
ID runtime del livello | security_result.detection_fields.value |
Valore di layer_run_time_id da filter_information analizzato |
logid | metadata.product_log_id |
Valore di logid |
GUID di accesso | principal.resource.product_object_id |
Valore di logon_guid |
ID accesso | security_result.detection_fields.value |
Valore di logon_id |
logon_type | event.idm.read_only_udm.extensions.auth.mechanism |
Derivato. Se logon_type è "3", mappa a "NETWORK". Se "4", mappa a "BATCH". Se "5", mappa a "SERVICE". Se "8", mappa a "NETWORK_CLEAR_TEXT". Se "9", mappa a "NEW_CREDENTIALS". Se "10", mappa a "REMOTE_INTERACTIVE". Se "11", mappa a "CACHED_INTERACTIVE". In caso contrario, se non è vuoto, mappa a "MECHANISM_OTHER". |
Account di accesso | security_result.detection_fields.value |
Valore di logon_id dall'analisi di Grok |
Procedura di accesso | security_result.detection_fields.value |
Valore di logon_process da auth_kvdata analizzato |
Etichetta obbligatoria | security_result.detection_fields.value |
Valore di mandatory_label |
mastersrcmac | principal.mac |
Valore di mastersrcmac |
Messaggio | security_result.description |
Valore di Message |
new_process_id | target.process.pid |
Valore di new_process_id da process_kvdata analizzato |
new_process_name | target.process.file.full_path |
Valore di new_process_name da process_kvdata analizzato |
Nome oggetto | security_result.detection_fields.value |
Valore di object_name da object_kvdata analizzato |
Server di oggetti | security_result.detection_fields.value |
Valore di object_server da object_kvdata analizzato |
Tipo di oggetto | security_result.detection_fields.value |
Valore di object_type da object_kvdata analizzato |
osname | principal.platform |
Valore di osname se è "WINDOWS", "LINUX" o "MAC". |
Nome del pacchetto (solo NTLM) | security_result.detection_fields.value |
Valore di package_name da auth_kvdata analizzato |
policyid | security_result.rule_id |
Valore di policyid |
policyname | security_result.rule_name |
Valore di policyname |
policytype | security_result.rule_type |
Valore di policytype |
ID processo | principal.process.pid |
Valore di process_id |
Nome processo | principal.process.file.full_path |
Valore di creator_process_name da process_kvdata analizzato |
profile_changed | security_result.detection_fields.value |
Valore di profile_changed |
Profilo modificato | security_result.detection_fields.value |
Valore di profile_changed dall'analisi di Grok |
proto | network.ip_protocol |
Se proto è "17", mappa a "UDP". Se "6" o subtype è "wad", mappa a "TCP". Se "41", mappa a "IP6IN4". Se service è "PING" o service è "1" o service contiene "ICMP", mappa a "ICMP".proto |
Protocollo | network.application_protocol |
Valore di app_protocol_output dedotto da Protocol |
Nome provider | security_result.detection_fields.value |
Valore di provider_name da provider_kvdata o cryptographic_kvdata analizzato |
rcvdbyte | network.received_bytes |
Valore di rcvdbyte |
rcvdpkt | security_result.detection_fields.value |
Valore di rcvdpkt |
restricted_admin_mode | security_result.detection_fields.value |
Valore di restricted_admin_mode da logon_information_kvdata analizzato |
Codice di reso | security_result.detection_fields.value |
Valore di return_code da cryptographic_kvdata analizzato |
risposta | security_result.detection_fields.value |
Valore di response |
rule_id | security_result.rule_id |
Valore di rule_id |
ID sicurezza | principal.user.windows_sid |
Valore di principal_security_id da principal_kvdata analizzato |
ID sicurezza | target.user.windows_sid |
Valore di target_security_id da target_kvdata analizzato |
sentbyte | network.sent_bytes |
Valore di sentbyte |
sentpkt | security_result.detection_fields.value |
Valore di sentpkt |
servizio | network.application_protocol o target.application |
Valore di app_protocol_output ottenuto da service . Se app_protocol_output è vuoto, mappa a target.application . |
ID servizio | security_result.detection_fields.value |
Valore di service_id da service_kvdata analizzato |
Nome servizio | security_result.detection_fields.value |
Valore di service_name da service_kvdata analizzato |
sessionid | network.session_id |
Valore di sessionid |
Gravità | security_result.severity , security_result.severity_details |
Se Severity è "ERROR" o "CRITICAL", esegui la mappatura alla gravità UDM corrispondente. Se "INFO", mappa a "INFORMATIONAL". Se "MINOR", mappa a "LOW". Se "AVVERTENZA", mappa a "MEDIO". Se "MAJOR", mappa a "HIGH". Mappa anche il valore non elaborato a severity_details . |
gravità | security_result.severity , security_result.severity_details |
Se severity è "1", "2" o "3", mappa a "LOW". Se "4", "5" o "6", mappa a "MEDIO". Se "7", "8" o "9", mappa a "ALTO". Mappa anche il valore non elaborato a severity_details . |
Nome condivisione | security_result.detection_fields.value |
Valore di share_name da share_information_kvdata analizzato |
Condividi percorso | security_result.detection_fields.value |
Valore di share_path da share_information_kvdata analizzato |
Origine | principal.ip , principal.asset.ip o principal.hostname , principal.asset.hostname |
Se Source è un indirizzo IP, mappalo su principal.ip e principal.asset.ip . In caso contrario, mappa a principal.hostname e principal.asset.hostname . |
Indirizzo di origine | principal.ip , principal.asset.ip |
Valore di source_ip da network_information analizzato |
DRA di origine | principal.resource.name |
Valore di source_dra |
IP di origine | principal.ip |
Valore di source_ip |
Indirizzo di rete di origine | principal.ip , principal.asset.ip |
Valore di source_ip |
Porta di origine | principal.port |
Valore di source_port da network_information analizzato |
Workstation di origine | workstation_name |
Valore di source_workstation_name |
srcip | source_ip |
Valore di srcip se source_ip è vuoto |
srccountry | principal.location.country_or_region |
Valore di srccountry |
srcmac | principal.mac |
Valore di srcmac |
srcname | principal.hostname , principal.asset.hostname |
Valore di srcname |
srcport | source_port |
Valore di srcport se source_port è vuoto |
srcswversion | principal.platform_version |
Valore di srcswversion |
Codice di stato | network.http.response_code |
Valore di status_code |
Tipo di elevazione del token | security_result.detection_fields.value |
Valore di token_elevation_type |
transited_services | security_result.detection_fields.value |
Valore di transited_services da auth_kvdata analizzato |
transip | principal.nat_ip |
Valore di transip |
trasporto | principal.nat_port |
Valore di transport |
tipo | metadata.product_event_type |
Utilizzato con subtype per creare metadata.product_event_type |
Tipo | security_result.detection_fields.value |
Valore di Type |
UUID | metadata.product_log_id |
Valore di UUID |
vd | principal.administrative_domain |
Valore di vd |
virtual_account | security_result.detection_fields.value |
Valore di virtual_account da logon_information_kvdata analizzato |
Nome della workstation | principal.hostname , principal.asset.hostname |
Valore di workstation_name se non è presente nessun altro identificatore principale |
metadata.event_type |
metadata.event_type |
Derivato. Se sia principal_present sia target_present sono true, esegui la mappatura a "NETWORK_CONNECTION". Se user_present è true, mappa a "USER_RESOURCE_ACCESS". Se principal_present è true, mappa a "STATUS_UPDATE". In caso contrario, mappa a "GENERIC_EVENT". |
metadata.log_type |
metadata.log_type |
Hardcoded su "CYBERX" |
metadata.product_name |
metadata.product_name |
Hardcoded su "CYBERX" |
metadata.vendor_name |
metadata.vendor_name |
Hardcoded su "CYBERX" |
metadata.event_timestamp |
metadata.event_timestamp |
Copiato dal campo di primo livello timestamp o derivato dai campi eventtime o date e time . |
Modifiche
2024-05-15
- Pattern KV modificato per gestire il nuovo pattern di SYSLOG.
- "source_ip2" è stato mappato a "principal.ip" e "principal.asset.ip".
- "destination_ip2" è stato mappato a "target.ip" e "target.asset.ip".
- "Severità" è stato mappato a "security_result.severity_details".
- Mappature "principal.ip" e "principal.asset.ip" allineate.
- Mappature "target.ip" e "target.asset.ip" allineate.
- Mappature "principal.hostname" e "principal.asset.hostname" allineate.
- Mappature "target.hostname" e "target.asset.hostname" allineate.
2023-12-06
- Parser appena creato.