ניתוח דוחות עם נתונים שנוספו להם פרטים

נתמך ב:

כדי לתמוך בחקירות אבטחה, Google Security Operations קולט נתונים הקשריים ממקורות שונים, מנתח את הנתונים שנאספו ומספק הקשר נוסף לגבי ארטיפקטים בסביבת הלקוח. במאמר הזה מפורטות דוגמאות לאופן שבו אנליסטים יכולים להשתמש בנתונים מועשרים בהקשר בלוחות בקרה ובסכימות של Google SecOps ב-BigQuery.

מידע נוסף על העשרת נתונים זמין במאמר איך Google SecOps מעשיר נתונים של אירועים וישויות.

שימוש בנתונים עם מידע גיאוגרפי

אירועים ב-UDM עשויים לכלול נתונים שעברו העשרה במיקום גיאוגרפי כדי לספק הקשר נוסף במהלך חקירה. כשמייצאים אירועים של UDM ל-BigQuery, השדות האלה מיוצאים גם כן. בקטע הזה מוסבר איך להשתמש בשדות עם נתוני מיקום גיאוגרפי כשיוצרים דוחות.

שליחת שאילתות לנתונים בסכימה events

אפשר להריץ שאילתות על נתוני מיקום גיאוגרפי באמצעות סכימת events של Google SecOps ב-BigQuery. הדוגמה הבאה היא שאילתת SQL שמחזירה תוצאות מצטברות לכל האירועים USER_LOGINלפי משתמש, מדינה והזמנים הראשונים והאחרונים שנצפו.

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

בטבלה הבאה מוצגת דוגמה לתוצאות שאפשר לקבל.

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

שאילתת ה-SQL הבאה ממחישה איך לזהות את המרחק בין שני מיקומים.

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

בטבלה הבאה מוצגת דוגמה לתוצאות שאפשר לקבל.

principal_user distance_to_north_pole_km
omri@acme.com 6438.98507
admin@acme.com 4167.527018

כדי לקבל שאילתות שימושיות יותר, אפשר להשתמש בפוליגונים של אזורים כדי לחשב אזור סביר לנסיעה ממיקום מסוים במרווח זמן נתון. אפשר גם לבדוק אם יש התאמה לכמה ערכים גיאוגרפיים כדי לזהות נסיעות בלתי אפשריות. כדי להשתמש בפתרונות האלה, צריך מקור נתונים מדויק ועקבי של מיקום גיאוגרפי.

איך רואים שדות מועשרים במרכזי בקרה

אפשר גם ליצור לוח בקרה באמצעות שדות UDM עם מידע גיאוגרפי. בתרשים מוצגת העיר של כל אירוע UDM. כדי לראות את הנתונים בפורמט אחר, אפשר לשנות את סוג התרשים.

המאמרים הבאים

במאמרים הבאים מוסבר איך להשתמש בנתונים מועשרים עם תכונות אחרות של Google SecOps:

הבעיה עדיין לא נפתרה? קבלת תשובות מחברי הקהילה וממומחי Google SecOps.