Utilizzare dati contestualizzati nei report

Per supportare le indagini sulla sicurezza, Chronicle importa dati contestuali da diverse origini, esegue analisi sui dati importati e fornisce ulteriore contesto sugli artefatti nell'ambiente di un cliente. Questo documento fornisce esempi di come gli analisti possono utilizzare i dati estesi contestuali nelle dashboard e negli schemi Chronicle in BigQuery.

Per saperne di più sull'arricchimento dei dati, consulta In che modo Chronicle arricchisce i dati su eventi ed entità.

Utilizza dati arricchiti con geolocalizzazione

Gli eventi UDM possono includere dati arricchiti di geolocalizzazione per fornire ulteriore contesto durante un'indagine. Quando gli eventi UDM vengono esportati in BigQuery, vengono esportati anche questi campi. Questa sezione spiega come utilizzare i campi estesi per la geolocalizzazione durante la creazione di report.

Query sui dati nello schema events

È possibile eseguire query sui dati di geolocalizzazione utilizzando lo schema events di Chronicle in BigQuery. L'esempio seguente è una query SQL che restituisce risultati aggregati per tutti gli eventi USER_LOGIN per utente, paese e con la prima e l'ultima volta osservati.

SELECT
 ip_geo_artifact.location.country_or_region,
 COUNT(ip_geo_artifact.location.country_or_region) AS count_country,
 ip_geo_artifact.location.state,
 COUNT(ip_geo_artifact.location.state) AS count_state,
 target.user.email_addresses[ORDINAL(1)] AS principal_user,
 TIMESTAMP_SECONDS(MIN(metadata.event_timestamp.seconds)) AS first_observed,
 TIMESTAMP_SECONDS(MAX(metadata.event_timestamp.seconds)) AS last_observed,
FROM `datalake.events`,
UNNEST (principal.ip_geo_artifact) as ip_geo_artifact
WHERE DATE(hour_time_bucket) = "2023-01-11"
AND metadata.event_type = 15001
AND metadata.vendor_name IN ("Google Cloud Platform","Google Workspace")
GROUP BY 1,3,5
HAVING count_country > 0
ORDER BY count_country DESC

La tabella seguente contiene un esempio dei risultati che potrebbero essere restituiti.

country_or_region count_country state count_state principal_user first_observed last_observed
Netherlands 5

North Holland 5

admin@acme.com 2023-01-11 14:32:51 UTC 2023-01-11 14:32:51 UTC
Israel 1

Tel Aviv District

1

omri@acme.com 2023-01-11 10:09:32 UTC 2023-01-11 15:26:38 UTC

La seguente query SQL illustra come rilevare la distanza tra due località.

SELECT
DISTINCT principal_user,
(ST_DISTANCE(north_pole,user_location)/1000) AS distance_to_north_pole_km
FROM (
  SELECT
    ST_GeogPoint(135.00,90.00) AS north_pole,
    ST_GeogPoint(ip_geo_artifact.location.region_coordinates.longitude, ip_geo_artifact.location.region_coordinates.latitude) AS user_location,
    target.user.email_addresses[ORDINAL(1)] AS principal_user
  FROM `datalake.events`,
  UNNEST (principal.ip_geo_artifact) as ip_geo_artifact
  WHERE DATE(hour_time_bucket) = "2023-01-11"
  AND metadata.event_type = 15001
  AND metadata.vendor_name IN ("Google Cloud Platform","Google Workspace")
  AND ip_geo_artifact.location.country_or_region != ""
)
ORDER BY 2 DESC

La tabella seguente contiene un esempio dei risultati che potrebbero essere restituiti.

principal_user distance_to_north_pole_km
omri@acme.com 6438.98507

admin@acme.com 4167.527018

Puoi ottenere query leggermente più utili sfruttando i poligoni dell'area per calcolare un'area ragionevole per spostarsi da una località in un determinato intervallo. Puoi anche verificare se più valori geografici corrispondono per identificare eventuali rilevamenti di viaggi impossibili. Queste soluzioni richiedono un'origine dati di geolocalizzazione accurata e coerente.

Visualizza i campi estesi nelle dashboard

Puoi anche creare una dashboard utilizzando campi UDM ricchi di geolocalizzazione. L'immagine seguente è un esempio.

Dashboard di esempio con dati estesi Dashboard di esempio che utilizza dati estesi

Passaggi successivi

Per informazioni su come utilizzare i dati estesi con altre funzionalità di Chronicle, vedi quanto segue: