איסוף יומנים של Windows AppLocker
במאמר הזה מוסבר איך להטמיע יומנים של Windows AppLocker ב-Google Security Operations באמצעות Bindplane.
Windows AppLocker היא תכונה של הוספת אפליקציות לרשימה הלבנה שמוטמעת ב-Windows. התכונה הזו יוצרת יומנים של אכיפת מדיניות, ביקורת והפעלת אפליקציות. סוכן Bindplane אוסף קבצים של יומני אירועים של Windows AppLocker שיוצאו ישירות ממערכת הקבצים המקומית.
לפני שמתחילים
חשוב לוודא שמתקיימות הדרישות המוקדמות הבאות:
- מופע של Google SecOps
- Windows Server 2016 ואילך עם תמיכה בשירות
observiq-otel-collector - אם מריצים את הסוכן מאחורי שרת proxy, מוודאים שיציאות חומת האש פתוחות בהתאם לדרישות של סוכן Bindplane
- גישת אדמין לנקודות קצה (endpoints) של Windows עם מדיניות AppLocker מוגדרת
קבלת קובץ אימות להטמעת נתונים ב-Google SecOps
- נכנסים למסוף Google SecOps.
- עוברים אל SIEM Settings > Collection Agents (הגדרות SIEM > סוכני איסוף).
מורידים את קובץ האימות להטמעת נתונים. שומרים את הקובץ בצורה מאובטחת במערכת שבה תותקן Bindplane.
איך מקבלים את מספר הלקוח ב-Google SecOps
- נכנסים למסוף Google SecOps.
- עוברים אל SIEM Settings > Profile (הגדרות SIEM > פרופיל).
מעתיקים את מזהה הלקוח מהקטע פרטי הארגון ושומרים אותו.
התקנת סוכן Bindplane
מתקינים את סוכן Bindplane במערכת ההפעלה Windows לפי ההוראות הבאות.
התקנת Windows
- פותחים את שורת הפקודה או את 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 להעברה של יומנים ושליחה שלהם אל Google SecOps
איתור קובץ התצורה
Windows:
notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
עריכת קובץ התצורה
מחליפים את כל התוכן של
config.yamlבהגדרה הבאה:receivers: filelog: include: - C:\Logs\applocker\*.evtx start_at: beginning exporters: chronicle/windows_applocker: compression: gzip creds_file_path: 'C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json' customer_id: '<customer_id>' endpoint: malachiteingestion-pa.googleapis.com log_type: WINDOWS_APPLOCKER raw_log_field: body ingestion_labels: env: production service: pipelines: logs/applocker_to_chronicle: receivers: - filelog exporters: - chronicle/windows_applocker
פרמטרים להגדרה
מחליפים את ה-placeholders הבאים:
הגדרת מקלט:
-
filelog: סוג המקלט לאיסוף קובצי יומן מהדיסק -
include: רשימה של נתיבי קבצים למעקב. מגדירים את המיקום שאליו מייצאים את יומני האירועים של Windows AppLocker (לדוגמה,C:\Logs\applocker\*.evtx) -
start_at: מגדירים את הערךbeginningכדי לקרוא יומנים קיימים אוendכדי לקרוא רק רשומות חדשות
-
הגדרות של הכלי לייצוא:
-
windows_applocker: שם תיאורי של הכלי לייצוא -
creds_file_path: הנתיב המלא לקובץ האימות להטמעת נתונים:- Windows:
C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json
- Windows:
-
<customer_id>: מספר הלקוח מהשלב הקודם endpoint: Regional endpoint URL:- ארה"ב:
malachiteingestion-pa.googleapis.com - אירופה:
europe-malachiteingestion-pa.googleapis.com - אסיה:
asia-southeast1-malachiteingestion-pa.googleapis.com - רשימה מלאה מופיעה במאמר בנושא נקודות קצה אזוריות.
- ארה"ב:
-
WINDOWS_APPLOCKER: סוג היומן בדיוק כמו שהוא מופיע ב-Chronicle -
ingestion_labels: תוויות אופציונליות בפורמט YAML (לדוגמה,env: production)
-
הגדרת צינור עיבוד נתונים:
-
applocker_to_chronicle: שם תיאורי של צינור העיבוד
-
שמירת קובץ ההגדרות
- אחרי שמסיימים לערוך, שומרים את הקובץ:
- Windows: לוחצים על קובץ > שמירה.
מפעילים מחדש את סוכן Bindplane כדי להחיל את השינויים.
כדי להפעיל מחדש את סוכן Bindplane ב-Windows:
בוחרים אחת מהאפשרויות האלה:
- שורת הפקודה או 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"
הגדרה של ייצוא יומנים ב-Windows AppLocker
יומני AppLocker של Windows מאוחסנים ביומן האירועים של Windows בכמה ערוצים. צריך לייצא את היומנים האלה לקבצים בדיסק כדי שהסוכן של Bindplane יוכל לאסוף אותם.
יוצרים ספרייה לאחסון קובצי היומן המיוצאים:
mkdir C:\Logs\applockerייצוא יומני אירועים של Windows AppLocker באמצעות
wevtutil:wevtutil epl "Microsoft-Windows-AppLocker/EXE and DLL" C:\Logs\applocker\applocker-exedll.evtxwevtutil epl "Microsoft-Windows-AppLocker/MSI and Script" C:\Logs\applocker\applocker-msiscript.evtxwevtutil epl "Microsoft-Windows-AppLocker/Packaged app-Deployment" C:\Logs\applocker\applocker-pkgdeploy.evtxwevtutil epl "Microsoft-Windows-AppLocker/Packaged app-Execution" C:\Logs\applocker\applocker-pkgexec.evtx(אופציונלי) תזמון ייצוא קבוע באמצעות מתזמן המשימות של Windows:
$action = New-ScheduledTaskAction -Execute "wevtutil" -Argument 'epl "Microsoft-Windows-AppLocker/EXE and DLL" C:\Logs\applocker\applocker-exedll.evtx /ow:true' $trigger = New-ScheduledTaskTrigger -RepetitionInterval (New-TimeSpan -Hours 1) -Once -At (Get-Date) Register-ScheduledTask -Action $action -Trigger $trigger -TaskName "ExportAppLockerLogs" -Description "Export Windows AppLocker logs for Bindplane agent"מוודאים שקובצי היומן שיוצאו נוצרים בנתיב `C:\Logs\applocker`.
מוודאים שהנתיב של סוכן Bindplane
includeב-config.yamlתואם לספריית הייצוא.
טבלת מיפוי UDM
| שדה היומן | מיפוי UDM | לוגיקה |
|---|---|---|
| event_type | metadata.event_type | סוג האירוע |
| EventID | metadata.product_event_type | סוג אירוע שקשור למוצר |
| SourceModuleType | observer.application | האפליקציה שבה נצפה האירוע |
| דומיין | principal.administrative_domain | הדומיין האדמיניסטרטיבי של הגורם המרכזי |
| שם המארח | principal.hostname | שם המארח של הגורם המרכזי |
| principal_ip1 | principal.ip | כתובת ה-IP של הגורם המרכזי |
| AccountType | principal.user.attribute.roles | תפקידים שמשויכים למשתמש הראשי |
| AccountName | principal.user.userid | מזהה המשתמש של המשתמש הראשי |
| ssdl | security_result.about.labels | תוויות לגבי תוצאת האבטחה |
| security_action | security_result.action | פעולה שבוצעה בתוצאת האבטחה |
| message1 | security_result.description | תיאור של תוצאת האבטחה |
| RuleAndFileData.RuleId | security_result.rule_id | המזהה של כלל האבטחה |
| RuleAndFileData.RuleName, EventID | security_result.rule_name | השם של כלל האבטחה |
| EventType | security_result.severity | רמת החומרה של תוצאת האבטחה |
| RuleAndFileData.PolicyName | security_result.summary | סיכום תוצאות האבטחה |
| ThreadID | security_result.threat_id | מזהה האיום |
| RuleAndFileData.FullFilePath, filePath | target.process.file.full_path | הנתיב המלא של קובץ תהליך היעד |
| ProcessID, RuleAndFileData.TargetProcessId | target.process.pid | מזהה התהליך של תהליך היעד |
| ProviderGuid | target.resource.product_object_id | מזהה אובייקט המוצר של משאב היעד |
| UserID | target.user.userid | מזהה המשתמש של משתמש היעד |
| sourceName | metadata.product_name | שם המוצר |
| metadata.vendor_name | שם הספק |
שנה רישום
צפייה ביומן השינויים של כלי הניתוח הזה
הבעיה עדיין לא נפתרה? קבלת תשובות מחברי הקהילה וממומחי Google SecOps.