איסוף יומנים של Microsoft LAPS
במסמך הזה מוסבר איך להטמיע יומנים של Microsoft Windows LAPS (פתרון סיסמאות של אדמין מקומי) ב-Google Security Operations באמצעות סוכן Bindplane.
Windows LAPS מנהל סיסמאות של חשבונות אדמין מקומיים במכשירים שמצורפים לדומיין, ומפיק רשומות ביומן האירועים לגבי רוטציה של סיסמאות, עיבוד מדיניות ופעולות ניהול. הכלי לניתוח מחלץ שדות מפורמט ה-XML של יומן האירועים של Windows וממפה אותם למודל הנתונים המאוחד (UDM).
לפני שמתחילים
חשוב לוודא שמתקיימות הדרישות המוקדמות הבאות:
- מופע של Google SecOps
- Windows Server 2016 ואילך עם סוכן Bindplane מותקן
- אם מריצים מאחורי שרת proxy, מוודאים שיציאות חומת האש פתוחות בהתאם לדרישות של סוכן Bindplane
- Windows LAPS מוגדר ומוטמע בסביבה שלכם
קבלת קובץ אימות להטמעת נתונים ב-Google SecOps
- נכנסים למסוף Google SecOps.
- עוברים אל SIEM Settings > Collection Agents.
- מורידים את קובץ האימות להטמעת נתונים.
שומרים את הקובץ בצורה מאובטחת במערכת שבה יותקן סוכן Bindplane.
איך מוצאים את מספר הלקוח ב-Google SecOps
- נכנסים למסוף Google SecOps.
- עוברים אל SIEM Settings > Profile (הגדרות SIEM > פרופיל).
מעתיקים את מזהה הלקוח מהקטע פרטי הארגון ושומרים אותו.
התקנת סוכן Bindplane
- פותחים את שורת הפקודה או את PowerShell כאדמין.
מריצים את הפקודה הבאה:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quietמחכים שההתקנה תסתיים.
כדי לוודא שההתקנה בוצעה, מריצים את הפקודה:
sc query observiq-otel-collectorהשירות צריך להופיע עם הערך RUNNING.
מקורות מידע נוספים להתקנה
אפשרויות התקנה נוספות ופתרון בעיות מפורטים במדריך להתקנת סוכן Bindplane.
הגדרת סוכן Bindplane להטמעה של יומן האירועים של Windows ושליחה אל Google SecOps
איתור קובץ ההגדרות
כדי לאתר את קובץ התצורה, משתמשים בתחביר הבא:
notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
עריכת קובץ ההגדרות
מחליפים את כל התוכן של
config.yamlבהגדרה הבאה:receivers: windowseventlog/laps_operational: channel: Microsoft-Windows-LAPS/Operational max_reads: 100 poll_interval: 5s raw: true start_at: end processors: batch: exporters: chronicle/laps: creds_file_path: 'C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json' customer_id: '<customer_id>' endpoint: malachiteingestion-pa.googleapis.com log_type: WINDOWS_LAPS override_log_type: false raw_log_field: body service: pipelines: logs/laps: receivers: - windowseventlog/laps_operational processors: [batch] exporters: [chronicle/laps]
פרמטרים להגדרה
מחליפים את ה-placeholders הבאים:
הגדרת מקלט:
-
channel: ערוץ של יומן האירועים ב-Windows לקריאה (Microsoft-Windows-LAPS/Operational) -
max_reads: המספר המקסימלי של רשומות ביומן לקריאה בכל מחזור בדיקה -
poll_interval: באיזו תדירות לבצע סקר כדי למצוא אירועים חדשים -
start_at: המקום שבו מתחילים לקרוא (endלאירועים חדשים בלבד)
-
הגדרת כלי הייצוא:
-
creds_file_path: הנתיב המלא לקובץ האימות של ההעלאה (C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json) -
customer_id: מספר הלקוח שהועתק ממסוף Google SecOps -
endpoint: כתובת ה-URL של נקודת הקצה האזורית:- ארה"ב:
malachiteingestion-pa.googleapis.com - אירופה:
europe-malachiteingestion-pa.googleapis.com - אסיה:
asia-southeast1-malachiteingestion-pa.googleapis.com - רשימה מלאה מופיעה במאמר בנושא נקודות קצה אזוריות.
- ארה"ב:
-
שמירת קובץ ההגדרות
לוחצים על קובץ > שמירה.
מפעילים מחדש את סוכן Bindplane כדי להחיל את השינויים.
שורת הפקודה או PowerShell כאדמין:
net stop observiq-otel-collector && net start observiq-otel-collectorמסוף השירותים:
- מקישים על
Win+R, מקלידיםservices.mscומקישים על Enter. - מחפשים את observIQ OpenTelemetry Collector.
לוחצים לחיצה ימנית ובוחרים באפשרות הפעלה מחדש.
מוודאים שהשירות פועל:
sc query observiq-otel-collectorבודקים אם יש שגיאות ביומנים:
type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
- מקישים על
הגדרת LAPS של Microsoft Windows
- מקלידים
eventvwr.mscבשורת פקודה עם הרשאות ניהול ולוחצים על Enter כדי לפתוח את Event Viewer. - עוברים אל Applications and Services Logs > Microsoft > Windows > LAPS.
- מרחיבים את LAPS.
- לוחצים לחיצה ימנית על LAPS ואז על Properties (מאפיינים).
- מסמנים את תיבת הסימון הפעלת רישום ביומן.
- כשמוצגת השאלה אם היומן מופעל, לוחצים על אישור.
- לוחצים על OK.
טבלת מיפוי UDM
| שדה ביומן | מיפוי UDM | היגיון |
|---|---|---|
| ערוץ | read_only_udm.additional.fields.key | הערך נלקח מהשדה Channel ביומן הגולמי ומוקצה לשדה key. |
| ערוץ | read_only_udm.additional.fields.value.string_value | הערך נלקח מהשדה Channel ביומן הגולמי ומוקצה לשדה string_value. |
| מחשב | read_only_udm.principal.hostname | הערך נלקח מהשדה Computer ביומן הגולמי. |
| מחשב | read_only_udm.principal.asset.hostname | הערך נלקח מהשדה Computer ביומן הגולמי. |
| EventData.%1 | read_only_udm.additional.fields.value.string_value | הערך נלקח מהשדה EventData.%1 ביומן הגולמי ומוקצה לשדה string_value. |
| EventId | read_only_udm.metadata.product_event_type | הערך נלקח מהשדה EventId ביומן הגולמי. |
| EventId | read_only_udm.security_result.rule_name | הערך נלקח מהשדה EventId ביומן הגולמי ומצורף ל-EventID:. |
| EventRecordID | read_only_udm.metadata.product_log_id | הערך נלקח מהשדה EventRecordID ביומן הגולמי. |
| מילות מפתח | read_only_udm.additional.fields.key | הערך נלקח מהשדה Keywords ביומן הגולמי ומוקצה לשדה key. |
| מילות מפתח | read_only_udm.additional.fields.value.string_value | הערך נלקח מהשדה Keywords ביומן הגולמי ומוקצה לשדה string_value. |
| רמה | read_only_udm.security_result.severity | הערך נלקח מהשדה Level ביומן הגולמי וממופה ל: INFORMATIONAL עבור INFO, Informational, Information, Normal, NOTICE; ERROR עבור ERROR, Error; CRITICAL עבור Critical. |
| קוד אופרציה | read_only_udm.additional.fields.key | הערך נלקח מהשדה Opcode ביומן הגולמי ומוקצה לשדה key. |
| קוד אופרציה | read_only_udm.additional.fields.value.string_value | הערך נלקח מהשדה Opcode ביומן הגולמי ומוקצה לשדה string_value. |
| ProcessID | read_only_udm.principal.process.pid | הערך נלקח מהשדה ProcessID ביומן הגולמי. |
| ProviderName | read_only_udm.metadata.product_name | הערך נלקח מהשדה ProviderName ביומן הגולמי. |
| משימה | read_only_udm.additional.fields.key | הערך נלקח מהשדה Task ביומן הגולמי ומוקצה לשדה key. |
| משימה | read_only_udm.additional.fields.value.string_value | הערך נלקח מהשדה Task ביומן הגולמי ומוקצה לשדה string_value. |
| ThreadID | read_only_udm.additional.fields.key | הערך נלקח מהשדה ThreadID ביומן הגולמי ומוקצה לשדה key. |
| ThreadID | read_only_udm.additional.fields.value.string_value | הערך נלקח מהשדה ThreadID ביומן הגולמי ומוקצה לשדה string_value. |
| TimeCreated | read_only_udm.metadata.event_timestamp | הערך נלקח מהשדה TimeCreated ביומן הגולמי, ומנותח כחותמת זמן UNIX_MS. |
| TimeCreated | events.timestamp | הערך נלקח מהשדה TimeCreated ביומן הגולמי, ומנותח כחותמת זמן UNIX_MS. |
| גרסה | read_only_udm.additional.fields.key | הערך נלקח מהשדה Version ביומן הגולמי ומוקצה לשדה key. |
| גרסה | read_only_udm.additional.fields.value.string_value | הערך נלקח מהשדה Version ביומן הגולמי ומוקצה לשדה string_value. |
| read_only_udm.additional.fields.key | הערך EventData_P1 הוקצה. |
|
| read_only_udm.metadata.event_type | מוקצה STATUS_UNCATEGORIZED באופן מותנה אם EventId הוא 7 או 2, אחרת GENERIC_EVENT. |
|
| read_only_udm.metadata.vendor_name | הערך Microsoft הוקצה. |
יומן שינויים
צפייה ביומן השינויים של מנתח התוכן הזה
הבעיה עדיין לא נפתרה? קבלת תשובות מחברי הקהילה וממומחי Google SecOps.