איסוף יומנים של Forcepoint Email Security
גרסת כלי הניתוח: 2.0
במאמר הזה מוסבר איך להטמיע יומנים של Forcepoint Email Security ב-Google Security Operations באמצעות BindPlane. המנתח קודם מחלץ שדות מהיומנים בפורמט JSON ומאתחל כמה שדות UDM עם ערכים ריקים. לאחר מכן, הוא ממפה את השדות שחולצו לשדות התואמים שלהם במבנה ה-UDM של Chronicle, על סמך תנאים ספציפיים ומניפולציות של נתונים, ובסופו של דבר יוצר ייצוג מאוחד של אירוע האבטחה באימייל.
לפני שמתחילים
חשוב לוודא שמתקיימות הדרישות המוקדמות הבאות:
- מכונה של Google SecOps
- מארח עם Windows 2016 ואילך או Linux עם
systemd - אם מריצים את הסוכן מאחורי שרת proxy, מוודאים שיציאות חומת האש פתוחות בהתאם לדרישות של סוכן BindPlane
- גישה עם הרשאות למכשיר או למסוף הניהול של Forcepoint Email Security
קבלת פרטי כניסה ל-Google SecOps עבור סוכן Bindplane
כדי לאמת את סוכן Bindplane ב-Google SecOps, בוחרים באחת מהשיטות הבאות:
- פריסות חדשות: משתמשים ב-Chronicle API (אפשרות 1).
- פריסות מדור קודם: אפשר להמשיך להשתמש בקובץ האימות של ה-API להעברת נתונים (אפשרות 2) עד שה-API להעברת נתונים יפסיק לפעול ב-20 ביולי 2027.
אפשרות 1: יצירת חשבון שירות ל-Chronicle API (מומלץ)
- נכנסים אל Google Cloud המסוף ובוחרים את Google Cloud הפרויקט שמקושר למופע של Google SecOps.
- נכנסים לדף IAM & Admin > Service Accounts.
- לוחצים על יצירת חשבון שירות.
- מזינים את פרטי ההגדרה הבאים:
- שם חשבון השירות: מזינים שם לחשבון (לדוגמה,
bindplane-ingest). - Service account description: מזינים תיאור (לדוגמה,
Bindplane agent log ingestion).
- שם חשבון השירות: מזינים שם לחשבון (לדוגמה,
- לוחצים על Create and continue.
- בקטע Grant this service account access to project, לוחצים על Select a role ובוחרים באפשרות Chronicle Editor.
- לוחצים על המשך ואז על סיום.
- לוחצים על חשבון השירות שיצרתם ועוברים לכרטיסייה Keys.
- לוחצים על Add key > Create new key.
- בוחרים באפשרות JSON ולוחצים על Create. קובץ המפתח יורד למחשב.
- שומרים את קובץ המפתח בשם
ingestion-auth.jsonבספריית Bindplane Collector (/opt/observiq-otel-collector/ingestion-auth.jsonב-Linux אוC:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.jsonב-Windows), או מעדכנים אתcreds_file_pathב-config.yamlכך שיתאים לנתיב שבו שומרים את הקובץ. - עוברים אל IAM & Admin > Settings (ניהול הרשאות גישה ואדמין > הגדרות) ומעתיקים את מספר הפרויקט. תצטרכו אותו כדי להגדיר את כלי הייצוא.
אפשרות 2: הורדת קובץ אימות להטמעת נתונים (גרסה מדור קודם)
- נכנסים למסוף Google SecOps.
- עוברים אל SIEM Settings > Collection Agents (הגדרות SIEM > סוכני איסוף).
- מורידים את קובץ האימות להטמעת נתונים.
- שומרים את הקובץ בצורה מאובטחת במערכת שבה יותקן הסוכן של Bindplane.
איך מקבלים את מספר הלקוח ב-Google SecOps
- נכנסים למסוף Google SecOps.
- עוברים אל SIEM Settings > Profile.
- מעתיקים ושומרים את מזהה הלקוח מהקטע פרטי הארגון.
התקנת BindPlane Agent
מתקינים את סוכן BindPlane במערכת ההפעלה Windows או Linux לפי ההוראות הבאות.
התקנה ב-Windows
- פותחים את שורת הפקודה או את PowerShell כאדמין.
מריצים את הפקודה הבאה:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
התקנה ב-Linux
- פותחים טרמינל עם הרשאות root או sudo.
מריצים את הפקודה הבאה:
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
מקורות מידע נוספים בנושא התקנה
- אפשרויות התקנה נוספות מפורטות במדריך ההתקנה.
- אפשרות חלופית: אפשר גם להשתמש בתהליך העבודה של התקנה מנוהלת של BindPlane OP לניהול מרכזי של סוכנים.
הגדרת סוכן BindPlane להטמעת Syslog ושליחה אל Google SecOps
גישה לקובץ התצורה:
- מאתרים את הקובץ
config.yaml. בדרך כלל, הוא נמצא בספרייה/opt/observiq-otel-collector/ב-Linux או בספריית ההתקנה ב-Windows. - פותחים את הקובץ באמצעות כלי לעריכת טקסט (לדוגמה,
nano,viאו Notepad).
- מאתרים את הקובץ
עורכים את הקובץ
config.yamlבאופן הבא:receivers: udplog: # Replace the port and IP address as required listen_address: "0.0.0.0:514" exporters: chronicle/chronicle_w_labels: protocol: https # Region of your instance, for example us, europe, asia-southeast1 location: <LOCATION> # Project number of the Google Cloud project linked to the instance project: '<PROJECT_NUMBER>' compression: gzip # Adjust the path to the credentials file you downloaded in Step 1 creds_file_path: '/path/to/ingestion-authentication-file.json' # Replace with your actual customer ID from Step 2 customer_id: <CUSTOMER_ID> endpoint: chronicle.googleapis.com # Add optional ingestion labels for better organization log_type: 'FORCEPOINT_EMAILSECURITY' raw_log_field: body ingestion_labels: service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - udplog exporters: - chronicle/chronicle_w_labelsמחליפים את היציאה ואת כתובת ה-IP לפי הצורך בתשתית שלכם.
מחליפים את
<LOCATION>באזור של מכונת Google SecOps (לדוגמה,us,europeאוasia-southeast1). המייצא מוסיף את הערך הזה בתחילתchronicle.googleapis.com.מחליפים את
<PROJECT_NUMBER>במספר הפרויקט מתוך IAM & Admin > Settings.מחליפים את
<CUSTOMER_ID>במספר הלקוח בפועל.מעדכנים את
/path/to/ingestion-authentication-file.jsonלנתיב הקובץ שבו נשמר קובץ המפתח של חשבון השירות (אפשרות 1) בשלב 1.
כלי לייצוא נתונים מ-Legacy ingestion API
אם משתמשים בקובץ האימות של ההעלאה מאפשרות 2, מחליפים את הבלוק
exportersבבלוק הבא. מגדירים אתcreds_file_pathלנתיב לקובץ האימות של ההעברה, ואם המופע שלכם נמצא מחוץ לארה"ב, מחליפים אתmalachiteingestion-pa.googleapis.comבנקודת הקצה האזורית (לדוגמה,europe-malachiteingestion-pa.googleapis.com).exporters: chronicle/chronicle_w_labels: compression: gzip # Adjust the path to the credentials file you downloaded in Step 1 creds_file_path: '/path/to/ingestion-authentication-file.json' # Replace with your actual customer ID from Step 2 customer_id: <CUSTOMER_ID> endpoint: malachiteingestion-pa.googleapis.com # Add optional ingestion labels for better organization log_type: 'FORCEPOINT_EMAILSECURITY' raw_log_field: body ingestion_labels:
מפעילים מחדש את BindPlane Agent כדי להחיל את השינויים.
כדי להפעיל מחדש את סוכן BindPlane ב-Linux, מריצים את הפקודה הבאה:
sudo systemctl restart observiq-otel-collectorכדי להפעיל מחדש את סוכן BindPlane ב-Windows, אפשר להשתמש במסוף Services או להזין את הפקודה הבאה:
net stop observiq-otel-collector && net start observiq-otel-collector
הגדרת העברת Syslog ב-Forcepoint Email Security
- נכנסים ל-Forcepoint Email Security Management Console.
- עוברים אל הגדרות > שילובים > שילוב SIEM.
- לוחצים על הפעלת שילוב SIEM.
ממלאים את פרטי ההגדרה הבאים:
- פורמט: בוחרים באפשרות LEEF (פורמט מורחב של אירועי יומן).
- שרת Syslog: מזינים את כתובת ה-IP של BindPlane Agent.
- Syslog Port: מזינים את מספר היציאה של סוכן BindPlane (לדוגמה,
514). - Protocol: בוחרים באפשרות UDP או TCP, בהתאם להגדרות בפועל של BindPlane Agent.
- מתקן: בוחרים את קוד המתקן של syslog (לדוגמה,
Local0). - חומרה: בוחרים את רמת החומרה של האירועים ביומן.
לוחצים על Save.
טבלת מיפוי UDM
| שדה ביומן | מיפוי UDM | היגיון |
|---|---|---|
| פעולה | security_result.action_details | ממופה ישירות מהשדה "פעולה" ביומן הגולמי. |
| AttachmentFilename | additional.fields.value.list_value.values.string_value (key: Attachments_FileNames) | השדה AttachmentFilename מפוצל באמצעות פסיק, ואז כל ערך מתווסף כ-string_value למערך additional.fields עם המפתח Attachments_FileNames. |
| AttachmentFileType | additional.fields.value.list_value.values.string_value (key: AttachmentsFileType) | השדה AttachmentFileType מפוצל באמצעות פסיק, ואז כל ערך מתווסף כ-string_value למערך additional.fields עם המפתח AttachmentsFileType. |
| AttachmentSize | additional.fields.value.list_value.values.string_value (key: AttachmentsSize) | השדה AttachmentSize מפוצל באמצעות פסיק, ואז כל ערך מתווסף כ-string_value למערך additional.fields עם המפתח AttachmentsSize. |
| DateTime | לא ממופה ב-UDM שסופק. | |
| EnvelopeSender | network.email.from | ממופה ישירות מהשדה EnvelopeSender ביומן הגולמי. |
| EventReceivedTime | metadata.event_timestamp | מנותח לפורמט של חותמת זמן וממופה ל-"metadata.event_timestamp". |
| FilteringReason | security_result.category_details | ממופה ישירות מהשדה FilteringReason ביומן הגולמי. |
| MessageSandboxing | security_result.detection_fields.value (key: MessageSandboxing) | ממופה ישירות מהשדה MessageSandboxing ביומן הגולמי, ונוסף כצמד מפתח/ערך למערך security_result.detection_fields. |
| MessageSize | security_result.detection_fields.value (key: MessageSize) | ממופה ישירות מהשדה MessageSize ביומן הגולמי ומתווסף כצמד מפתח/ערך למערך security_result.detection_fields. |
| nxlog_filename | additional.fields.value.string_value (key: nxlog_filename) | ממופה ישירות מהשדה nxlog_filename ביומן הגולמי, ומתווסף כצמד מפתח/ערך למערך additional.fields. |
| RecipientAddress | network.email.to | מופה ישירות מהשדה 'RecipientAddress' ביומן הגולמי. |
| SenderIP | principal.asset.ip, principal.ip | ממופה ישירות מהשדה SenderIP ביומן הגולמי. |
| SenderIPCountry | principal.location.country_or_region | ממופה ישירות מהשדה SenderIPCountry ביומן הגולמי. |
| SourceModuleName | principal.resource.attribute.labels.value (key: SourceModuleName) | ממופה ישירות מהשדה "SourceModuleName" ביומן הגולמי, ונוסף כצמד מפתח/ערך למערך "principal.resource.attribute.labels". |
| SourceModuleType | principal.resource.attribute.labels.value (key: SourceModuleType) | מופה ישירות מהשדה SourceModuleType ביומן הגולמי ונוסף כמפתח/ערך למערך principal.resource.attribute.labels. |
| SpamScore | security_result.detection_fields.value (key: SpamScore) | ממופה ישירות מהשדה SpamScore ביומן הגולמי ומתווסף כצמד מפתח/ערך למערך security_result.detection_fields. |
| נושא | network.email.subject | ממופה ישירות מהשדה "נושא" ביומן הגולמי. |
| VirusName | security_result.detection_fields.value (key: VirusName) | ממופה ישירות מהשדה VirusName ביומן הגולמי ונוסף כמפתח/ערך למערך security_result.detection_fields. |
| metadata.event_type | הערך נקבע על סמך הנוכחות של שדות אחרים. אם הערך של has_network_email_data הוא true, הערך של המאפיין הוא EMAIL_TRANSACTION. אם הערך של "has_principal" הוא True, הערך מוגדר כ-"STATUS_UPDATE". אחרת, ברירת המחדל היא "GENERIC_EVENT". | |
| metadata.product_name | הערך הוא FORCEPOINT EMAILSECURITY. | |
| metadata.vendor_name | הערך הוא FORCEPOINT EMAILSECURITY. |
יומן שינויים
צפייה ביומן השינויים של המנתח הזה
הבעיה עדיין לא נפתרה? קבלת תשובות מחברי הקהילה וממומחי Google SecOps.