מיפוי ומידול של ישויות

נתמך ב:

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

  • מעקב אוטומטי אחר ההיסטוריה.
  • קיבוץ התראות ללא התערבות אנושית.
  • חיפוש פעילות זדונית על סמך קשרים בין ישויות.
  • הוספנו שיפורים שמאפשרים לקרוא את הבקשות בקלות וליצור Playbook בצורה חלקה.

צוות Google Security Operations משתמש במערכת אוטומטית (אונטולוגיה) כדי לחלץ את האובייקטים העיקריים שמעניינים אותו מההתראות הגולמיות, וליצור ישויות. כל ישות מיוצגת על ידי אובייקט שיכול לעקוב אחרי ההיסטוריה שלו לצורך עיון עתידי.

הגדרת האונטולוגיה של הישות

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

הזמן הטוב ביותר להתאים אישית את האונטולוגיה הוא אחרי שמחבר מושך נתונים ל-Google SecOps. התהליך כולל שני שלבים עיקריים:

  1. מודלים: בחירת הייצוג החזותי (מודל או משפחת מודלים) של הנתונים.
  2. מיפוי: ממפים את השדות כדי לתמוך במודל שנבחר ולחלץ ישויות.

ישויות נתמכות

יש תמיכה בישויות הבאות:

סוג ישות תיאור הפורמט הצפוי דוגמאות
כתובת כתובת IPV4. תלוי בסוג הספציפי של הכתובת שמאוחסנת. כתובות IP, לדוגמה, 192.168.1.1
בקשת הצטרפות אפליקציית תוכנה. מחרוזת טקסט. nmap, Microsoft Word.
אשכול קבוצה של משאבי מחשוב. מחרוזת טקסט. שם אשכול Kubernetes, שם האשכול או מזהה האשכול.
מאגר מופע של מאגר. מחרוזת טקסט. מזהה או שם של קונטיינר Docker.
כרטיס אשראי מספר כרטיס אשראי. מחרוזת מוסתרת או מוחלפת באסימון. כדי להימנע מאחסון נתונים רגישים של PCI, צריך להשתמש בטשטוש או בטוקניזציה של הנתונים.
CVE מזהה של נקודות חולשה וחשיפות נפוצות. CVE-YYYY-NNNNN CVE-2023-12345
מסד נתונים מופע או מערכת של מסד נתונים. מחרוזת טקסט. שם מסד הנתונים או מזהה החיבור.
פריסה פריסת תוכנה. מחרוזת טקסט. מזהה הפריסה.
כתובת היעד כתובת URL. מחרוזת כתובת URL רגילה. https://example.com/path
דומיין שם דומיין של רשת. מחרוזת דומיין רגילה. example.com
נושא האימייל שורת הנושא של הודעת אימייל. מחרוזת טקסט. שורת הנושא של אימייל.
גיבוב (hash) של קובץ גיבוב קריפטוגרפי של קובץ. מחרוזת הקסדצימלית. גיבוב MD5,‏ SHA-1 או SHA256.
שם קובץ השם של קובץ. מחרוזת טקסט. malware.exe
ישות גנרית סוג ישות גמיש לנתונים שלא מתאימים לקטגוריות אחרות. תלוי בנתונים שנשמרים. לא רלוונטי
שם המארח תווית שמוקצית למכשיר ברשת. מחרוזת סטנדרטית של שם מארח. workstation-01, server.example.com
קבוצת כתובות IP אוסף או קבוצה של כתובות IP. לא מוגדר באופן מפורש (לדוגמה, מחרוזת מופרדת בפסיקים, מערך JSON, הפניה לרשימה). טווחים, סימוני CIDR או רשימות.
לדוגמה, אפשר לעיין במאמר בנושא יצירת רשימת כתובות IP מהימנות.
כתובת MAC כתובת לבקרת גישה למדיה. שש קבוצות של שתי ספרות הקסדצימליות, שמופרדות במקפים או בנקודתיים. 00-1B-44-11-3A-B7, 00:1B:44:11:3A:B7
מספר טלפון מספר טלפון. משתנה (הפורמט E.164 הוא ברירת המחדל). +18005550100
POD קבוצה של קונטיינר אחד או יותר ב-Kubernetes, שלעתים קרובות חולקים אחסון או רשת. מחרוזת השם. שם ה-POD ב-Kubernetes.
תהליך מופע של תוכנת מחשב שמופעלת. שם או מזהה התהליך (PID). 1234, chrome.exe
שירות שירות תוכנה שפועל במערכת. מחרוזת של שם השירות. sshd, apache2
גורם זדוני אדם או קבוצה שמציבים איום. מחרוזת של שם או קוד. APT28, FIN7
קמפיין איומים סדרה של פעילויות איום קשורות. שם הקמפיין או מחרוזת הקוד. שם הקמפיין או הקוד שלו.
חתימת איום תבנית או אינדיקטור של איום מוכר. מזהה הכלל או שם החתימה. מזהה כלל קצר, שם כלל YARA-l.
USB מכשיר עם חיבור USB. שם המכשיר, המספר הסידורי או מאפיינים אחרים. מזהה של התקן USB.
שם משתמש מזהה של חשבון משתמש. שמות משתמש פשוטים או כתובות אימייל. jdoe, jdoe@example.com

תרחיש שימוש: מיפוי ומידול של נתונים חדשים של אימיילים שהועברו

תרחיש השימוש הזה מראה איך למפות ולעצב נתונים חדשים של אימייל שהועבר:

  1. עוברים אל מרכז התוכן > תרחישי שימוש.
  2. מריצים את מקרה הבדיקה Zero to Hero. פרטים על אופן הביצוע מופיעים במאמר הרצת תרחישים לדוגמה.
  3. בכרטיסייה Cases, בוחרים את בקשת התמיכה Mail מתוך Cases Queue ובוחרים בכרטיסייה Events.
  4. לצד ההתראה, לוחצים על הגדרות הגדרת אירועים כדי לפתוח את הדף הגדרת אירועים.
  5. ברשימת ההיררכיה, לוחצים על Mail (דואר). כך מוודאים שההגדרה תפעל באופן אוטומטי לכל נתון שמגיע מהמוצר הזה (תיבת אימייל).
  6. מקצים את משפחת המראה שמייצגת בצורה הטובה ביותר את הנתונים. בתרחיש השימוש הזה, מכיוון שהאפשרות MailRelayOrTAP נבחרה קודם, אפשר לדלג על השלב הזה.
  7. עוברים אל מיפוי וממפים את השדות הבאים של הישות. לוחצים לחיצה כפולה על כל ישות ובוחרים את שדה הנתונים הגולמיים של הישות בשדה שחולץ. אפשר לספק שדות חלופיים לחילוץ המידע:
    • SourceUserName
    • DestinationUserName
    • DestinationURL
    • EmailSubject
  8. לוחצים על מאפייני אירוע גולמיים כדי לראות את השדות המקוריים של האימייל.

חילוץ ביטויים רגולריים

‫Google SecOps לא תומך בקבוצות של ביטויים רגולריים. כדי לחלץ טקסט משדה האירוע באמצעות דפוסי ביטוי רגולריים, משתמשים בפונקציות lookahead ו-lookbehind בלוגיקה של פונקציית החילוץ.

בדוגמה הבאה, שדה האירוע מציג נתח גדול של טקסט:
Suspicious activity on A16_WWJ - Potential Account Takeover (33120)

כדי לחלץ רק את הטקסט Suspicious activity on A16_WWJ, פועלים לפי השלבים הבאים:

  1. מזינים את הביטוי הרגולרי הבא בשדה הערך פונקציית החילוץ:
    Suspicious activity on A16_WWJ(?=.*)
  2. בשדה פונקציית טרנספורמציה, בוחרים באפשרות To_String.

כדי לחלץ רק את הטקסט אחרי Suspicious activity on A16_WWJ:

  1. מזינים את הביטוי הרגולרי הבא בשדה הערך פונקציית החילוץ:
    (?<=Suspicious activity on A16_WWJ).*
  2. בשדה פונקציית טרנספורמציה, בוחרים באפשרות To_String.

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