מדריך לשימוש ב-UDM
במסמך הזה מפורטים:
- תיאורים מפורטים של שדות הסכימה של Unified Data Model (UDM)
- שדות חובה ושדות אופציונליים לסוגי ישויות
- שדות חובה ואופציונליים לכל סוג אירוע
לפרטים על שדות ספציפיים של UDM (לדוגמה, מספרי enum), עיינו ברשימת השדות של Unified Data Model.
פורמטים של שמות שדות ב-UDM:
- להערכה של מנוע הכללים, התחילית מתחילה ב-udm.
- בנורמליזציה מבוססת-הגדרות (CBN), הקידומת מתחילה ב-event.idm.read_only_udm.
אכלוס מטא-נתונים של אירועים
בקטע המטא-נתונים של אירועי UDM מאוחסן מידע כללי על כל אירוע.
Metadata.event_type
- Purpose: מציין את סוג האירוע. אם לאירוע יש כמה סוגים אפשריים, הערך הזה צריך לציין את הסוג הספציפי ביותר.
- חובה: כן.
- קידוד: חייב להיות אחד מסוגי ה-
event_typeהמוגדרים מראש של UDM. - ערכים אפשריים: בקטעים הבאים מפורטים כל הערכים האפשריים של
metadata.event_typeב-UDM. כדי לראות את שדות החובה והשדות האופציונליים לכל קטגוריה, עיינו במאמר שדות חובה ושדות אופציונליים לכל סוג אירוע.
אירועים של ניתוח נתונים
- ANALYST_ADD_COMMENT
- ANALYST_UPDATE_PRIORITY
- ANALYST_UPDATE_REASON
- ANALYST_UPDATE_REPUTATION
- ANALYST_UPDATE_RISK_SCORE
- ANALYST_UPDATE_ROOT_CAUSE
- ANALYST_UPDATE_SEVERITY_SCORE
- ANALYST_UPDATE_STATUS
- ANALYST_UPDATE_VERDICT
אירועים במכשיר
אירועים שקשורים לעדכונים של קושחה, הגדרות או תוכנות במכשיר (כמו מערכת בקרה תעשייתית או נכס של טכנולוגיה תפעולית):
- DEVICE_CONFIG_UPDATE
- DEVICE_FIRMWARE_UPDATE
- DEVICE_PROGRAM_DOWNLOAD
- DEVICE_PROGRAM_UPLOAD
אירועי אימייל
אירועים שקשורים לעסקאות באימייל ולבדיקות אבטחה של אימיילים:
- EMAIL_UNCATEGORIZED
- EMAIL_TRANSACTION
- EMAIL_URL_CLICK (יצא משימוש)
אירועים לא מוגדרים
ערך זמני לשמירת מקום (פלייסהולדר) לסוג אירוע שלא אותחל (אירועים שמוגדרים כ-EVENTTYPE_UNSPECIFIED נכשלים באימות UDM):
- EVENTTYPE_UNSPECIFIED
אירועי קבצים שבוצעו בנקודת קצה (endpoint)
- FILE_UNCATEGORIZED
- FILE_COPY (לדוגמה, העתקת קובץ לדיסק און קי)
- FILE_CREATION
- FILE_DELETION
- FILE_MODIFICATION
- FILE_MOVE
- FILE_OPEN (לדוגמה, פתיחת קובץ עשויה להצביע על פרצת אבטחה)
- FILE_READ (לדוגמה, קריאת קובץ סיסמאות)
- FILE_SYNC
אירועים שלא שייכים לאף קטגוריה אחרת
אירועים שלא שייכים לאף קטגוריה אחרת, כולל אירועים במערכת ההפעלה שלא משויכים לקטגוריה:
- GENERIC_EVENT
אירועים של פעילות קבוצתית
אירועים שקשורים ליצירה, לשינוי או למחיקה של קבוצות משתמשים או קבוצות מערכת:
- GROUP_UNCATEGORIZED
- GROUP_CREATION
- GROUP_DELETION
- GROUP_MODIFICATION
אירועי Mutex
אירועים שקשורים ליצירה או לניהול של אובייקט הדדיות (mutex) בנקודת קצה:
- MUTEX_UNCATEGORIZED
- MUTEX_CREATION
אירועי טלמטרייה של הרשת
אירועי טלמטריה ברשת, שכוללים מטענים ייעודיים (payloads) של פרוטוקולים גולמיים, כמו DHCP ו-DNS, וגם סיכומי פרוטוקולים לפרוטוקולים כמו HTTP, SMTP ו-FTP ואירועי זרימה וחיבור מ-NetFlow ומחומות אש:
- NETWORK_UNCATEGORIZED
- NETWORK_CONNECTION (לדוגמה, פרטי חיבור לרשת מחומת אש)
- NETWORK_DHCP
- NETWORK_DNS
- NETWORK_FLOW (לדוגמה, נתונים סטטיסטיים נצברים של זרימה מ-Netflow)
- NETWORK_FTP
- NETWORK_HTTP
- NETWORK_SMTP
אירועי תהליכים
כל האירועים שקשורים לתהליך, כמו הפעלת תהליך, תהליך שיוצר משהו זדוני, תהליך שמוזרק לתהליך אחר, שינוי של מפתח רישום או יצירת קובץ זדוני בדיסק:
- PROCESS_UNCATEGORIZED
- PROCESS_INJECTION
- PROCESS_LAUNCH
- PROCESS_MODULE_LOAD
- PROCESS_OPEN
- PROCESS_PRIVILEGE_ESCALATION
- PROCESS_TERMINATION
אירועים במרשם
כשמדובר באירועים ברישום של Microsoft Windows, צריך להשתמש באירועי הרישום הבאים במקום באירועי ההגדרות:
- REGISTRY_UNCATEGORIZED
- REGISTRY_CREATION
- REGISTRY_MODIFICATION
- REGISTRY_DELETION
אירועים במשאבים
אירועים שקשורים ליצירה, לקריאה, לכתיבה, למחיקה או לשינוי של הרשאות במשאב:
- RESOURCE_CREATION
- RESOURCE_DELETION
- RESOURCE_PERMISSIONS_CHANGE
- RESOURCE_READ
- RESOURCE_WRITTEN
אירועים שקשורים לסריקה
אירועים שקשורים לסריקה כוללים סריקות לפי דרישה וזיהויים של התנהגות שבוצעו על ידי מוצרי אבטחה של נקודות קצה או של רשת (כמו EDR, אנטי-וירוס, סורקים לבדיקת נקודות חולשה או DLP):
- SCAN_UNCATEGORIZED
- SCAN_FILE
- SCAN_HOST
- SCAN_NETWORK
- SCAN_PROCESS
- SCAN_PROCESS_BEHAVIORS (יצא משימוש)
- SCAN_VULN_HOST
- SCAN_VULN_NETWORK
אירועים של משימות מתוזמנות (מתזמן המשימות של Windows, cron וכו')
- SCHEDULED_TASK_UNCATEGORIZED
- SCHEDULED_TASK_CREATION
- SCHEDULED_TASK_DELETION
- SCHEDULED_TASK_DISABLE
- SCHEDULED_TASK_ENABLE
- SCHEDULED_TASK_MODIFICATION
אירועי שירות
אירועים שקשורים ליצירה, למחיקה, לשינוי, להפעלה או לעצירה של מערכת הפעלה או שירות של אפליקציה:
- SERVICE_UNSPECIFIED
- SERVICE_CREATION
- SERVICE_DELETION
- SERVICE_MODIFICATION
- SERVICE_START
- SERVICE_STOP
הגדרת אירועים
כדי להגדיר דרישות לגבי אירועים, אפשר לעיין במאמרים SETTING_UNCATEGORIZED, SETTING_CREATION, SETTING_MODIFICATION, SETTING_DELETION.
אירועי הגדרות, כולל שינוי של הגדרת מערכת בנקודת קצה:
- SETTING_UNCATEGORIZED
- SETTING_CREATION
- SETTING_DELETION
- SETTING_MODIFICATION
הודעות סטטוס ממוצרי אבטחה
הודעות סטטוס ממוצרי אבטחה שמציינות שהסוכנים פעילים ושולחות גרסה, טביעת אצבע או סוגים אחרים של נתונים:
- STATUS_UNCATEGORIZED
- STATUS_HEARTBEAT (מציין שהמוצר פעיל)
- STATUS_STARTUP
- STATUS_SHUTDOWN
- STATUS_UPDATE (עדכון תוכנה או טביעת אצבע)
אירועים ביומן הביקורת של המערכת
- SYSTEM_AUDIT_LOG_UNCATEGORIZED
- SYSTEM_AUDIT_LOG_WIPE
אירועי פעילות של אימות משתמשים
- USER_UNCATEGORIZED
- USER_BADGE_IN (לדוגמה, כשמשתמש מעביר תג פיזי בכניסה לאתר)
- USER_CHANGE_PASSWORD
- USER_CHANGE_PERMISSIONS
- USER_COMMUNICATION
- USER_CREATION
- USER_DELETION
- USER_LOGIN
- USER_LOGOUT
- USER_RESOURCE_ACCESS
- USER_RESOURCE_CREATION
- USER_RESOURCE_DELETION
- USER_RESOURCE_UPDATE_CONTENT
- USER_RESOURCE_UPDATE_PERMISSIONS
- USER_STATS (יצא משימוש)
Metadata.collected_timestamp
- מטרה: מקודד את חותמת הזמן לפי שעון גריניץ' (GMT) כשהאירוע נאסף על ידי תשתית האיסוף המקומית של הספק.
- קידוד: RFC 3339, בהתאם לפורמט חותמת הזמן של JSON או Proto3.
- דוגמה:
- RFC 3339: "2019-09-10T20:32:31-08:00"
- פורמט Proto3: '2012-04-23T18:25:43.511Z'
Metadata.event_timestamp
- מטרה: מקודד את חותמת הזמן של שעון גריניץ' (GMT) כשהאירוע נוצר.
- חובה: כן
- קידוד: RFC 3339, בהתאם לפורמט חותמת הזמן של JSON או Proto3.
- דוגמה:
- RFC 3339: 2019-09-10T20:32:31-08:00
- פורמט Proto3: 2012-04-23T18:25:43.511Z
Metadata.description
- מטרה: תיאור קריא לאנשים של האירוע.
- קידוד: מחרוזת אלפאנומרית, מותר להשתמש בסימני פיסוק, עד 1,024 בייטים
- דוגמה: הקובץ c:\bar\foo.exe נחסם מגישה למסמך הרגיש c:\documents\earnings.docx.
Metadata.product_event_type
- מטרה: שם או סוג של אירוע שהוא קצר, תיאורי, קריא לאנשים וספציפי למוצר.
- קידוד: מחרוזת אלפאנומרית, מותר להשתמש בסימני פיסוק, עד 64 בייטים.
- דוגמאות:
- אירוע יצירת מרשם
- ProcessRollUp
- זוהתה הסלמת הרשאות (privilege escalation)
- תוכנה זדונית נחסמה
Metadata.product_log_id
- מטרה: מקודד מזהה אירוע ספציפי לספק כדי לזהות את האירוע באופן ייחודי (GUID). המשתמשים יכולים להשתמש במזהה הזה כדי לחפש את האירוע הרלוונטי במסוף הקנייני של הספק.
- קידוד: מחרוזת אלפאנומרית תלוית אותיות רישיות, מותר להשתמש בסימני פיסוק, עד 256 בייטים.
- לדוגמה: ABcd1234-98766
Metadata.product_name
- מטרה: מציין את שם המוצר.
- קידוד: מחרוזת אלפאנומרית תלוית אותיות רישיות, מותר להשתמש בסימני פיסוק, עד 256 בייטים.
- דוגמאות:
- Falcon
- Symantec Endpoint Protection
Metadata.product_version
- המטרה: מציין את גרסת המוצר.
- קידוד: מחרוזת אלפאנומרית, מותר להשתמש בנקודות ובמקפים, עד 32 בייטים
- דוגמאות:
- 1.2.3b
- 10.3:rev1
Metadata.url_back_to_product
- מטרה: כתובת URL שמקשרת לאתר רלוונטי שבו אפשר לראות מידע נוסף על האירוע הספציפי הזה (או על קטגוריית האירועים הכללית).
- קידוד: כתובת URL תקינה לפי תקן RFC 3986 עם פרמטרים אופציונליים כמו פרטי יציאה וכו'. צריך להיות קידומת פרוטוקול לפני כתובת ה-URL (לדוגמה, https:// או http://).
- דוגמה: https://newco.altostrat.com:8080/event_info?event_id=12345
Metadata.vendor_name
- מטרה: מציין את שם ספק המוצר.
- קידוד: מחרוזת אלפאנומרית תלוית אותיות רישיות, מותר להשתמש בסימני פיסוק, עד 256 בייטים
- דוגמאות:
- CrowdStrike
- Symantec
אכלוס מטא-נתונים של שם עצם
בקטע הזה, המילה שם עצם היא מונח כולל שמייצג את הישויות הבאות: principal, src, target, intermediary, observer ו-about. לישויות האלה יש מאפיינים משותפים, אבל הן מייצגות אובייקטים שונים באירוע. מידע נוסף על ישויות ועל מה שכל אחת מהן מייצגת באירוע זמין במאמר עיצוב אירוע UDM.
Noun.asset_id
- מטרה: מזהה מכשיר ייחודי שספציפי לספק (לדוגמה, GUID שנוצר כשמתקינים תוכנת אבטחה של נקודת קצה במכשיר חדש, שמשמש למעקב אחרי המכשיר הייחודי הזה לאורך זמן).
- קידוד: (VendorName או VendorAbbreviation):ID כאשר VendorName או VendorAbbreviation הוא שם ספק לא תלוי-רישיות כמו
Carbon BlackאוCB, ו-ID הוא מזהה לקוח ספציפי לספק שהוא ייחודי באופן גלובלי בסביבת הלקוח (לדוגמה, GUID או ערך ייחודי שמזהה מכשיר ייחודי). VendorName הוא אלפאנומרי ובאורך של עד 32 תווים. המזהה יכול להיות באורך של עד 128 תווים, ויכול לכלול תווים אלפאנומריים, מקפים ונקודות. - דוגמה:
CrowdStrike:0bce4259-4ada-48f3-a904-9a526b01311f - דוגמה:
CS:0bce4259-4ada-48f3-a904-9a526b01311f
Noun.email
- מטרה: כתובת אימייל
- קידוד: פורמט רגיל של כתובת אימייל.
- דוגמה: johns@test.altostrat.com
Noun.file
- מטרה: מטא-נתונים מפורטים של קבצים.
- סוג: אובייקט
- אכלוס המטא-נתונים של הקבצים
Noun.hostname
- מטרה: שדה שם המארח או שם הדומיין של הלקוח. אל תכללו את המידע הזה אם יש כתובת URL.
- קידוד: שם מארח תקין לפי RFC 1123.
- מגבלת אימות: האורך של מחרוזות שם המארח לא יכול לחרוג מ-255 בייטים, כדי לעמוד במגבלות של אינדקס החיפוש.
- דוגמאות:
- userwin10
- www.altostrat.com
Noun.platform
- מטרה: מערכת ההפעלה של הפלטפורמה.
- קידוד: טיפוסים בני מנייה (enum)
- ערכים אפשריים:
- LINUX
- MAC
- WINDOWS
- UNKNOWN_PLATFORM
Noun.platform_patch_level
- מטרה: רמת התיקון של מערכת ההפעלה של הפלטפורמה.
- קידוד: מחרוזת אלפאנומרית עם סימני פיסוק, עד 64 תווים.
- דוגמה: Build 17134.48
Noun.platform_version
- מטרה: גרסת מערכת ההפעלה של הפלטפורמה.
- קידוד: מחרוזת אלפאנומרית עם סימני פיסוק, עד 64 תווים.
- לדוגמה: Microsoft Windows 10 גרסה 1803
Noun.process
- מטרה: מטא-נתונים מפורטים של התהליך.
- סוג: אובייקט
- אכלוס של מטא-נתונים של תהליכים
Noun.ip
- המטרה:
- כתובת IP אחת שמשויכת לחיבור לרשת.
- כתובת IP אחת או יותר שמשויכת למכשיר של משתתף בזמן האירוע (לדוגמה, אם מוצר EDR מכיר את כל כתובות ה-IP שמשויכות למכשיר, הוא יכול לקודד את כולן בשדות IP).
- קידוד: מחרוזת כתובת תקינה של IPv4 (4 בייטים) או IPv6 (16 בייטים) (RFC 5942) מקודדת ב-ASCII.
- חזרתיות:
- אם אירוע מתאר חיבור ספציפי לרשת (לדוגמה, srcip:srcport > dstip:dstport), צריך לספק רק כתובת IP אחת.
- אם האירוע מתאר פעילות כללית שמתרחשת במכשיר של משתתף, אבל לא חיבור ספציפי לרשת, אתם יכולים לספק את כל כתובות ה-IP שמשויכות למכשיר בזמן האירוע.
- דוגמאות:
- 192.168.1.2
- 2001:db8:1:3::1
Noun.port
- מטרה: מספר יציאת הרשת של המקור או היעד כשחיבור לרשת ספציפי מתואר באירוע.
- קידוד: מספר יציאת TCP/IP חוקי מ-1 עד 65,535.
דוגמאות:
- 80
- 443
Noun.mac
- מטרה: כתובת MAC אחת או יותר שמשויכת למכשיר.
- קידוד: כתובת MAC תקינה של 6 בייטים שתואמת לפורמט Extended Unique Identifier (EUI-48) של 48 ביטים, מקודדת ב-ASCII.
- יכולת חזרה: אתם יכולים לספק את כל כתובות ה-MAC שמשויכות למכשיר בזמן האירוע.
- דוגמאות:
- 00:24:98:7B:19:02
- 00:00:5e:00:53:2a
Noun.administrative_domain
- מטרה: הדומיין שהמכשיר שייך אליו (לדוגמה, הדומיין של Windows).
- קידוד: מחרוזת תקינה של שם דומיין (עד 128 תווים).
- דוגמה: corp.altostrat.com
Noun.registry
- מטרה: מטא-נתונים מפורטים של המרשם.
- סוג: אובייקט
- אכלוס מטא-נתונים של Registry
Noun.url
- מטרה: כתובת URL רגילה
- קידוד: כתובת URL (RFC 3986). חייבת להיות קידומת פרוטוקול תקינה (לדוגמה, https:// או ftp://). חובה לכלול את הדומיין והנתיב המלאים. יכול להיות שהיא תכלול את הפרמטרים של כתובת ה-URL.
- דוגמה: https://foo.altostrat.com/bletch?a=b;c=d
Noun.user
- מטרה: מטא-נתונים מפורטים של משתמשים.
- סוג: אובייקט
- אכלוס מטא-נתונים של משתמשים
אכלוס המטא-נתונים של האימות
Authentication.AuthType
- מטרה: סוג המערכת שאירוע האימות משויך אליה (Google Security Operations UDM).
- קידוד: סוג ממוספר.
- ערכים אפשריים:
- AUTHTYPE_UNSPECIFIED
- MACHINE – אימות מכונה
- PHYSICAL – אימות פיזי (לדוגמה, קורא תגים)
- SSO
- TACACS – פרוטוקול ממשפחת TACACS לאימות של מערכות ברשת (לדוגמה, TACACS או +TACACS)
- VPN
Authentication.Authentication_Status
- מטרה: מתאר את סטטוס האימות של משתמש או של פרטי כניסה ספציפיים.
- קידוד: סוג ממוספר.
- ערכים אפשריים:
- UNKNOWN_AUTHENTICATION_STATUS – סטטוס אימות ברירת המחדל
- ACTIVE – שיטת האימות פעילה
- SUSPENDED – שיטת האימות מושעית או מושבתת
- DELETED – שיטת האימות נמחקה
- NO_ACTIVE_CREDENTIALS – לשיטת האימות אין פרטי כניסה פעילים.
Authentication.auth_details
- מטרה: פרטי אימות שמוגדרים על ידי הספק.
- קידוד: מחרוזת.
Authentication.Mechanism
- מטרה: המנגנונים שמשמשים לאימות.
- קידוד: סוג ממוספר.
- ערכים אפשריים:
- MECHANISM_UNSPECIFIED – מנגנון האימות שמוגדר כברירת מחדל.
- BADGE_READER
- BATCH – אימות באצווה.
- CACHED_INTERACTIVE – אימות אינטראקטיבי באמצעות פרטי כניסה שנשמרו במטמון.
- HARDWARE_KEY
- מקומי
- MECHANISM_OTHER – מנגנון אחר שלא מוגדר כאן.
- NETWORK – אימות רשת.
- NETWORK_CLEAR_TEXT – אימות טקסט פשוט ברשת.
- NEW_CREDENTIALS – אימות באמצעות פרטי כניסה חדשים.
- OTP
- REMOTE – אימות מרחוק
- REMOTE_INTERACTIVE – RDP, שירותי מסוף, Virtual Network Computing (VNC) וכו'.
- SERVICE – אימות שירות.
- UNLOCK – אימות ישיר של פתיחת הנעילה באינטראקציה אנושית.
- USERNAME_PASSWORD
אכלוס של מטא-נתונים של DHCP
שדות המטא-נתונים של פרוטוקול הקצאת כתובות IP דינמיות (DHCP) מתעדים את פרטי היומן של פרוטוקול ניהול הרשת של DHCP.
Dhcp.client_hostname
- מטרה: שם המארח של הלקוח. מידע נוסף זמין ב-RFC 2132, אפשרויות DHCP ותוספי ספק BOOTP.
- קידוד: מחרוזת.
- מגבלת אימות: כדי לעמוד במגבלות של אינדקס החיפוש, האורך של מחרוזות האפשרויות של שם המארח לא יכול לחרוג מ-255 בייטים.
Dhcp.client_identifier
- מטרה: מזהה לקוח. מידע נוסף זמין ב-RFC 2132, אפשרויות DHCP ותוספי ספק BOOTP.
- קידוד: בייטים.
Dhcp.file
- מטרה: שם הקובץ של קובץ האימג' לאתחול.
- קידוד: מחרוזת.
Dhcp.flags
- מטרה: הערך של שדה הדגלים של DHCP.
- קידוד: מספר שלם לא חתום של 32 ביט.
Dhcp.hlen
- מטרה: אורך כתובת החומרה.
- קידוד: מספר שלם לא חתום של 32 ביט.
Dhcp.hops
- מטרה: מספר הדילוגים של DHCP.
- קידוד: מספר שלם לא חתום של 32 ביט.
Dhcp.htype
- מטרה: סוג כתובת החומרה.
- קידוד: מספר שלם לא חתום של 32 ביט.
Dhcp.lease_time_seconds
- מטרה: זמן ההשכרה של כתובת IP שהלקוח ביקש, בשניות. מידע נוסף זמין ב-RFC 2132, אפשרויות DHCP ותוספי ספק BOOTP.
- קידוד: מספר שלם לא חתום של 32 ביט.
Dhcp.opcode
- מטרה: קוד אופרטור של BOOTP (ראו סעיף 3 של RFC 951).
- קידוד: סוג ממוספר.
- ערכים אפשריים:
- UNKNOWN_OPCODE
- BOOTREQUEST
- BOOTREPLY
Dhcp.requested_address
- מטרה: מזהה לקוח. מידע נוסף זמין ב-RFC 2132, אפשרויות DHCP ותוספי ספק BOOTP.
- קידוד: כתובת IPv4 או IPv6 תקינה (RFC 5942) מקודדת ב-ASCII.
Dhcp.seconds
- מטרה: מספר השניות שחלפו מאז שהלקוח התחיל את תהליך הרכישה או החידוש של הכתובת.
- קידוד: מספר שלם לא חתום של 32 ביט.
Dhcp.sname
- מטרה: שם השרת שהלקוח ביקש להפעיל ממנו.
- קידוד: מחרוזת.
Dhcp.transaction_id
- מטרה: מזהה עסקה של הלקוח.
- קידוד: מספר שלם לא חתום של 32 ביט.
Dhcp.type
- מטרה: סוג הודעת DHCP. מידע נוסף זמין ב-RFC 1533.
- קידוד: סוג ממוספר.
- ערכים אפשריים:
- UNKNOWN_MESSAGE_TYPE
- DISCOVER
- מבצע
- בקשה
- דחה
- ACK
- NAK
- שחרור
- מידע
- WIN_DELECTED
- WIN_EXPIRED
Dhcp.chaddr
- מטרה: כתובת החומרה של הלקוח.
- קידוד: כתובת MAC.
Dhcp.ciaddr
- מטרה: כתובת ה-IP של הלקוח.
- קידוד: כתובת IPv4 או IPv6 תקינה (RFC 5942) מקודדת ב-ASCII.
Dhcp.giaddr
- מטרה: כתובת ה-IP של סוכן הממסר.
- קידוד: כתובת IPv4 או IPv6 תקינה (RFC 5942) מקודדת ב-ASCII.
Dhcp.siaddr
- מטרה: כתובת ה-IP של שרת האתחול הבא.
- קידוד: כתובת IPv4 או IPv6 תקינה (RFC 5942) מקודדת ב-ASCII.
Dhcp.yiaddr
- המטרה: כתובת ה-IP שלכם.
- קידוד: כתובת IPv4 או IPv6 תקינה (RFC 5942) מקודדת ב-ASCII.
אכלוס מטא-נתונים של אפשרות DHCP
שדות המטא-נתונים של אפשרות ה-DHCP מתעדים את פרטי היומן של אפשרות ה-DHCP.
Option.code
- מטרה: מאחסן את קוד האפשרות של DHCP. מידע נוסף זמין בקטע אפשרויות DHCP והרחבות של ספקי BOOTP ב-RFC 1533.
- קידוד: מספר שלם לא חתום של 32 ביט.
Option.data
- מטרה: אחסון נתוני האפשרויות של DHCP. מידע נוסף זמין בקטע אפשרויות DHCP והרחבות של ספקי BOOTP ב-RFC 1533.
- קידוד: בייטים.
אכלוס המטא-נתונים של ה-DNS
בשדות המטא-נתונים של ה-DNS נשמר מידע שקשור לחבילות של בקשות ותגובות DNS. יש להם התאמה של אחד לאחד לנתונים שנמצאים בבקשות DNS ובחבילות נתונים של תגובות.
Dns.authoritative
- מטרה: צריך להגדיר כ-true לשרתי DNS מוסמכים.
- קידוד: ערך בוליאני.
Dns.id
- מטרה: אחסון המזהה של שאילתת ה-DNS.
- קידוד: מספר שלם של 32 ביט.
Dns.response
- מטרה: מגדירים את הערך כ-true אם האירוע הוא תגובת DNS.
- קידוד: ערך בוליאני.
Dns.opcode
- מטרה: מאחסן את קוד הפעולה של ה-DNS שמשמש לציון סוג שאילתת ה-DNS (רגילה, הפוכה, סטטוס שרת וכו').
- קידוד: מספר שלם של 32 ביט.
Dns.recursion_available
- מטרה: מוגדר כ-true אם יש חיפוש DNS רקורסיבי.
- קידוד: ערך בוליאני.
Dns.recursion_desired
- מטרה: מוגדר כ-true אם נשלחת בקשה לחיפוש DNS רקורסיבי.
- קידוד: ערך בוליאני.
Dns.response_code
- מטרה: אחסון קוד התגובה של ה-DNS, כפי שמוגדר ב-RFC 1035, שמות דומיינים – הטמעה ומפרט.
- קידוד: מספר שלם של 32 ביט.
Dns.truncated
- Purpose: מגדירים את הערך True אם זו תגובת DNS מקוצרת.
- קידוד: ערך בוליאני.
Dns.questions
- מטרה: אחסון השאלות של הודעות פרוטוקול הדומיין. אכלוס מטא-נתונים של שאילתות DNS
Dns.answers
- מטרה: אחסון התשובה לשאילתה של שם הדומיין. אכלוס מטא-נתונים של רשומת משאב DNS
Dns.authority
- מטרה: אחסון שרתי השמות של הדומיין שאימתו את התשובה לשאילתה של שם הדומיין. אכלוס מטא-נתונים של רשומת משאב DNS
Dns.additional
- מטרה: אחסון שרתי השמות הנוספים של הדומיין שאפשר להשתמש בהם כדי לאמת את התשובה לדומיין. אכלוס מטא-נתונים של רשומת משאב DNS
אכלוס מטא-נתונים של שאילתת DNS
שדות המטא-נתונים של שאילתת ה-DNS מתעדים את המידע שכלול בקטע השאילתה של הודעת פרוטוקול הדומיין.
Question.name
- מטרה: אחסון שם הדומיין.
- קידוד: מחרוזת.
- מגבלת אימות: מחרוזות שאילתות של דומיינים לא יכולות להיות ריקות, והן חייבות להיות באורך של עד 255 אוקטטים (בייטים) בהתאם לתקנות RFC 1035 ולמגבלות של אינדקס החיפוש.
Question.class
- מטרה: מאחסן את הקוד שמציין את סוג השאילתה.
- קידוד: מספר שלם של 32 ביט.
Question.type
- מטרה: מאחסן את הקוד שמציין את סוג השאילתה.
- קידוד: מספר שלם של 32 ביט.
אכלוס המטא-נתונים של רשומת המשאבים של ה-DNS
שדות המטא-נתונים של רשומת המשאבים של ה-DNS מתעדים את המידע שכלול ברשומת המשאבים של הודעת פרוטוקול דומיין.
ResourceRecord.binary_data
- מטרה: אחסון הבייטים הגולמיים של מחרוזות שאינן בקידוד UTF8, שעשויות להיכלל בתגובת DNS. צריך להשתמש בשדה הזה רק אם נתוני התגובה שמוחזרים על ידי שרת ה-DNS מכילים נתונים שהם לא UTF8. אחרת, צריך להזין את תגובת ה-DNS בשדה "נתונים". צריך לאחסן את סוג המידע הזה כאן ולא ב-ResourceRecord.data.
קידוד: בייטים.
ResourceRecord.class
- מטרה: מאחסן את הקוד שמציין את המחלקה של רשומת המשאב.
- קידוד: מספר שלם של 32 ביט.
ResourceRecord.data
- מטרה: אחסון המטען הייעודי (payload) או התגובה לשאילתת ה-DNS לכל התגובות שמקודדות בפורמט UTF-8. לדוגמה, שדה הנתונים יכול להחזיר את כתובת ה-IP של המכונה שאליה מתייחס שם הדומיין. אם רשומת המשאב היא מסוג או ממחלקה אחרים, היא עשויה להכיל שם דומיין אחר (כששם דומיין אחד מופנה לשם דומיין אחר). הנתונים צריכים להישמר בדיוק כמו שהם בתגובת ה-DNS.
- קידוד: מחרוזת.
ResourceRecord.name
- מטרה: מאחסן את השם של הבעלים של רשומת המשאבים.
- קידוד: מחרוזת.
ResourceRecord.ttl
- מטרה: מאחסן את מרווח הזמן שבו אפשר לשמור את רשומת המשאב במטמון לפני שצריך לשלוח שוב שאילתה למקור המידע.
- קידוד: מספר שלם של 32 ביט.
ResourceRecord.type
- מטרה: מאחסן את הקוד שמציין את הסוג של רשומת המשאבים.
- קידוד: מספר שלם של 32 ביט.
אכלוס המטא-נתונים של האימייל
רוב השדות של המטא-נתונים של האימייל מתעדים את כתובות האימייל שכלולות בכותרת ההודעה, והם צריכים להיות בפורמט הסטנדרטי של כתובת אימייל (local-mailbox@domain) כפי שמוגדר ב-RFC 5322. לדוגמה, frank@email.example.com.
Email.from
- מטרה: אחסון כתובת האימייל של השולח.
- קידוד: מחרוזת.
Email.reply_to
- מטרה: אחסון כתובת האימייל של reply_to.
- קידוד: מחרוזת.
Email.to
- מטרה: אחסון כתובות האימייל של הנמענים.
- קידוד: מחרוזת.
Email.cc
- מטרה: אחסון כתובות האימייל של עותק.
- קידוד: מחרוזת.
Email.bcc
- מטרה: אחסון כתובות האימייל של העותק המוסתר.
- קידוד: מחרוזת.
Email.mail_id
- מטרה: אחסון מזהה האימייל (או ההודעה).
- קידוד: מחרוזת.
- דוגמה: 192544.132632@email.example.com
Email.subject
- מטרה: אחסון שורת הנושא של האימייל.
- קידוד: מחרוזת.
- דוגמה: "Please read this message" (צריך לקרוא את ההודעה הזו).
אכלוס המטא-נתונים של התוספים
סוגי אירועים עם מטא-נתונים מובנים שלא סווגו עדיין על ידי Google SecOps UDM.
Extensions.auth
- מטרה: הרחבה של המטא-נתונים של האימות.
- קידוד: מחרוזת.
- דוגמאות:
- מטא-נתונים של ארגז חול (כל ההתנהגויות שקובץ מציג, למשל FireEye).
- נתוני בקרת גישה לרשת (NAC).
- פרטי LDAP של משתמש (לדוגמה, תפקיד, ארגון וכו').
Extensions.auth.auth_details
- מטרה: לציין את הפרטים הספציפיים לספק של סוג האימות או מנגנון האימות. ספקי אימות מגדירים לעיתים קרובות סוגים כמו via_mfa או via_ad שמספקים מידע שימושי על סוג האימות. עדיין אפשר להכליל את הסוגים האלה ב-auth.type או ב-auth.mechanism כדי לשפר את נוחות השימוש ואת התאימות של הכללים בין קבוצות נתונים.
- קידוד: מחרוזת.
- דוגמאות: via_mfa, via_ad.
Extensions.vulns
- מטרה: הרחבה של המטא-נתונים של נקודת החולשה.
- קידוד: מחרוזת.
- דוגמה: נתונים של סריקת נקודות חולשה במארח.
אכלוס המטא-נתונים של הקבצים
File.file_metadata
- מטרה: מטא-נתונים שמשויכים לקובץ.
- קידוד: מחרוזת.
- דוגמאות:
- מחבר
- מספר הגרסה
- מספר גרסה
- תאריך השמירה האחרונה
File.full_path
- מטרה: הנתיב המלא שמזהה את מיקום הקובץ במערכת.
- קידוד: מחרוזת.
- דוגמה: \Program Files\Custom Utilities\Test.exe
File.md5
- מטרה: ערך גיבוב (hash) של MD5 לקובץ.
- קידוד: מחרוזת, בסיס הקסדצימלי באותיות קטנות.
- דוגמה: 35bf623e7db9bf0d68d0dda764fd9e8c
File.mime_type
- מטרה: סוג MIME (פרוטוקול מאובטח/רב תכליתי להצפנה ואימות של אימיילים) של הקובץ.
- קידוד: מחרוזת.
- דוגמאות:
- PE
- סקריפט PowerShell
File.sha1
- מטרה: ערך גיבוב (hash) מסוג SHA-1 של הקובץ.
- קידוד: מחרוזת, בסיס הקסדצימלי באותיות קטנות.
- דוגמה: eb3520d53b45815912f2391b713011453ed8abcf
File.sha256
- מטרה: ערך גיבוב (hash) מסוג SHA-256 של הקובץ.
- קידוד: מחרוזת, בסיס הקסדצימלי באותיות קטנות.
- דוגמה: d7173c568b8985e61b4050f81b3fd8e75bc922d2a0843d7079c81ca4b6e36417
File.size
- מטרה: גודל הקובץ.
- קידוד: מספר שלם לא חתום של 64 ביט.
- לדוגמה: 342135
אכלוס מטא-נתונים של FTP
Ftp.command
- מטרה: אחסון פקודת ה-FTP.
- קידוד: מחרוזת.
- דוגמאות:
- בינארית
- delete
- get
- put
אכלוס מטא-נתונים של קבוצה
מידע על קבוצה בארגון. כדי לייצג זהות חוקית של קבוצה ארגונית במהלך הנורמליזציה, צריך להגדיר פרמטרים לפחות למאפיין קבוצה מרכזי אחד על ידי ציון כתובת אימייל ב-Group.email_addresses או מזהה אבטחה של Windows ב-Group.windows_sid.
Group.creation_time
- מטרה: מועד היצירה של הקבוצה.
- קידוד: RFC 3339, בהתאם לפורמט חותמת הזמן של JSON או Proto3.
Group.email_addresses
- מטרה: פרטים ליצירת קשר עם הקבוצה.
- קידוד: אימייל.
Group.group_display_name
- מטרה: השם המוצג של הקבוצה.
- קידוד: מחרוזת.
- דוגמאות:
- כספים
- משאבי אנוש
- שיווק
Group.product_object_id
- מטרה: מזהה אובייקט משתמש ייחודי גלובלי למוצר, כמו מזהה אובייקט LDAP.
- קידוד: מחרוזת.
Group.windows_sid
- מטרה: שדה מאפיין קבוצה של מזהה אבטחה (SID) של Microsoft Windows.
- קידוד: מחרוזת.
אכלוס מטא-נתונים של HTTP
Http.method
- מטרה: אחסון ה-method של בקשת ה-HTTP. כשהתנועה מתרחשת בפרוטוקולי התעבורה HTTP או HTTPS, צריך לציין שיטת בקשה פעילה. אי אפשר להשאיר את השיטה מוגדרת כ-METHOD_UNSPECIFIED.
- קידוד: מחרוזת.
- דוגמאות:
- GET
- התקדם אל
- POST
Http.referral_url
- מטרה: אחסון כתובת ה-URL של מקור ההפניה ב-HTTP.
- קידוד: כתובת URL תקינה לפי תקן RFC 3986.
- דוגמה: https://www.altostrat.com
Http.response_code
- מטרה: מאחסן את קוד הסטטוס של תגובת ה-HTTP, שמציין אם בקשת HTTP ספציפית הושלמה בהצלחה.
- קידוד: מספר שלם של 32 ביט.
- דוגמאות:
- 400
- 404
Http.user_agent
- מטרה: אחסון כותרת הבקשה של סוכן המשתמש, שכוללת את סוג האפליקציה, מערכת ההפעלה, ספק התוכנה או גרסת התוכנה של סוכן המשתמש ששולח את הבקשה. מחרוזות הכותרת של סוכן המשתמש חייבות להיות מורכבות רק ממערכי תווים תקינים בקידוד UTF-8.
- קידוד: מחרוזת.
- דוגמאות:
- Mozilla/5.0 (X11; Linux x86_64)
- AppleWebKit/534.26 (KHTML, like Gecko)
- Chrome/41.0.2217.0
- Safari/527.33
אכלוס המטא-נתונים של המיקום
Location.city
- מטרה: אחסון שם העיר.
- קידוד: מחרוזת.
- דוגמאות:
- סאניווייל
- אמריקה/שיקגו
- מאלגה
Location.country_or_region
- מטרה: אחסון השם של המדינה או האזור בעולם.
- קידוד: מחרוזת.
- דוגמאות:
- ארצות הברית
- בריטניה
- ספרד
Location.name
- מטרה: אחסון השם הספציפי לארגון, כמו בניין או קמפוס.
- קידוד: מחרוזת.
- דוגמאות:
- Campus 7B
- בניין A2
Location.state
- מטרה: אחסון השם של המדינה (State), המחוז או הטריטוריה.
- קידוד: מחרוזת.
- דוגמאות:
- קליפורניה
- אילינוי
- אונטריו
אכלוס מטא-נתונים של רשת
Network.application_protocol
- מטרה: מציינת את פרוטוקול האפליקציה ברשת.
- קידוד: סוג ממוספר.
ערכים אפשריים:
- UNKNOWN_APPLICATION_PROTOCOL
- AFP
- APPC
- AMQP
- ATOM
- BEEP
- BITCOIN
- BIT_TORRENT
- CFDP
- CIP
- COAP
- COTP
- DCERPC
- DDS
- DEVICE_NET
- DHCP
- DICOM
- DNP3
- DNS
- E_DONKEY
- ENRP
- FAST_TRACK
- אצבע
- FREENET
- FTAM
- GOOSE
- GOPHER
- GRPC
- HL7
- H323
- HTTP
- HTTPS
- IEC104
- IRCP
- KADEMLIA
- KRB5
- LDAP
- LPD
- MIME
- MMS
- MODBUS
- פרוטוקול MQTT
- NETCONF
- NFS
- NIS
- NNTP
- NTCIP
- NTP
- OSCAR
- PNRP
- PTP
- QUIC
- RDP
- RELP
- RIP
- RLOGIN
- RPC
- RTMP
- RTP
- RTPS
- RTSP
- SAP
- SDP
- SIP
- SLP
- SMB
- SMTP
- SNMP
- SNTP
- SSH
- SSMS
- STYX
- SV
- TCAP
- TDS
- TOR
- TSP
- VTP
- WHOIS
- WEB_DAV
- X400
- X500
- XMPP
Network.direction
- מטרה: מציין את הכיוון של התנועה ברשת.
- קידוד: סוג ממוספר.
- ערכים אפשריים:
- UNKNOWN_DIRECTION
- INBOUND
- שיחות יוצאות
- שידור
Network.email
- מטרה: מציין את כתובת האימייל של השולח או הנמען.
- קידוד: מחרוזת.
- דוגמה: jcheng@company.example.com
Network.ip_protocol
- מטרה: מציינת את פרוטוקול ה-IP.
- קידוד: סוג ממוספר.
- ערכים אפשריים:
- UNKNOWN_IP_PROTOCOL
- EIGRP – פרוטוקול ניתוב משופר של שער פנימי (Enhanced Interior Gateway Routing Protocol)
- ESP – Encapsulating Security Payload
- ETHERIP – אנקפסולציה של Ethernet-within-IP
- GRE – Generic Routing Encapsulation
- ICMP – פרוטוקול הודעות בקרה באינטרנט
- IGMP – Internet Group Management Protocol
- IP6IN4 – אנקפסולציה של IPv6
- PIM – Protocol Independent Multicast
- TCP – פרוטוקול העברת נתונים מבוקרת
- UDP – פרוטוקול User Datagram
- VRRP – Virtual Router Redundancy Protocol
Network.received_bytes
- מטרה: מציין את מספר הבייטים שהתקבלו.
- קידוד: מספר שלם לא חתום של 64 ביט.
- לדוגמה: 12,453,654,768
Network.sent_bytes
- מטרה: מציין את מספר הבייטים שנשלחו.
- קידוד: מספר שלם לא חתום של 64 ביט.
- לדוגמה: 7,654,876
Network.session_duration
- מטרה: אחסון משך הסשן ברשת, בדרך כלל מוחזר באירוע של ניתוק הסשן. כדי להגדיר את משך הזמן, אפשר להגדיר את network.session_duration.seconds = 1, (סוג int64) או את network.session_duration.nanos = 1 (סוג int32).
- קידוד:
- מספר שלם של 32 ביט – לשניות (network.session_duration.seconds).
- מספר שלם של 64 ביט – לננו-שניות (network.session_duration.nanos).
Network.session_id
- מטרה: אחסון מזהה הסשן ברשת.
- קידוד: מחרוזת.
- דוגמה: SID:ANON:www.w3.org:j6oAOxCWZh/CD723LGeXlf-01:34
אכלוס המטא-נתונים של התהליך
Process.command_line
- מטרה: אחסון המחרוזת של שורת הפקודה של התהליך.
- קידוד: מחרוזת.
- דוגמה: קבוצת
c:\windows\system32\net.exe.
Process.product_specific_process_id
- מטרה: מאחסן את מזהה התהליך הספציפי למוצר.
- קידוד: מחרוזת.
- דוגמאות:
MySQL:78778אוCS:90512
Process.parent_process.product_specific_process_id
- מטרה: מאחסן את מזהה התהליך הספציפי למוצר של תהליך ההורה.
- קידוד: מחרוזת.
- דוגמאות:
MySQL:78778אוCS:90512
Process.file
- מטרה: אחסון שם הקובץ שנמצא בשימוש על ידי התהליך.
- קידוד: מחרוזת.
- דוגמה: report.xls
Process.parent_process
- מטרה: אחסון הפרטים של תהליך ההורה.
- קידוד: שם עצם (תהליך)
Process.pid
- מטרה: אחסון מזהה התהליך.
- קידוד: מחרוזת.
- דוגמאות:
- 308
- 2002
אכלוס המטא-נתונים של המרשם
Registry.registry_key
- מטרה: אחסון מפתח הרישום שמשויך לאפליקציה או לרכיב מערכת.
- קידוד: מחרוזת.
- דוגמה: HKEY_LOCAL_MACHINE/SYSTEM/DriverDatabase
Registry.registry_value_name
- מטרה: מאחסן את השם של ערך הרישום שמשויך לאפליקציה או לרכיב מערכת.
- קידוד: מחרוזת.
- דוגמה: TEMP
Registry.registry_value_data
- מטרה: מאחסן את הנתונים שמשויכים לערך של Registry.
- קידוד: מחרוזת.
- דוגמה: %USERPROFILE%\Local Settings\Temp
אכלוס המטא-נתונים של תוצאת האבטחה
המטא-נתונים של Security Result כוללים פרטים על סיכוני אבטחה ואיומים שנמצאו על ידי מערכת אבטחה, וגם את הפעולות שננקטו כדי לצמצם את הסיכונים והאיומים האלה.
SecurityResult.about
- מטרה: תיאור של תוצאת האבטחה.
- קידוד: שם עצם.
SecurityResult.action
- מטרה: ציון פעולת אבטחה.
- קידוד: סוג ממוספר.
- ערכים אפשריים: ב-Google SecOps UDM מוגדרות פעולות האבטחה הבאות:
- אישור
- ALLOW_WITH_MODIFICATION – הקובץ או האימייל עברו חיטוי או שכתוב, והועברו הלאה.
- חסימה
- הסגר – אחסון לניתוח מאוחר יותר (לא חסימה).
- UNKNOWN_ACTION
SecurityResult.action_details
- מטרה: פרטים שסיפק הספק לגבי הפעולה שננקטה בעקבות אירוע האבטחה. פעולות אבטחה בדרך כלל מתורגמות בצורה הטובה ביותר לשדה ה-UDM הכללי יותר Security_Result.action. עם זאת, יכול להיות שתצטרכו לכתוב כללים לתיאור המדויק של הפעולה שסופק על ידי הספק.
- קידוד: מחרוזת.
- דוגמאות: drop, block, decrypt, encrypt.
SecurityResult.category
- מטרה: מציינים קטגוריית אבטחה.
- קידוד: טיפוסים בני מנייה (enum).
- ערכים אפשריים: ב-Google SecOps UDM מוגדרות קטגוריות האבטחה הבאות:
- ACL_VIOLATION – ניסיון גישה לא מורשית, כולל ניסיון גישה לקבצים, לשירותי אינטרנט, לתהליכים, לאובייקטים באינטרנט וכו'.
- AUTH_VIOLATION – האימות נכשל, למשל בגלל סיסמה שגויה או אימות דו-שלבי שגוי.
- DATA_AT_REST—DLP: נתוני חיישנים שנמצאו במנוחה בסריקה.
- DATA_DESTRUCTION – ניסיון להשמיד או למחוק נתונים.
- DATA_EXFILTRATION—DLP: העברת נתוני חיישנים, העתקה לכונן USB.
- EXPLOIT – ניסיונות להצפת מאגר נתונים, קידודים שגויים של פרוטוקולים, ROP, הזרקת SQL וכו', גם ברשת וגם במארח.
- MAIL_PHISHING – הודעות פישינג באימייל, הודעות צ'אט וכו'.
- MAIL_SPAM – אימייל, הודעה וכו' שהם ספאם.
- MAIL_SPOOFING – כתובת אימייל מזויפת של המקור וכו'.
- NETWORK_CATEGORIZED_CONTENT
- NETWORK_COMMAND_AND_CONTROL – אם ערוץ הפיקוד והבקרה ידוע.
- NETWORK_DENIAL_OF_SERVICE
- NETWORK_MALICIOUS – פקודות ואמצעי בקרה, ניצול לרעה של הרשת, פעילות חשודה, מנהרה הפוכה פוטנציאלית וכו'.
- NETWORK_SUSPICIOUS – לא קשור לאבטחה, למשל, כתובת ה-URL מקושרת להימורים וכו'.
- NETWORK_RECON – סריקת יציאות שזוהתה על ידי מערכת לזיהוי פריצות (IDS), בדיקה על ידי אפליקציית אינטרנט.
- POLICY_VIOLATION – הפרה של מדיניות האבטחה, כולל הפרות של כללי חומת אש, שרת proxy ו-HIPS או פעולות חסימה של NAC.
- SOFTWARE_MALICIOUS – תוכנות זדוניות, רוגלות, ערכות Rootkit וכו'.
- SOFTWARE_PUA – אפליקציה שעלולה להיות לא רצויה, כמו תוכנת פרסום וכו'.
- SOFTWARE_SUSPICIOUS
- UNKNOWN_CATEGORY
SecurityResult.confidence
- מטרה: לציין את רמת הסבירות של אירוע אבטחה, כפי שהיא מוערכת על ידי המוצר.
- קידוד: טיפוסים בני מנייה (enum).
- ערכים אפשריים: ב-Google SecOps UDM מוגדרות הקטגוריות הבאות של רמת הסמך של המוצר:
- UNKNOWN_CONFIDENCE
- LOW_CONFIDENCE
- MEDIUM_CONFIDENCE
- HIGH_CONFIDENCE
SecurityResult.confidence_details
- מטרה: פרטים נוספים לגבי רמת הסבירות של אירוע אבטחה, כפי שהוערכה על ידי ספק המוצר.
- קידוד: מחרוזת.
SecurityResult.priority
- מטרה: לציין את העדיפות של אירוע אבטחה, כפי שהיא מוערכת על ידי ספק המוצר.
- קידוד: טיפוסים בני מנייה (enum).
- ערכים אפשריים: ב-Google SecOps UDM מוגדרות קטגוריות העדיפות הבאות של המוצר:
- UNKNOWN_PRIORITY
- LOW_PRIORITY
- MEDIUM_PRIORITY
- HIGH_PRIORITY
SecurityResult.priority_details
- מטרה: מידע ספציפי לספק לגבי העדיפות של תוצאת האבטחה.
- קידוד: מחרוזת.
SecurityResult.rule_id
- מטרה: מזהה של כלל האבטחה.
- קידוד: מחרוזת.
- דוגמאות:
- 08123
- 5d2b44d0-5ef6-40f5-a704-47d61d3babbe
SecurityResult.rule_name
- מטרה: שם כלל האבטחה.
- קידוד: מחרוזת.
- דוגמה: BlockInboundToOracle.
SecurityResult.severity
- מטרה: חומרת אירוע האבטחה לפי הערכת ספק המוצר, באמצעות ערכים שהוגדרו על ידי Google SecOps UDM.
- קידוד: טיפוסים בני מנייה (enum).
- ערכים אפשריים: ב-Google SecOps UDM מוגדרות רמות החומרה הבאות של המוצר:
- UNKNOWN_SEVERITY – לא זדונית
- INFORMATIONAL – לא זדוני
- שגיאה – לא זדוני
- נמוכה – זדונית
- בינונית – זדונית
- גבוהה – זדונית
SecurityResult.severity_details
- מטרה: חומרת אירוע האבטחה, כפי שהוערכה על ידי ספק המוצר.
- קידוד: מחרוזת.
SecurityResult.threat_name
- מטרה: השם של איום האבטחה.
- קידוד: מחרוזת.
- דוגמאות:
- W32/File-A
- Slammer
SecurityResult.url_back_to_product
- מטרה: כתובת URL שמפנה אתכם למסוף המוצר המקורי של אירוע האבטחה הזה.
- קידוד: מחרוזת.
אכלוס המטא-נתונים של המשתמשים
User.email_addresses
- מטרה: אחסון כתובות האימייל של המשתמש.
- קידוד: מחרוזת חוזרת.
- דוגמה: johnlocke@company.example.com
User.employee_id
- מטרה: אחסון מזהה העובד של המשתמש במשאבי אנוש.
- קידוד: מחרוזת.
- דוגמה: 11223344.
User.first_name
- מטרה: אחסון השם הפרטי של המשתמש.
- קידוד: מחרוזת.
- דוגמה: ישראל.
User.middle_name
- מטרה: אחסון השם האמצעי של המשתמש.
- קידוד: מחרוזת.
- דוגמה: אנתוני.
User.last_name
- מטרה: אחסון שם המשפחה של המשתמש.
- קידוד: מחרוזת.
- דוגמה: Locke.
User.group_identifiers
- מטרה: אחסון מזהי הקבוצות (GUID, LDAP OID או מזהה דומה) שמשויכים למשתמש.
- קידוד: מחרוזת חוזרת.
- דוגמה: admin-users.
User.phone_numbers
- מטרה: אחסון מספרי הטלפון של המשתמש.
- קידוד: מחרוזת חוזרת.
- לדוגמה: 18005550101
User.title
- מטרה: אחסון התפקיד של המשתמש.
- קידוד: מחרוזת.
- דוגמה: מנהל קשרי לקוחות.
User.user_display_name
- מטרה: שמירת השם המוצג של המשתמש.
- קידוד: מחרוזת.
- דוגמה: ישראל ישראלי.
User.userid
- מטרה: אחסון מזהה המשתמש.
- קידוד: מחרוזת.
- דוגמה: jlocke.
User.windows_sid
- מטרה: מאחסן את מזהה האבטחה (SID) של Microsoft Windows שמשויך למשתמש.
- קידוד: מחרוזת.
- לדוגמה: S-1-5-21-1180649209-123456789-3582944384-1064
אכלוס מטא-נתונים של נקודות חולשה
Vulnerability.about
- מטרה: אם נקודת החולשה קשורה לשם עצם ספציפי (לדוגמה, קובץ הפעלה), מוסיפים אותו כאן.
- קידוד: שם עצם. אכלוס מטא-נתונים של שמות עצם
- דוגמה: קובץ הפעלה.
Vulnerability.cvss_base_score
- מטרה: ניקוד בסיסי של Common Vulnerability Scoring System (CVSS).
- קידוד: נקודה צפה.
- טווח: 0.0 עד 10.0
- דוגמה: 8.5
Vulnerability.cvss_vector
מטרה: וקטור למאפייני ה-CVSS של נקודת החולשה. ציון CVSS מורכב מהמדדים הבאים:
- וקטור תקיפה (AV)
- מורכבות הגישה (AC)
- אימות (Au)
- השפעה על הסודיות (C)
- השפעה על התקינות (I)
- השפעה על הזמינות (A)
מידע נוסף זמין בכתובת https://nvd.nist.gov/vuln-metrics/cvss/v2-calculator.
קידוד: מחרוזת.
דוגמה: AV:L/AC:H/Au:N/C:N/I:P/A:C
Vulnerability.cvss_version
- מטרה: גרסת ה-CVSS של הניקוד או הווקטור של נקודת החולשה.
- קידוד: מחרוזת.
- דוגמה: 3.1
Vulnerability.description
- מטרה: תיאור של נקודת החולשה.
- קידוד: מחרוזת.
Vulnerability.first_found
- מטרה: במוצרים ששומרים היסטוריה של סריקות לאיתור נקודות חולשה, צריך לאכלס את first_found בזמן שבו זוהתה לראשונה נקודת החולשה בנכס הזה.
- קידוד: מחרוזת.
Vulnerability.last_found
- מטרה: במוצרים ששומרים היסטוריה של סריקות לאיתור נקודות חולשה, צריך לאכלס את last_found בשעה שבה זוהתה לאחרונה נקודת החולשה בנכס הזה.
- קידוד: מחרוזת.
Vulnerability.name
- מטרה: שם נקודת החולשה.
- קידוד: מחרוזת.
- דוגמה: זוהתה גרסה לא נתמכת של מערכת ההפעלה.
Vulnerability.scan_end_time
- מטרה: אם נקודת החולשה התגלתה במהלך סריקת נכסים, מאכלסים את השדה הזה בשעה שבה הסריקה הסתיימה. אם שעת הסיום לא זמינה או לא רלוונטית, השאירו את השדה הזה ריק.
- קידוד: מחרוזת.
Vulnerability.scan_start_time
- מטרה: אם נקודת החולשה התגלתה במהלך סריקת נכסים, מאכלסים את השדה הזה בשעה שבה הסריקה התחילה. אם שעת ההתחלה לא זמינה או לא רלוונטית, משאירים את השדה הזה ריק.
- קידוד: מחרוזת.
Vulnerability.severity
- מטרה: חומרת נקודת החולשה.
- קידוד: סוג ממוספר.
- ערכים אפשריים:
- UNKNOWN_SEVERITY
- נמוכה
- MEDIUM
- גבוהה
Vulnerability.severity_details
- מטרה: פרטי חומרה ספציפיים לספק.
- קידוד: מחרוזת.
אכלוס המטא-נתונים של ההתראה
idm.is_significant
- מטרה: מציינת אם להציג את ההתראה ב-Enterprise Insights.
- קידוד: ערך בוליאני.
idm.is_alert
- מטרה: זיהוי אם האירוע הוא התראה.
- קידוד: ערך בוליאני.
שדות חובה ושדות אופציונליים לסוגי ישויות
| סוג ישות | דרישות ספציפיות לישות |
|---|---|
IP_ADDRESS |
|
FILE |
|
DOMAIN_NAME |
|
URL |
|
MUTEX |
|
USER |
|
RESOURCE |
|
CIDR_BLOCK |
|
ASSET |
|
GROUP |
|
AI |
|
שדות חובה ואופציונליים לכל סוג אירוע
בקטע הזה מתוארים השדות הנדרשים ושדות האפשרויות שצריך לאכלס לכל סוג אירוע ב-UDM.
לפרטים על שדות ספציפיים של UDM (לדוגמה, מספרי enum), עיינו ברשימת השדות של Unified Data Model.
DEVICE_CONFIG_UPDATE, DEVICE_FIRMWARE_UPDATE, DEVICE_PROGRAM_DOWNLOAD, DEVICE_PROGRAM_UPLOAD
שדות חובה:
- metadata: כולל את שדות החובה (
event_timestampו-event_type). - principal: צריך לכלול לפחות מזהה מכונה אחד (
principal.hostname,principal.ip,principal.macאוprincipal.asset_id).
שדות אופציונליים:
- principal.user: מאוכלס אם פרטי המשתמש זמינים לחשבון שהפעיל את עדכון המכשיר.
- target: מאכלסים את השדה הזה בפרטים על מכשיר היעד, הקושחה, משאב ההגדרות או קובץ התוכנית, אם הם שונים מ-
principal. - security_result: תיאור של פעילות זדונית או חריגה שזוהתה.
דוגמה ל-UDM עבור DEVICE_FIRMWARE_UPDATE
בדוגמה הבאה אפשר לראות איך להגדיר את הפורמט של אירוע DEVICE_FIRMWARE_UPDATE ל-UDM של Google SecOps:
{
"metadata": {
"event_timestamp": "2025-03-10T14:22:05.000000Z",
"event_type": "DEVICE_FIRMWARE_UPDATE"
},
"principal": {
"hostname": "plc-controller-01",
"ip": [
"10.20.30.40"
]
}
}
כפי שמוצג בדוגמה הזו, האירוע מחולק לקטגוריות הבאות של UDM:
- מטא-נתונים: מידע רקע על האירוע.
- principal: מידע על המכשיר שבו בוצע עדכון הקושחה.
EMAIL_TRANSACTION, EMAIL_UNCATEGORIZED
שדות חובה:
- metadata: כוללים את שדות החובה.
- principal: מאכלסים את השדה במידע על המכונה שממנה נשלחה הודעת האימייל (לדוגמה, כתובת ה-IP של השולח).
שדות אופציונליים:
- about: כתובות URL, כתובות IP, דומיינים וכל קובץ מצורף שמוטמע בתוכן האימייל. שימו לב שהשדה about.file.hash הוא לא שדה שנוסף לאינדקס של גיבובי קבצים. תצוגות ה-hash לא יאוכלסו מ-hash של קובץ מצורף שעבר נירמול לשדה הזה.
- securityResult.about: כתובות URL, כתובות IP וקבצים לא תקינים שמוטמעים בתוכן האימייל.
- network.email: פרטי השולח או הנמען של האימייל. שימו לב שהשדה network.email הוא לא שדה של כינוי. אם אתם צריכים כינויים והעשרה לחיפוש או לזיהוי, תצטרכו להוסיף לאינדקס את חשבון המשתמש או היעד באמצעות תוסף לניתוח.
- principal: אם יש נתונים במכונת הלקוח לגבי מי ששלח את האימייל, מאכלסים את פרטי השרת ב-principal (לדוגמה, תהליך הלקוח, מספרי היציאות, שם המשתמש וכו').
- target: אם יש נתונים של שרת אימייל ביעד, מאכלסים את פרטי השרת ביעד (לדוגמה, כתובת ה-IP).
- intermediary: אם יש נתונים של שרת דואר או נתונים של שרת proxy לדואר, מאכלסים את פרטי השרת ב-intermediary.
הערות:
- לעולם אל תאכלסו את principal.email או את target.email.
- מאכלסים רק את שדה האימייל ב-security_result.about או ב-network.email.
- בתוצאות אבטחה ברמה העליונה בדרך כלל מוגדר שם עצם (אופציונלי לספאם).
- האירוע EMAIL_URL_CLICK מסומן כאירוע שהוצא משימוש.
דוגמה ל-UDM של EMAIL_TRANSACTION
הדוגמה הבאה ממחישה איך אירוע מסוג EMAIL_TRANSACTION יופיע בפורמט של Google SecOps UDM:
metadata {
event_timestamp: "2023-07-06T06:26:10.448584Z"
event_type: EMAIL_TRANSACTION
}
principal {
ip: "1.2.3.4"
}
כפי שמוצג בדוגמה הזו, האירוע מחולק לקטגוריות הבאות של UDM:
- מטא-נתונים: מידע רקע על האירוע.
- principal: מידע על המכשיר שממנו נשלח האימייל.
FILE_CREATION, FILE_DELETION, FILE_MODIFICATION, FILE_READ, FILE_OPEN ו-FILE_UNCATEGORIZED
שדות חובה:
- metadata: כוללים את שדות החובה.
- principal:
- מזהה מכונה אחד לפחות.
- (אופציונלי) מאכלסים את principal.process במידע על התהליך שניגש לקובץ.
- target:
- אם הקובץ מרוחק (לדוגמה, שיתוף SMB), היעד חייב לכלול לפחות מזהה מכונה אחד של מכונת היעד. אחרת, כל מזהי המכונות חייבים להיות ריקים.
- מאכלסים את target.file במידע על הקובץ.
שדות אופציונליים:
- security_result: תיאור הפעילות הזדונית שזוהתה.
- principal.user: מאכלסים אם יש מידע על המשתמש בתהליך.
דוגמה ל-UDM עבור FILE_MODIFICATION
הדוגמה הבאה ממחישה איך אירוע מסוג FILE_MODIFICATION יפורמט ל-UDM של Google SecOps:
metadata {
event_timestamp: "2023-07-03T12:14:38.164507Z"
event_type: FILE_MODIFICATION
}
principal {
hostname: "pinguino-01"
}
target {
file {
full_path: "foo.bar"
}
}
כפי שמוצג בדוגמה הזו, האירוע מחולק לקטגוריות הבאות של UDM:
- מטא-נתונים: מידע רקע על האירוע.
- principal: מידע על המכשיר שבו בוצע השינוי בקובץ.
- target: מידע על הקובץ שבו בוצע השינוי.
FILE_COPY
שדות חובה:
- מטא-נתונים: צריך לכלול את שדות החובה כפי שמתואר.
- principal:
- מזהה מכונה אחד לפחות.
- (אופציונלי) מאכלסים את principal.process במידע על התהליך שמבצע את פעולת העתקת הקובץ.
- src:
- מאכלסים את src.file במידע על קובץ המקור.
- אם הקובץ מרוחק (לדוגמה, שיתוף SMB), הערך של src חייב לכלול לפחות מזהה מכונה אחד של מכונת המקור שבה מאוחסן קובץ המקור.
- target:
- מאכלסים את target.file במידע על קובץ היעד.
- אם הקובץ מרוחק (לדוגמה, שיתוף SMB), השדה target צריך לכלול לפחות מזהה מכונה אחד של מכונת היעד שבה נמצא קובץ היעד.
שדות אופציונליים:
- security_result: תיאור הפעילות הזדונית שזוהתה.
- principal.user: מאכלסים אם יש מידע על המשתמש בתהליך.
FILE_MOVE, FILE_SYNC
שדות חובה:
- מטא-נתונים: מידע רקע על האירוע.
- principal: לפחות מזהה מכונה אחד (לדוגמה,
principal.hostname). - src: מאכלסים את
src.file(לדוגמה,src.file.full_path) כדי לייצג את הקובץ המקורי. השדה הזה נדרש עבורFILE_MOVEו-FILE_COPY. ב-FILE_SYNC, צריך לאכלס לפחות אחד מהשדותsrc.fileאוtarget.file(והשדהtargetלא יכול להיות ריק). - target: מאכלסים את
target.file(לדוגמה,target.file.full_path) כדי לייצג את קובץ היעד. השדה הזה נדרש עבורFILE_MOVEו-FILE_COPY. ב-FILE_SYNC, צריך לאכלס לפחות אחד מהשדותsrc.fileאוtarget.file.
דוגמה ל-UDM של FILE_MOVE
הדוגמה הבאה ממחישה איך אירוע מסוג FILE_MOVE יופיע בפורמט של Google SecOps UDM:
{
"metadata": {
"event_timestamp": "2023-07-03T12:45:02.557878Z",
"event_type": "FILE_MOVE"
},
"src": {
"file": {
"full_path": "foo.bar"
}
},
"principal": {
"hostname": "pinguino-01"
},
"target": {
"file": {
"full_path": "foo.bar"
}
}
}
כפי שמוצג בדוגמה הזו, האירוע מחולק לקטגוריות הבאות של UDM:
- מטא-נתונים: מידע רקע על האירוע.
- principal: מידע על המכשיר שבו התרחשה העברת הקובץ.
- src: מידע על קובץ המקור.
- target: מידע על קובץ היעד.
GENERIC_EVENT
השתמשו ב-GENERIC_EVENT רק כשאירוע לא מתאים לאף קטגוריה אחרת של סוגי אירועים ב-UDM.
שדות חובה:
- metadata: כולל את שדות החובה (
event_timestampו-event_type).
שדות אופציונליים:
- metadata.product_event_type ו-metadata.description: כוללים את שם האירוע הספציפי לספק ואת התיאור הקריא לאנשים.
- principal, target, src, intermediary, observer ו-about: מאכלסים את כל הישויות שמעורבות באירוע.
GENERIC_EVENTלא אוכף דרישות שדה ספציפיות לישות מעבר לאימות סוג סקלרי סטנדרטי (כמו כתובות IP חוקיות ושמות מארחים של עד 255 בייטים). - security_result: תיאור של פעילות זדונית או חריגה שזוהתה.
דוגמה ל-UDM של GENERIC_EVENT
בדוגמה הבאה אפשר לראות איך להגדיר את הפורמט של אירוע GENERIC_EVENT ל-UDM של Google SecOps:
{
"metadata": {
"event_timestamp": "2025-03-10T15:00:00.000000Z",
"event_type": "GENERIC_EVENT",
"product_event_type": "CustomAuditEvent",
"description": "Custom audit event recorded on host"
},
"principal": {
"hostname": "workstation-01"
}
}
כפי שמוצג בדוגמה הזו, האירוע מחולק לקטגוריות הבאות של UDM:
- metadata: מידע רקע ותיאור של האירוע שספציפי לספק.
- principal: מידע על המכשיר שמשויך לאירוע.
GROUP_CREATION, GROUP_DELETION, GROUP_MODIFICATION, GROUP_UNCATEGORIZED
שדות חובה:
- metadata: כולל את שדות החובה (
event_timestampו-event_type). - principal: צריך לכלול לפחות מזהה משתמש אחד ב-
principal.user(userid,windows_sid,email_addressesאוemployee_id). - target: מאכלס את
target.groupבפרטים על הקבוצה שנוצרה, נמחקה או שונתה (ואתtarget.userאם משתמש נוסף לקבוצה או הוסר ממנה). השדהtargetלא יכול להיות ריק.
שדות אופציונליים:
- principal: כולל מזהי מכונה של המכשיר שממנו בוצעה הפעולה הקבוצתית.
- target.group: כולל מזהי קבוצות כמו
group_display_name,product_object_id,windows_sidאוemail_addresses. - security_result: תיאור של כל פעילות זדונית שזוהתה.
דוגמה ל-UDM עבור GROUP_MODIFICATION
בדוגמה הבאה אפשר לראות איך להגדיר את הפורמט של אירוע GROUP_MODIFICATION ל-UDM של Google SecOps:
{
"metadata": {
"event_timestamp": "2025-03-10T16:10:00.000000Z",
"event_type": "GROUP_MODIFICATION"
},
"principal": {
"user": {
"userid": "admin_user"
}
},
"target": {
"group": {
"group_display_name": "Domain Admins",
"windows_sid": "S-1-5-21-3623811015-3361044348-30300820-512"
},
"user": {
"userid": "jdoe"
}
}
}
כפי שמוצג בדוגמה הזו, האירוע מחולק לקטגוריות הבאות של UDM:
- מטא-נתונים: מידע רקע על האירוע.
- principal: מידע על המשתמש ששינה את הקבוצה.
- target: מידע על הקבוצה ששונתה ועל המשתמש שהושפע מהשינוי.
MUTEX_CREATION, MUTEX_UNCATEGORIZED
שדות חובה:
- metadata: כוללים את שדות החובה.
- principal:
- מזהה מכונה אחד לפחות.
- מאכלסים את principal.process במידע על התהליך שיוצר את ה-mutex. כדי לאמת את ה-UDM, צריך אובייקט תהליך ב-principal. אי אפשר לעבור את אימות ה-UDM עם תהליך רק ביעד.
- target:
- מאכלסים את target.resource.
- מאכלסים את target.resource.type ב-MUTEX.
- מאכלסים את target.resource.name בשם של ה-mutex שנוצר.
שדות אופציונליים:
- security_result: תיאור הפעילות הזדונית שזוהתה.
- principal.user: מאכלסים אם יש מידע על המשתמש בתהליך.
דוגמה ל-UDM של MUTEX_CREATION
הדוגמה הבאה ממחישה איך אירוע מסוג MUTEX_CREATION יפורמט ל-Google SecOps UDM:
metadata {
event_timestamp: "2020-01-01T13:27:41+00:00"
event_type: MUTEX_CREATION
vendor_name: "Microsoft"
product_name: "Windows"
}
principal {
hostname: "test.altostrat.com"
process {
pid: "0xc45"
file {
full_path: "C:\\Windows\\regedit.exe"
}
}
}
target {
resource {
type: "MUTEX"
name: "test-mutex"
}
}
כפי שמוצג בדוגמה הזו, האירוע חולק לקטגוריות הבאות של UDM:
- metadata: מידע רקע על האירוע.
- principal: פרטי המכשיר והתהליך.
- target: מידע על ה-mutex.
NETWORK_CONNECTION, NETWORK_FLOW, NETWORK_FTP, NETWORK_SMTP
שדות חובה:
- metadata: event_timestamp
- principal: פרטים על המכונה שיזמה את החיבור לרשת (לדוגמה, מקור).
- target: פרטים על מכונת היעד, אם היא שונה מהמכונה הראשית.
- network: תיעוד פרטים על החיבור לרשת (יציאות, פרוטוקול וכו').
שדות אופציונליים:
- principal.process ו-target.process: כוללים מידע על התהליך שמשויך לגורם הראשי וליעד של החיבור לרשת (אם זמין).
- principal.user ו-target.user: כוללים את פרטי המשתמש שמשויכים לגורם הראשי וליעד של החיבור לרשת (אם זמינים).
- רשת: תיעוד פרטים על החיבור לרשת, כולל יציאות ופרוטוקול.
NETWORK_DHCP
שדות חובה:
- מטא-נתונים: מידע רקע על האירוע.
- principal: לפחות מזהה מכונה אחד (לדוגמה, principal.ip).
- network: צריך לציין את network.application_protocol בתור DHCP. צריך גם לאכלס את network.dhcp.opcode (לדוגמה, BOOTREQUEST או BOOTREPLY).
דוגמה ל-UDM עבור NETWORK_DHCP
הדוגמה הבאה ממחישה איך אירוע מסוג NETWORK_DHCP יופיע בפורמט של Google SecOps UDM:
{
"metadata": {
"event_timestamp": "2023-07-04T18:52:22.142364Z",
"event_type": "NETWORK_DHCP"
},
"principal": {
"ip": [
"1.2.3.4"
]
},
"network": {
"application_protocol": "DHCP",
"dhcp": {
"opcode": "BOOTREPLY"
}
}
}
כפי שמוצג בדוגמה הזו, האירוע מחולק לקטגוריות הבאות של UDM:
- מטא-נתונים: מידע רקע על האירוע.
- principal: מידע על המכשיר שמבקש או מקבל את הקצאת ה-DHCP.
- network: פרטים על החיבור לרשת DHCP וקוד הפעולה.
NETWORK_DNS
שדות חובה:
- principal: לפחות מזהה מכונה אחד (לדוגמה, principal.ip).
- network: צריך לציין את network.application_protocol בתור DNS. נדרשת גם המדיניות network.dns.questions.name.
- מטא-נתונים: מידע רקע על האירוע.
דוגמה ל-UDM עבור NETWORK_DNS
הדוגמה הבאה ממחישה איך אירוע מסוג NETWORK_DNS יופיע בפורמט של Google SecOps UDM:
{
"metadata": {
"event_timestamp": "2023-07-04T18:54:15.943301Z",
"event_type": "NETWORK_DNS"
},
"principal": {
"ip": [
"1.2.3.4"
]
},
"network": {
"application_protocol": "DNS",
"dns": {
"questions": {
"name": "www.acme.com"
}
}
}
}
כפי שמוצג בדוגמה הזו, האירוע מחולק לקטגוריות הבאות של UDM:
- מטא-נתונים: מידע רקע על האירוע.
- principal: מידע על המכשיר ששולח את בקשת ה-DNS.
- network: פרטים על החיבור לרשת ה-DNS ועל שם הדומיין שנשלחה אליו שאילתה.
NETWORK_HTTP
סוג האירוע NETWORK_HTTP מייצג חיבור לרשת HTTP מחשבון משתמש לשרת אינטרנט של יעד.
שדות חובה:
- metadata: כוללים את שדות החובה.
- target: מייצג את שרת האינטרנט. כוללים את פרטי המכשיר ואת מספר היציאה (אופציונלי).
- אם יש מספר יציאת יעד, צריך לציין רק כתובת IP אחת בנוסף למספר היציאה שמשויך לחיבור לרשת (למרות שאפשר לציין כמה מזהי מכונות אחרים ליעד).
- בשדה
target.url, מאכלסים את כתובת ה-URL שאליה ניגשו.
שדות אופציונליים:
- חשבון משתמש: מייצג את הלקוח שיוזם את הבקשה לאחזור מהרשת. צריך לכלול לפחות מזהה מכונה אחד (לדוגמה, שם מארח, IP, MAC, מזהה נכס קנייני) או מזהה משתמש (לדוגמה, שם משתמש).
- אם מתואר חיבור ספציפי לרשת ויש מספר יציאה של לקוח, צריך לציין רק כתובת IP אחת יחד עם מספר היציאה שמשויך לחיבור לרשת הזה (אבל אפשר לספק מזהי מכונה אחרים כדי לתאר טוב יותר את המכשיר של המשתתף).
- אם אין יציאת מקור זמינה, אפשר לציין כל כתובת IP ו-MAC, מזהי נכסים וערכים של שמות מארחים שמתארים את המכשיר הראשי.
- network ו-network.http: כוללים פרטים על החיבור לרשת HTTP. צריך למלא את השדות הבאים:
- network.ip_protocol
- network.application_protocol
- network.http.method
- about: מייצג ישויות אחרות שנמצאו בטרנזקציית ה-HTTP (לדוגמה, קובץ שהועלה או הורד).
- intermediary: מייצג שרת proxy (אם הוא שונה מהישות הראשית או מהיעד).
- מטא-נתונים: מאכלסים את שאר השדות של המטא-נתונים.
- network: ממלאים שדות אחרים של הרשת.
- network.email: אם החיבור לרשת ה-HTTP הגיע מכתובת URL שהופיעה בהודעת אימייל, מאכלסים את network.email בפרטים.
- observer: מייצג רחרחן פסיבי (אם קיים).
- security_result: מוסיפים פריט אחד או יותר לשדה security_result כדי לייצג את הפעילות הזדונית שזוהתה.
דוגמה ל-UDM עבור NETWORK_HTTP
הדוגמה הבאה ממחישה איך אירוע של Sophos Antivirus מסוג NETWORK_HTTP יומר לפורמט UDM של Google SecOps.
האירוע המקורי של Sophos Antivirus:
date=2013-08-07 time=13:27:41 timezone="GMT" device_name="CC500ia" device_id= C070123456-ABCDE log_id=030906208001 log_type="Anti-Virus" log_component="HTTP" log_subtype="Virus" status="" priority=Critical fw_rule_id=0 user_name="john.smith" iap=7 av_policy_name="" virus="TR/ElderadoB.A.78" url="altostrat.fr/img/logo.gif" domainname="altostrat.fr" src_ip=10.10.2.10 src_port=60671 src_country_code= dst_ip=203.0.113.31 dst_port=80 dst_country_code=FRA
כך מעצבים את אותו מידע ב-Proto3 באמצעות תחביר ה-UDM של Google SecOps:
metadata {
event_timestamp: "2013-08-07T13:27:41+00:00"
event_type: NETWORK_HTTP
product_name: "Sophos Antivirus"
product_log_id: "030906208001"
}
principal {
hostname: "CC500ia"
asset_id: "Sophos.AV:C070123456-ABCDE"
ip: "10.10.2.10"
port: 60671
user { userid: "john.smith" }
}
target {
hostname: "altostrat.fr"
ip: "203.0.113.31"
port: 80
url: "altostrat.fr/img/logo.gif"
}
network {
ip_protocol: TCP
}
security_result {
about {
url: "altostrat.fr/img/logo.gif"
category: SOFTWARE_MALICIOUS
category_details: "Virus"
threat_name: "TR/ElderadoB.A.78"
severity: HIGH # Google Security Operations-normalized severity
severity_details: "Critical" # Vendor-specific severity string
}
}
additional { "dst_country_code" : "FRA", "iap" : "7" "fw_rule_id" : "0" }
כפי שמוצג בדוגמה הזו, האירוע חולק לקטגוריות הבאות של UDM:
- metadata: מידע רקע על האירוע.
- principal: מכשיר האבטחה שזיהה את האירוע.
- מכשיר היעד שקיבל את התוכנה הזדונית.
- network: פרטי הרשת של המארח הזדוני.
- security_result: פרטי אבטחה לגבי התוכנה הזדונית.
- additional: מידע על הספק שלא נכלל בהיקף של ה-UDM.
PROCESS_INJECTION, PROCESS_LAUNCH, PROCESS_OPEN, PROCESS_TERMINATION, PROCESS_UNCATEGORIZED
שדות חובה:
- metadata: כוללים את שדות החובה.
- principal:
- מזהה מכונה אחד לפחות.
- באירועים של הזרקת תהליך וסיום תהליך, אם זמין, השדה principal.process חייב לכלול מידע על התהליך שמתחיל את הפעולה (לדוגמה, באירוע של הפעלת תהליך, השדה principal.process חייב לכלול פרטים על תהליך ההורה, אם זמין).
- target:
- target.process: כולל מידע על התהליך שמוזרק, נפתח, מופעל או מסתיים.
- אם תהליך היעד הוא מרוחק, היעד חייב לכלול לפחות מזהה מכונה אחד של מכונת היעד (לדוגמה, כתובת IP, MAC, שם מארח או מזהה נכס של צד שלישי).
שדות אופציונליים:
- security_result: תיאור הפעילות הזדונית שזוהתה.
- principal.user ו-target.user: מאכלסים את התהליך המפעיל (principal) ואת תהליך היעד אם פרטי המשתמש זמינים.
דוגמה ל-UDM עבור PROCESS_LAUNCH
הדוגמה הבאה ממחישה איך להגדיר את הפורמט של אירוע PROCESS_LAUNCH באמצעות תחביר ה-UDM של Google SecOps:
metadata {
event_timestamp: "2020-01-01T13:27:41+00:00"
event_type: PROCESS_LAUNCH
vendor_name: "Microsoft"
product_name: "Windows"
}
principal {
hostname: "altostrat.com"
}
target {
process {
pid: "0xc45"
file {
full_path: "C:\\Windows\\regedit.exe"
}
}
}
כפי שמוצג בדוגמה הזו, האירוע חולק לקטגוריות הבאות של UDM:
- metadata: מידע רקע על האירוע.
- principal: פרטי המכשיר.
- target: פרטי התהליך.
PROCESS_MODULE_LOAD
שדות חובה:
- metadata: כוללים את שדות החובה.
- principal:
- צריך לכלול לפחות מזהה מכונה אחד (ב-
principalאו ב-target). - principal.process: מאכלסים במידע על התהליך שטוען את המודול.
- צריך לכלול לפחות מזהה מכונה אחד (ב-
- target:
- target.process: מאכלסים מידע על תהליך המודול שנטען, כולל לפחות אחד מהשדות
target.process.file(לדוגמה, ה-DLL או האובייקט המשותף) אוtarget.process.product_specific_process_id.
- target.process: מאכלסים מידע על תהליך המודול שנטען, כולל לפחות אחד מהשדות
שדות אופציונליים:
- security_result: תיאור הפעילות הזדונית שזוהתה.
- principal.user: מאכלסים אם יש מידע על המשתמש בתהליך.
דוגמה ל-UDM עבור PROCESS_MODULE_LOAD
הדוגמה הבאה ממחישה איך ליצור פורמט לאירוע PROCESS_MODULE_LOAD באמצעות תחביר UDM של Google SecOps:
{
"metadata": {
"event_timestamp": "2023-07-03T20:40:29.854097Z",
"event_type": "PROCESS_MODULE_LOAD"
},
"principal": {
"hostname": "pinguino-01",
"process": {
"file": {
"full_path": "foo.bar"
}
}
},
"target": {
"process": {
"file": {
"full_path": "foo.bar"
}
}
}
}
כפי שמוצג בדוגמה הזו, האירוע חולק לקטגוריות הבאות של UDM:
- מטא-נתונים: מידע רקע על האירוע.
- principal: פרטים על המכשיר ועל התהליך שבו נטען המודול.
- target: פרטי התהליך והמודול.
PROCESS_PRIVILEGE_ESCALATION
שדות חובה:
- metadata: כוללים את שדות החובה.
- principal:
- צריך לכלול לפחות מזהה מכונה אחד (ב-
principalאו ב-target). - principal.process: מאכלסים במידע על התהליך שיוזם את הסלמת ההרשאות.
- principal.user: מאכלסים את השדה במידע על המשתמש שיזם את הרחבת ההרשאות, כולל לפחות מזהה משתמש אחד.
- צריך לכלול לפחות מזהה מכונה אחד (ב-
- target: מאכלסים את השדה במידע על היעד של הרחבת ההרשאות (לדוגמה,
target.processלתהליך עם הרשאות מורחבות). השדהtargetלא יכול להיות ריק.
שדות אופציונליים:
- security_result: תיאור הפעילות הזדונית שזוהתה.
דוגמה ל-UDM עבור PROCESS_PRIVILEGE_ESCALATION
הדוגמה הבאה ממחישה איך אירוע מסוג PROCESS_PRIVILEGE_ESCALATION יופיע בפורמט של Google SecOps UDM:
{
"metadata": {
"event_timestamp": "2023-07-04T19:04:12.573338Z",
"event_type": "PROCESS_PRIVILEGE_ESCALATION"
},
"principal": {
"user": {
"userid": "pinguino"
},
"hostname": "pinguino-01",
"process": {
"file": {
"full_path": "foo.bar"
}
}
},
"target": {
"process": {
"file": {
"full_path": "foo.bar"
}
}
}
}
כפי שמוצג בדוגמה הזו, האירוע חולק לקטגוריות הבאות של UDM:
- מטא-נתונים: מידע רקע על האירוע.
- principal: פרטים על המכשיר, המשתמש והתהליך שיוזם את ההסלמה.
- target: פרטים על התהליך שמועבר לטיפול ברמה גבוהה יותר.
REGISTRY_CREATION, REGISTRY_MODIFICATION, REGISTRY_DELETION, REGISTRY_UNCATEGORIZED
שדות חובה:
- metadata: כוללים את שדות החובה.
- principal:
- מזהה מכונה אחד לפחות.
- אם תהליך במצב משתמש מבצע את השינוי ברישום, השדה principal.process צריך לכלול מידע על התהליך שמשנה את הרישום.
- אם תהליך ליבה מבצע את השינוי ברישום, המשתמש לא יכול לכלול מידע על התהליך.
- target:
- target.registry: אם המרשם של היעד מרוחק, היעד חייב לכלול לפחות מזהה אחד של מכונת היעד (לדוגמה, כתובת IP, MAC, שם מארח או מזהה נכס של צד שלישי).
- target.registry.registry_key: כל אירועי הרישום חייבים לכלול את מפתח הרישום המושפע.
שדות אופציונליים:
- security_result: תיאור הפעילות הזדונית שזוהתה. לדוגמה, מפתח רישום לא תקין.
- principal.user: מאכלסים אם יש מידע על המשתמש בתהליך.
דוגמה ל-UDM עבור REGISTRY_MODIFICATION
הדוגמה הבאה ממחישה איך מעצבים אירוע REGISTRY_MODIFICATION ב-Proto3 באמצעות תחביר UDM של Google SecOps:
metadata {
event_timestamp: "2020-01-01T13:27:41+00:00"
event_type: REGISTRY_MODIFICATION
vendor_name: "Microsoft"
product_name: "Windows"
}
principal {
hostname: "test-win"
user {
userid: "test"
windows_sid: "ABCDEFGH-123456789-1111111-1000"
}
process {
pid: "0xc45"
file {
full_path: "C:\\Windows\\regedit.exe"
}
}
}
target {
registry {
registry_key: "\\REGISTRY\\USER\\TEST_USER\\Control Panel\\PowerCfg\\PowerPolicy"
registry_value_name: "Description"
registry_value_data: "For extending battery life."
}
}
כפי שמוצג בדוגמה הזו, האירוע חולק לקטגוריות הבאות של UDM:
- metadata: מידע רקע על האירוע.
- principal: פרטי המכשיר, המשתמש והתהליך.
- target: רשומת הרישום שהושפעה מהשינוי.
כדאי לדעת
סוגי אירועים:
- RESOURCE_CREATION
- RESOURCE_DELETION
- RESOURCE_PERMISSIONS_CHANGE
- RESOURCE_READ
- RESOURCE_WRITTEN
אירוע UDM מינימלי:
{
"metadata": {
"event_timestamp": "2023-07-04T20:19:53.394745Z",
"event_type": "RESOURCE_CREATION"
},
"principal": {
"user": {
"userid": "pinguino"
}
},
"target": {
"resource": {
"name": "foo.bar"
}
}
}
SCAN_FILE, SCAN_HOST, SCAN_PROCESS, SCAN_VULN_HOST, SCAN_VULN_NETWORK
ל-SCAN_FILE:
{
"metadata": {
"event_timestamp": "2023-07-06T06:57:08.443142Z",
"event_type": "SCAN_FILE"
},
"principal": {
"hostname": "pinguino-01"
},
"target": {
"file": {
"full_path": "foo.bar"
}
}
}
ל-SCAN_PROCESS:
{
"metadata": {
"event_timestamp": "2023-07-06T06:59:17.690425Z",
"event_type": "SCAN_PROCESS"
},
"principal": {
"hostname": "pinguino-01"
},
"target": {
"process": {
"file": {
"full_path": "foo.bar"
}
}
}
}
שדות חובה:
- metadata: event_timestamp ומידע רקע על האירוע.
- observer: תיעוד מידע על הסורק עצמו. אם הסורק מרוחק, פרטי המכונה צריכים להופיע בשדה observer. אם הסורק מקומי, משאירים את השדה ריק.
- target: תיעוד מידע על המכונה שבה נמצא האובייקט שנסרק. אם מתבצעת סריקה של קובץ, target.file צריך לתעד מידע על הקובץ שנסרק. אם מתבצעת סריקה של תהליך, target.process צריך לתעד מידע על התהליך שנסרק.
- extensions: בשביל SCAN_VULN_HOST ו-SCAN_VULN_NETWORK, מגדירים את נקודת החולשה באמצעות השדה extensions.vuln.
שדות אופציונליים:
- principal: מייצג את המכשיר שיוזם את החיבור וכולל לפחות מזהה מכונה אחד (לדוגמה, שם מארח, כתובת IP, כתובת MAC, מזהה נכס קנייני) או מזהה משתמש.
- target: פרטי המשתמש של אובייקט היעד (לדוגמה, יוצר הקובץ או הבעלים של התהליך) צריכים להופיע ב-target.user.
- security_result: תיאור הפעילות הזדונית שזוהתה.
דוגמה ל-UDM עבור SCAN_HOST
הדוגמה הבאה ממחישה איך אירוע מסוג SCAN_HOST יופיע בפורמט של Google SecOps UDM:
metadata: {
event_timestamp: {
seconds: 1571386978
}
event_type: SCAN_HOST
vendor_name: "vendor"
product_name: "product"
product_version: "1.0"
}
target: {
hostname: "testHost"
asset_id: "asset"
ip: "192.168.200.200"
}
observer: {
hostname: "testObserver"
ip: "192.168.100.100"
}
security_result: {
severity: LOW
confidence: HIGH_CONFIDENCE
}
כפי שמוצג בדוגמה הזו, האירוע חולק לקטגוריות הבאות של UDM:
- metadata: מידע רקע על האירוע.
- יעד: המכשיר שקיבל את התוכנה הזדונית.
- צופה: המכשיר שצופה באירוע המדובר ומדווח עליו.
- security_result: פרטי אבטחה לגבי התוכנה הזדונית.
דוגמה ל-UDM של SCAN_VULN_HOST
הדוגמה הבאה ממחישה איך אירוע מסוג SCAN_VULN_HOST יופיע בפורמט של Google SecOps UDM:
metadata: {
event_timestamp: "2025-05-09T12:59:52.45298Z",
event_type: 18005,
product_name: "TestProduct",
vendor_name: "TestVendor"
},
principal {
asset_id: "TEST:Mwl8ABcd",
ip: "127.0.0.3",
hostname: "TEST-Localhost",
mac: ["02:00:00:00:00:01"]
},
extensions: {
vulns: {
vulnerabilities: [
{
cve_id: "CVE-6l9VxQmz",
vendor_vulnerability_id: "TEST:7gmCmFWX",
name: "CVE pA7DzwPU",
severity: 2,
vendor: "TestVendor",
last_found: "2025-05-09T14:59:52.45300Z",
first_found: "2025-05-09T13:59:52.45300Z"
}
]
}
}
כפי שמוצג בדוגמה הזו, האירוע חולק לקטגוריות הבאות של UDM:
- metadata: מידע רקע על האירוע.
- principal: המכשיר שקיבל את התוכנה הזדונית.
- extensions: פרטי נקודת החולשה.
SCHEDULED_TASK_CREATION, SCHEDULED_TASK_DELETION, SCHEDULED_TASK_DISABLE, SCHEDULED_TASK_ENABLE, SCHEDULED_TASK_MODIFICATION, SCHEDULED_TASK_UNCATEGORIZED
שדות חובה:
- principal: בכל האירועים מסוג SCHEDULED_TASK, השדה principal חייב לכלול מזהה מכונה ומזהה משתמש.
- target: צריך לכלול
target.resourceחוקי עםtarget.resource.resource_typeשמוגדר ל-TASK.
שדות אופציונליים:
- security_result: תיאור הפעילות הזדונית שזוהתה.
דוגמה ל-UDM עבור SCHEDULED_TASK_CREATION
הדוגמה הבאה ממחישה איך אפשר לעצב אירוע מסוג SCHEDULED_TASK_CREATION ל-UDM של Google SecOps:
metadata: {
event_timestamp: {
seconds: 1577577998
}
event_type: SCHEDULED_TASK_CREATION
vendor_name: "Microsoft"
product_name: "Windows"
}
principal: {
hostname: "fake-host.altostrat.com"
user: {
userid: "TestUser"
windows_sid: "AB123CDE"
}
process {
pid: "1234"
}
}
target: {
resource: {
resource_type: TASK
name: "\\Adobe Acrobat Update Task"
}
}
intermediary: {
hostname: "fake-intermediary.altostrat.com"
}
security_result: {
rule_name: "EventID: 6789"
summary: "A scheduled task was created."
severity: INFORMATIONAL
}
כפי שמוצג בדוגמה הזו, האירוע חולק לקטגוריות הבאות של UDM:
- metadata: מידע רקע על האירוע.
- principal: המכשיר שתזמן את המשימה החשודה.
- target: התוכנה שהמשימה החשודה מטרגטת.
- intermediary: הגורם המתווך שמעורב במשימה החשודה.
- security_result: פרטי אבטחה לגבי המשימה החשודה.
SETTING_UNCATEGORIZED, SETTING_CREATION, SETTING_MODIFICATION, SETTING_DELETION
שדות חובה:
principal: חייב להיות קיים, לא ריק ולכלול מזהה מכונה.
target: חובה לציין את המאפיין הזה, הוא לא יכול להיות ריק והוא חייב לכלול משאב עם
target.resource.resource_typeשצוין בתורSETTING.
דוגמה ל-UDM לסוג האירוע SETTING_MODIFICATION
הדוגמה הבאה ממחישה איך אירוע מסוג SETTING_MODIFICATION יופיע בפורמט של Google SecOps UDM:
{
"metadata": {
"event_timestamp": "2023-07-05T14:15:27.070909Z",
"event_type": "SETTING_MODIFICATION"
},
"principal": {
"hostname": "foo.bar"
},
"target": {
"resource": {
"resource_type": "SETTING",
"name": "foo.bar"
}
}
}
כפי שמוצג בדוגמה הזו, האירוע חולק לקטגוריות הבאות של UDM:
- מטא-נתונים: מידע רקע על האירוע.
- principal: מידע על המכשיר שבו בוצע השינוי בהגדרה.
- target: פרטים על משאב ההגדרה.
SERVICE_UNSPECIFIED, SERVICE_CREATION, SERVICE_DELETION, SERVICE_MODIFICATION, SERVICE_START, SERVICE_STOP
שדות חובה:
- metadata: כולל את שדות החובה (
event_timestampו-event_type). - principal: צריך לכלול לפחות מזהה מכונה אחד (
principal.hostname,principal.ip,principal.macאוprincipal.asset_id). - target: צריך לציין לפחות אחד מהערכים
target.processאוtarget.application.
שדות אופציונליים:
- target.user: מאכלסים אם פרטי המשתמש זמינים לחשבון השירות או למשתמש היעד.
- target.resource: מאכלסים את השדה בפרטי המשאב של השירות (לדוגמה,
resource_type: SERVICE).
דוגמה ל-UDM עבור SERVICE_UNSPECIFIED
בדוגמה הבאה אפשר לראות איך אירוע מסוג SERVICE_UNSPECIFIED יופיע בפורמט של Google SecOps UDM:
metadata: {
event_timestamp: {
seconds: 1595656745
nanos: 832000000
}
event_type: SERVICE_UNSPECIFIED
vendor_name: "Preempt"
product_name: "PREEMPT_AUTH"
product_event_type: "SERVICE_ACCESS"
description: "Remote Procedures (RPC)"
}
principal: {
hostname: "XXX-YYY-ZZZ"
ip: "10.10.10.10"
}
target: {
hostname: "TestHost"
user: {
userid: "ORG\\User"
user_display_name: "user name"
}
application: "application.name"
resource: {
resource_type: SERVICE
name: "RPC"
}
}
כפי שמוצג בדוגמה הזו, האירוע חולק לקטגוריות הבאות של UDM:
- metadata: מידע רקע על האירוע.
- principal: פרטי המכשיר והמיקום.
- יעד: שם המארח ומזהה המשתמש.
- application: שם האפליקציה וסוג המשאב.
STATUS_HEARTBEAT, STATUS_STARTUP, STATUS_SHUTDOWN, STATUS_UNCATEGORIZED, STATUS_UPDATE
שדות חובה:
- metadata: כוללים את שדות החובה.
- principal: לפחות מזהה מכונה אחד (כתובת IP או כתובת MAC, שם מארח או מזהה נכס).
דוגמה ל-UDM עבור STATUS_HEARTBEAT
הדוגמה הבאה ממחישה איך אירוע מסוג STATUS_HEARTBEAT יופיע בפורמט של Google SecOps UDM:
metadata: {
event_timestamp: {
seconds: 1588180305
}
event_type: STATUS_HEARTBEAT
vendor_name: "DMP"
product_name: "ENTRE"
}
principal: {
hostname: "testHost"
location: {
name: "Building 1"
}
}
intermediary: {
ip: "8.8.8.8"
}
security_result: {
summary: "Event - Locked"
description: "description"
severity: LOW
severity_details: "INFO"
}
כפי שמוצג בדוגמה הזו, האירוע חולק לקטגוריות הבאות של UDM:
- metadata: מידע רקע על האירוע.
- principal: פרטי המכשיר והמיקום.
- מתווך: כתובת ה-IP של המכשיר.
- security_result: פרטי תוצאת האבטחה.
SYSTEM_AUDIT_LOG_UNCATEGORIZED, SYSTEM_AUDIT_LOG_WIPE
שדות חובה:
- principal: כולל מזהה משתמש עבור המשתמש שביצע את הפעולה ביומן, ומזהה מכונה עבור המכונה שבה היומן מאוחסן או אוחסן (במקרה של איפוס נתונים).
דוגמה ל-UDM עבור SYSTEM_AUDIT_LOG_WIPE
הדוגמה הבאה ממחישה איך אירוע מסוג SYSTEM_AUDIT_LOG_WIPE יפורמט ל-Google SecOps UDM:
metadata {
event_timestamp: "2020-01-01T13:27:41+00:00"
event_type: SYSTEM_AUDIT_LOG_WIPE
vendor_name: "Microsoft"
product_name: "Windows"
}
principal {
hostname: "altostrat.com"
user {
userid: "test"
windows_sid: "ABCDEFGH-123456789-1111111-1000"
}
}
כפי שמוצג בדוגמה הזו, האירוע חולק לקטגוריות הבאות של UDM:
- metadata: מידע רקע על האירוע.
- principal: פרטי המכשיר והמשתמש.
USER_BADGE_IN
שדות חובה:
- metadata: כוללים את שדות החובה.
- target: חייב לכלול לפחות מזהה מכונה אחד (לדוגמה, target.hostname).
- extensions: צריך לציין את מנגנון האימות ב-extensions.auth.type.
דוגמה ל-UDM עבור USER_BADGE_IN
בדוגמה הבאה אפשר לראות איך אירוע מסוג USER_BADGE_IN יופיע בפורמט של Google SecOps UDM:
{
"metadata": {
"event_timestamp": "2023-07-05T20:31:18.303584Z",
"event_type": "USER_BADGE_IN"
},
"target": {
"hostname": "jamon-01"
},
"extensions": {
"auth": {
"type": "MACHINE"
}
}
}
כפי שמוצג בדוגמה הזו, האירוע מחולק לקטגוריות הבאות של UDM:
- מטא-נתונים: מידע רקע על האירוע.
- target: מידע על המכשיר או המיקום שבהם התרחש האירוע של העברת התג.
- extensions: פרטים על מנגנון האימות שבו נעשה שימוש.
USER_CHANGE_PASSWORD, USER_CHANGE_PERMISSIONS
שדות חובה:
- metadata: כוללים את שדות החובה.
- target: לא יכול להיות ריק. מאכלסים את
targetבמידע על חשבון המשתמש ששונה (target.user) או על המכונה, האפליקציה או המשאב שבהם השינוי התרחש. - target.user או principal.user: מאכלסים לפחות אחד מהשדות
target.user(חשבון המשתמש שבו בוצע השינוי) אוprincipal.user(המשתמש שיזם את השינוי) במזהה משתמש (userid,windows_sid,email_addressesאוemployee_id).
שדות אופציונליים:
- principal: אם אתם מציינים את מזהה המשתמש ב-
target.user, השדהprincipal.userהוא אופציונלי. אם חשבון המשתמש שונה ממיקום מרוחק, צריך לאכלס אתprincipalבמידע על המכונה שממנה בוצע השינוי. - intermediary: בכניסות באמצעות SSO,
intermediaryחייב לכלול לפחות מזהה מכונה אחד של שרת ה-SSO, אם הוא זמין.
USER_COMMUNICATION
שדות חובה:
- principal: מאכלסים את השדה principal.user בפרטים שמשויכים לתקשורת ביוזמת המשתמש (השולח), כמו הודעת צ'אט ב-Google Chat או ב-Slack, שיחת ועידה בווידאו או בקול ב-Zoom או ב-Google Meet, או חיבור VoIP.
שדות אופציונליים:
- target: (מומלץ) מאכלסים את השדה target.user במידע על משתמש היעד (המקבל) של משאב התקשורת בענן. ממלאים את השדה target.application במידע על אפליקציית התקשורת בענן שאליה מועבר המידע.
USER_CREATION, USER_DELETION
שדות חובה:
- metadata: כולל את
event_timestampו-event_type. - principal: צריך לכלול לפחות מזהה משתמש חוקי אחד ב-
principal.user(userid,windows_sid,email_addressesאוemployee_id, עד 256 תווים) של החשבון שיזם את היצירה או המחיקה. אם לא מגדירים אתtarget.application, צריך לכלול ב-principalגם לפחות מזהה מכונה אחד (hostname,ip,macאוasset_id). - target: צריך לכלול לפחות מזהה משתמש אחד תקין ב-
target.user(עד 256 תווים) לחשבון המשתמש שנוצר או נמחק. אםprincipalלא כולל מזהה מכונה, צריך לאכלס אתtarget.application.
שדות אופציונליים:
- principal.process: פרטי התהליך של המכונה שבה הופעלה הבקשה ליצירה או למחיקה של המשתמש.
- target: מידע על מכונת היעד (אם היא שונה מהמכונה הראשית).
USER_LOGIN, USER_LOGOUT
שדות חובה:
- metadata: כוללים את שדות החובה.
- principal: לפעילות של משתמש מרחוק (לדוגמה, התחברות מרחוק), מאכלסים את principal במידע על המכונה שממנה מגיעה פעילות המשתמש. לפעילות משתמש מקומי (לדוגמה, התחברות מקומית), אל תגדירו את principal.
- target: מאכלסים את target.user במידע על המשתמש שהתחבר או התנתק. אם לא מוגדר principal (למשל, התחברות מקומית), השדה target חייב לכלול גם לפחות מזהה מכונה אחד שמזהה את מכונת היעד. בפעילות משתמש ממכונה למכונה (לדוגמה, התחברות מרחוק, כניסה יחידה, שירות ענן, VPN), היעד חייב לכלול מידע על אפליקציית היעד, מכונת היעד או שרת ה-VPN של היעד.
- intermediary: בכניסות באמצעות SSO, השדה intermediary חייב לכלול לפחות מזהה מכונה אחד של שרת ה-SSO, אם הוא זמין.
- network ו-network.http: אם ההתחברות מתבצעת באמצעות HTTP, צריך להזין את כל הפרטים הזמינים ב-network.ip_protocol, ב-network.application_protocol וב-network.http.
- תוסף אימות: צריך לזהות את סוג מערכת האימות שהאירוע קשור אליה (לדוגמה, מכונה, SSO או VPN) ואת המנגנון שבו נעשה שימוש (שם משתמש וסיסמה, OTP וכו').
- security_result: מוסיפים שדה security_result כדי לייצג את סטטוס ההתחברות אם היא נכשלת. אם האימות נכשל, מציינים את הערך AUTH_VIOLATION ב-security_result.category.
דוגמה ל-UDM של USER_LOGIN
הדוגמה הבאה ממחישה איך אירוע מסוג USER_LOGIN יופיע בפורמט של Google SecOps UDM:
{
"metadata": {
"event_timestamp": "2023-07-05T20:48:50.657334Z",
"event_type": "USER_LOGIN"
},
"target": {
"user": {
"userid": "jamon"
}
},
"extensions": {
"auth": {
"type": "MACHINE"
}
}
}
כפי שמוצג בדוגמה הזו, האירוע מחולק לקטגוריות הבאות של UDM:
- מטא-נתונים: מידע רקע על האירוע.
- target: מידע על המשתמש שמתחבר.
- extensions: פרטים על מנגנון האימות שבו נעשה שימוש.
USER_RESOURCE_ACCESS
שדות חובה:
- principal: מאכלס את השדה principal.user בפרטים על ניסיונות לגשת למשאב בענן (לדוגמה, פנייה ב-Salesforce, יומן ב-Office365, מסמך ב-Google Docs או כרטיס ב-ServiceNow).
- target: מאכלסים את השדה target.resource במידע על משאב היעד בענן.
שדות אופציונליים:
- target.application: (מומלץ) מאכלסים את השדה target.application במידע על אפליקציית היעד בענן.
USER_RESOURCE_CREATION, USER_RESOURCE_DELETION
שדות חובה:
- principal: מאכלסים את השדה principal.user בפרטים שמשויכים למשתמש שנוצר במשאב בענן (לדוגמה, פנייה ב-Salesforce, יומן ב-Office 365, מסמך ב-Google Docs או כרטיס ב-ServiceNow).
- target: מאכלסים את השדה target.resource במידע על משאב היעד בענן.
שדות אופציונליים:
- target.application: (מומלץ) מאכלסים את השדה target.application במידע על אפליקציית היעד בענן.
USER_RESOURCE_UPDATE_CONTENT
שדות חובה:
- principal: מאכלסים את השדה principal.user בפרטים שמשויכים למשתמש שהתוכן שלו עודכן במשאב בענן (לדוגמה, פנייה ב-Salesforce, יומן ב-Office365, מסמך ב-Google Docs או כרטיס ב-ServiceNow).
- target: מאכלסים את השדה target.resource במידע על משאב היעד בענן.
שדות אופציונליים:
- target.application: (מומלץ) מאכלסים את השדה target.application במידע על אפליקציית היעד בענן.
USER_RESOURCE_UPDATE_PERMISSIONS
שדות חובה:
- principal: מאכלסים את השדה principal.user בפרטים שמשויכים למשתמש שההרשאות שלו עודכנו במשאב בענן (לדוגמה, פנייה ב-Salesforce, יומן ב-Office 365, מסמך ב-Google Docs או כרטיס ב-ServiceNow).
- target: מאכלסים את השדה target.resource במידע על משאב היעד בענן.
שדות אופציונליים:
- target.application: (מומלץ) מאכלסים את השדה target.application במידע על אפליקציית היעד בענן.
USER_UNCATEGORIZED
שדות חובה:
- metadata: כולל את
event_timestampו-event_type. - principal או target:
- אם השדה
targetלא מאוכלס, השדהprincipalחייב לכלול לפחות מזהה משתמש חוקי אחד ב-principal.user(userid,windows_sid,email_addressesאוemployee_id, עד 256 תווים) או לפחות מזהה מכונה אחד (hostname,ip,macאוasset_id). - אם השדה
targetמאוכלס, צריך לאכלס לפחות אחד מהשדות הבאים: מזהה משתמש בשדהtarget.user, מזהה מכונה בשדהtargetאו מזהה משתמש חוקי בשדהprincipal.user.
- אם השדה
שדות אופציונליים:
- principal.process: פרטי התהליך שמשויכים לפעילות המשתמש.
- security_result: תיאור של פעילות זדונית או חריגה שזוהתה.