איסוף יומנים של Citrix StoreFront
גרסת כלי הניתוח: 1.0
במסמך הזה מוסבר איך אפשר להטמיע יומנים של Citrix StoreFront ב-Google Security Operations באמצעות Bindplane.
Citrix StoreFront היא אפליקציית אינטרנט שמספקת חנות אפליקציות לארגונים עבור אפליקציות ושולחנות עבודה וירטואליים של Citrix. הוא מאמת את המשתמשים באתרים של Citrix Virtual Apps and Desktops ומאגד את המשאבים הזמינים בפורטל אחד. StoreFront כותב אימות, הפעלת סשן ואירועי שירות ליומן האירועים של Windows תחת מקורות אירועים עם הקידומת Citrix.
לפני שמתחילים
חשוב לוודא שמתקיימות הדרישות המוקדמות הבאות:
- מופע של Google SecOps
- Windows Server 2016 ואילך עם
systemd - קישוריות לרשת בין סוכן Bindplane לבין האינטרנט
- אם מריצים מאחורי שרת proxy, מוודאים שיציאות חומת האש פתוחות בהתאם לדרישות של סוכן Bindplane
- גישת אדמין ל-Windows Server שמארח את Citrix StoreFront
- Citrix StoreFront 2308 או גרסה מתקדמת יותר מותקנת ומוגדרת
קבלת קובץ אימות להטמעת נתונים ב-Google SecOps
- נכנסים למסוף Google SecOps.
- עוברים אל SIEM Settings > Collection Agents.
- מורידים את קובץ האימות להטמעת נתונים. שומרים את הקובץ בצורה מאובטחת במערכת שבה תותקן 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 להטמעה של יומני אירועים של Windows ושליחה שלהם ל-Google SecOps
איתור קובץ ההגדרות
- פותחים את שורת הפקודה כאדמין.
עוברים לספריית ההתקנה של סוכן Bindplane ופותחים את קובץ ההגדרות:
notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
עריכת קובץ ההגדרות
מחליפים את כל התוכן של
config.yamlבהגדרה הבאה:receivers: windowseventlog/storefront_application: channel: Application raw: true start_at: end operators: - type: filter expr: 'record["source_name"] matches "^Citrix"' processors: batch: exporters: chronicle/storefront: compression: gzip creds: '{ "type": "service_account", "project_id": "YOUR_PROJECT_ID", "private_key_id": "YOUR_PRIVATE_KEY_ID", "private_key": "-----BEGIN PRIVATE KEY-----\nYOUR_PRIVATE_KEY\n-----END PRIVATE KEY-----\n", "client_email": "YOUR_CLIENT_EMAIL", "client_id": "YOUR_CLIENT_ID", "auth_uri": "https://accounts.google.com/o/oauth2/auth", "token_uri": "https://oauth2.googleapis.com/token", "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs", "client_x509_cert_url": "YOUR_CERT_URL" }' customer_id: 'YOUR_CUSTOMER_ID' endpoint: malachiteingestion-pa.googleapis.com log_type: 'CITRIX_STOREFRONT' override_log_type: false raw_log_field: body service: pipelines: logs/storefront: receivers: - windowseventlog/storefront_application processors: - batch exporters: - chronicle/storefront
פרמטרים להגדרה
מחליפים את ה-placeholders הבאים בערכים בפועל:
הגדרת כלי הייצוא:
-
YOUR_PROJECT_ID: מזהה הפרויקט מקובץ האימות של ההעברה -
YOUR_PRIVATE_KEY_ID: המזהה של המפתח הפרטי מקובץ האימות של ההעלאה -
YOUR_PRIVATE_KEY: המפתח הפרטי מקובץ האימות של ההעלאה (צריך לוודא שנעשה שימוש בתווי escape מתאימים לשורות חדשות) YOUR_CLIENT_EMAIL: כתובת האימייל של הלקוח מקובץ האימות של ההעברה-
YOUR_CLIENT_ID: מזהה הלקוח מקובץ האימות של ההעלאה -
YOUR_CERT_URL: כתובת ה-URL של אישור הלקוח x509 מקובץ האימות של ההעלאה -
YOUR_CUSTOMER_ID: מספר הלקוח ב-Google SecOps
-
הגדרה של נקודת קצה אזורית:
- באזור ארה"ב, משתמשים בכתובת:
malachiteingestion-pa.googleapis.com - בשביל אזור אירופה, משתמשים בכתובת:
europe-malachiteingestion-pa.googleapis.com - בשביל Asia Southeast region, משתמשים בערך:
asia-southeast1-malachiteingestion-pa.googleapis.com - רשימה מלאה מופיעה במאמר בנושא נקודות קצה אזוריות.
- באזור ארה"ב, משתמשים בכתובת:
דוגמה:
exporters: chronicle/storefront: compression: gzip creds_file_path: 'C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json' customer_id: 'YOUR_CUSTOMER_ID' endpoint: malachiteingestion-pa.googleapis.com log_type: 'CITRIX_STOREFRONT' override_log_type: false raw_log_field: body
שמירת קובץ ההגדרות
- אחרי שמסיימים לערוך, שומרים את הקובץ:
- לוחצים על קובץ > שמירה.
- סגירת פנקס הרשימות
מפעילים מחדש את סוכן 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"
הגדרת רישום ביומן של אירועים ב-Citrix StoreFront
כברירת מחדל, ב-StoreFront 2311 ובגרסאות מאוחרות יותר מתועדות הודעות ברמה Error, Warning ו-Info. בגרסאות קודמות (2308 ומטה), רק הודעות ברמה Error מתועדות כברירת מחדל.
הפעלת רישום מפורט (verbose) ביומן (אופציונלי)
כדי להגדיל את רמת הפירוט של הרישום ביומן לצורך פתרון בעיות:
- נכנסים אל שרת StoreFront עם הרשאות אדמין מקומיות.
- פותחים את PowerShell כאדמין.
מריצים את הפקודה הבאה כדי להפעיל רישום מפורט ביומן לכל השירותים:
Set-STFDiagnostics -All -TraceLevel "Verbose" -confirm:$Falseאחרי פתרון הבעיות, מחזירים את רמת הרישום לברירת המחדל:
Set-STFDiagnostics -All -TraceLevel "Info" -confirm:$False
אימות אירועים ביומן האירועים של Windows
- מקישים על
Win+R, מקלידיםeventvwr.mscומקישים על Enter כדי לפתוח את Event Viewer (צפייה באירועים). - עוברים אל Application and Services Logs > Citrix Delivery Services.
- מוודאים שהאירועים מתועדים לצורך אימות, חנויות ו-Receiver לאתרים.
- עוברים אל Windows Logs > Application.
- מסננים אירועים לפי שמות מקור שמתחילים ב-Citrix כדי לוודא שנוצרים אירועים ברמת האפליקציה.
הגדרה של הגבלת קצב העברת נתונים ביומן האירועים (אופציונלי)
StoreFront תומך בהגבלת קצב העברת הנתונים של יומן האירועים כדי להגביל את מספר האירועים הכפולים. כדי להגדיר הגבלת קצב:
- מנווטים לספריות של הגדרות השירות StoreFront בשרת:
- שירות אימות:
C:\inetpub\wwwroot\Citrix\Authentication - מאגר:
C:\inetpub\wwwroot\Citrix\<storename> - מקלט לאתר:
C:\inetpub\wwwroot\Citrix\<storename>\Web
- שירות אימות:
- פותחים את הקובץ
web.configבכל ספרייה באמצעות כלי לעריכת טקסט. מחפשים את הרכיב
loggerומגדירים את פרמטרים של הגבלת קצב הבקשות:<logger duplicateInterval="00:01:00" duplicateLimit="10">-
duplicateInterval: פרק הזמן (שעות:דקות:שניות) שבמהלכו מתבצע מעקב אחרי רשומות כפולות ביומן duplicateLimit: מספר הרשומות הכפולות שצריך לרשום ביומן במהלך המרווח כדי להפעיל הגבלת קצב.
-
שומרים את קובצי ההגדרות.
מידע נוסף זמין במסמכי התיעוד של קובצי היומן של Citrix StoreFront.
טבלת מיפוי UDM
| שדה ביומן | מיפוי UDM | היגיון |
|---|---|---|
OpcodeValue_label |
additional.fields |
ממוזג |
Opcode_label |
additional.fields |
ממוזג |
ThreadID_label |
additional.fields |
ממוזג |
X-Citrix-Via_label |
additional.fields |
ממוזג |
XCitrixGateway_label |
additional.fields |
ממוזג |
keyword_label |
additional.fields |
ממוזג |
_vulns |
extensions.vulns.vulnerabilities |
ממוזג |
_intermediary |
intermediary |
ממוזג |
_intermediary_controller |
intermediary |
ממוזג |
_intermediary_hypervisor |
intermediary |
ממוזג |
_intermediary_storefront |
intermediary |
ממוזג |
description |
metadata.description |
מיפוי ישיר |
EventTime |
metadata.event_timestamp |
ניתוח הכתובות שברשימה: RFC 3339 |
Machine.CreatedDate |
metadata.event_timestamp |
ניתוח הכתובות שברשימה: RFC 3339 |
Machine.LastDeregisteredDate |
metadata.event_timestamp |
ניתוח הכתובות שברשימה: RFC 3339 |
Machine.ModifiedDate |
metadata.event_timestamp |
ניתוח הכתובות שברשימה: RFC 3339 |
Machine.PoweredOnDate |
metadata.event_timestamp |
ניתוח הכתובות שברשימה: RFC 3339 |
Machine.RegistrationStateChangeDate |
metadata.event_timestamp |
ניתוח הכתובות שברשימה: RFC 3339 |
Session.EndDate |
metadata.event_timestamp |
ניתוח הכתובות שברשימה: RFC 3339 |
Session.StartDate |
metadata.event_timestamp |
ניתוח הכתובות שברשימה: RFC 3339 |
event_date |
metadata.event_timestamp |
ניתוח הכתובות שברשימה: RFC 3339 |
has_principal |
metadata.event_type |
מיפוי: true ← NETWORK_CONNECTION, true ← STATUS_UPDATE |
EventID |
metadata.product_event_type |
מיפוי ישיר |
RecordNumber |
metadata.product_log_id |
מיפוי ישיר |
Machine.AgentVersion |
metadata.product_version |
שם שונה/מיפוי |
_network |
network |
שם שונה/מיפוי |
_principal |
principal |
שם שונה/מיפוי |
Channel_label |
security_result.about.resource.attribute.labels |
ממוזג |
severity |
security_result.severity |
מיפוי: (?i)Info ← INFORMATIONAL, (?i)Error ← ERROR, (?i)Warning ← MEDIUM |
SeverityValue |
security_result.severity_details |
מיפוי ישיר |
Connection.ConnectedViaHostName |
src.hostname |
מיפוי ישיר |
_target |
target |
שם שונה/מיפוי |
| לא רלוונטי | extensions.auth.auth_details |
קבוע: ACTIVE |
| לא רלוונטי | extensions.auth.type |
קבוע: MACHINE |
| לא רלוונטי | metadata.event_type |
קבוע: GENERIC_EVENT |
| לא רלוונטי | metadata.product_name |
קבוע: Monitor Service OData |
| לא רלוונטי | metadata.vendor_name |
קבוע: Citrix |
| לא רלוונטי | security_result.severity |
קבוע: INFORMATIONAL |
OpcodeValue","X-Citrix-Via","ThreadID","XCitrixGateway","Opcode","Keywords", "OpcodeValue |
additional.fields |
מופה מיומן השינויים |
X-Citrix-Via-VIP |
_target.ip |
מופה מיומן השינויים |
Remoteadresse |
taregt.ip |
מופה מיומן השינויים |
invalid_X-Forwarded-For |
_principal.ip |
מופה מיומן השינויים |
Task |
_target.resource.type |
מופה מיומן השינויים |
Hostname |
_principal.hostname |
מופה מיומן השינויים |
SourceModuleName |
target.resource.name |
מופה מיומן השינויים |
SourceModuleType |
_principal.resource.attribute.labels |
מופה מיומן השינויים |
Machine.AssociatedUserUPNs |
target.group.email_addresses |
מופה מיומן השינויים |
יומן שינויים
צפייה ביומן השינויים של מנתח התוכן הזה
הבעיה עדיין לא נפתרה? קבלת תשובות מחברי הקהילה וממומחי Google SecOps.