איסוף יומנים של חומת האש של Windows
במאמר הזה מוסבר איך להטמיע יומנים של חומת האש של Windows ב-Google Security Operations באמצעות Bindplane.
חומת האש של Windows היא חומת אש מובנית של מארח Windows, שמייצרת יומנים של אירועי שירות, שינויים בכללים וחיבורים שאושרו או נחסמו. סוכן Bindplane אוסף את קובצי היומן של חומת האש ישירות ממערכת הקבצים המקומית.
לפני שמתחילים
חשוב לוודא שמתקיימות הדרישות המוקדמות הבאות:
- מופע של Google SecOps
- Windows Server 2016 ואילך עם תמיכה בשירות
observiq-otel-collector - אם מריצים את הסוכן מאחורי שרת proxy, מוודאים שיציאות חומת האש פתוחות בהתאם לדרישות של סוכן Bindplane
- הרשאת אדמין למארחי Windows שמייצרים יומני חומת אש
קבלת קובץ אימות להטמעת נתונים ב-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:\Windows\system32\LogFiles\Firewall\pfirewall.log start_at: beginning exporters: chronicle/windows_firewall: 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_FIREWALL raw_log_field: body ingestion_labels: env: production service: pipelines: logs/firewall_to_chronicle: receivers: - filelog exporters: - chronicle/windows_firewall
פרמטרים להגדרה
מחליפים את ה-placeholders הבאים:
הגדרת מקלט:
-
filelog: סוג המקלט לאיסוף קובצי יומן מהדיסק -
include: רשימה של נתיבי קבצים למעקב. מיקום ברירת המחדל של יומן חומת האש של Windows:C:\Windows\system32\LogFiles\Firewall\pfirewall.log
-
start_at: מגדירים את הערךbeginningכדי לקרוא יומנים קיימים אוendכדי לקרוא רק רשומות חדשות
-
הגדרות של הכלי לייצוא:
-
windows_firewall: שם תיאורי של הכלי לייצוא -
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_FIREWALL: סוג היומן בדיוק כמו שהוא מופיע ב-Chronicle -
ingestion_labels: תוויות אופציונליות בפורמט YAML (לדוגמה,env: production)
-
הגדרת צינור עיבוד נתונים:
-
firewall_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
- פותחים את Windows Defender Firewall with Advanced Security (חומת האש של Windows Defender עם אבטחה מתקדמת) על ידי הקשה על
Win+R, הקלדה שלwf.mscוהקשה על Enter. - בחלונית הימנית, לוחצים לחיצה ימנית על Windows Defender Firewall with Advanced Security on Local Computer (חומת האש של Windows Defender עם אבטחה מתקדמת במחשב המקומי) ובוחרים באפשרות Properties (מאפיינים).
- בוחרים את הכרטיסייה המתאימה של הפרופיל (פרופיל הדומיין, פרופיל פרטי או פרופיל גלוי לכולם).
- בקטע Logging (רישום ביומן), לוחצים על Customize (התאמה אישית).
- מספקים את פרטי ההגדרה הבאים:
- רישום ביומן של מנות שהושמטו: בוחרים באפשרות כן.
- רישום ביומן של חיבורים מוצלחים: בוחרים באפשרות כן.
- שם: מוודאים שנתיב קובץ היומן הוא
%systemroot%\system32\LogFiles\Firewall\pfirewall.log(ברירת מחדל). - מגבלת גודל (KB): צריך להגדיר לפחות
4096כדי לתעד מספיק נתוני יומן.
- לוחצים על אישור כדי לשמור את הגדרות הרישום.
- חוזרים על שלבים 3 עד 6 לכל כרטיסיית פרופיל (דומיין, פרטי, ציבורי) לפי הצורך.
- מוודאים שקובץ היומן נכתב במיקום
C:\Windows\system32\LogFiles\Firewall\pfirewall.log. מוודאים שהנתיב של סוכן Bindplane
includeב-config.yamlתואם לנתיב של קובץ היומן של חומת האש.
טבלת מיפוי UDM
| שדה היומן | מיפוי UDM | לוגיקה |
|---|---|---|
| tcpflags, tcpsyn, tcpack, tcpwin, icmptype, icmpcode | about.labels | המיזוג מתבצע כצמדי מפתח/ערך אם השדה != "-" |
| חותמת זמן | metadata.event_timestamp | הניתוח בוצע באמצעות הפורמט yyyy-MM-dd HH:mm:ss |
| metadata.event_type | הערך שמוגדר הוא NETWORK_CONNECTION | |
| כיוון | network.direction | הערך הוא OUTBOUND אם הכיוון הוא SEND או FORWARD, והערך הוא INBOUND אם הכיוון הוא RECEIVE |
| פרוטוקול | network.ip_protocol | הערך מועתק ישירות אם הפרוטוקול הוא אחד מהפרוטוקולים הבאים: ['TCP', 'UDP', 'ICMP'] |
| size | network.received_bytes | הערך מומר ל-uinteger אם הכיוון הוא 'קבלת נתונים' והגודל הוא לא '-' |
| size | network.sent_bytes | הערך מומר ל-uinteger אם הכיוון הוא ['שליחה', 'העברה'] והגודל שונה מ-'-' |
| src_ip | principal.ip | הערך הועתק ישירות |
| src_port | principal.port | הומר למספר שלם אם src_port != "-" |
| פעולה | security_result.action | הערך הוא BLOCK אם הפעולה היא DROP, והערך הוא ALLOW אם הפעולה היא ALLOW |
| מידע | security_result.summary | הערך מועתק ישירות אם המידע שונה מ-'-' |
| dst_ip | target.ip | הערך הועתק ישירות |
| dst_port | target.port | הערך מומר למספר שלם אם dst_port != "-" |
| metadata.product_name | ההגדרה היא 'חומת האש של Windows' | |
| metadata.vendor_name | הגדרה כ-Microsoft |
הבעיה עדיין לא נפתרה? קבלת תשובות מחברי הקהילה וממומחי Google SecOps.