איסוף יומני Commvault
גרסת כלי הניתוח: 3.0
במאמר הזה מוסבר איך להטמיע יומני Commvault ב-Google Security Operations באמצעות סוכן Bindplane.
Commvault יוצר הודעות syslog לפעולות גיבוי, התראות, אירועים ופעילויות מערכת. הכלי לניתוח מחלץ שדות מהודעות היומן וממפה אותם למודל הנתונים המאוחד (UDM).
לפני שמתחילים
חשוב לוודא שמתקיימות הדרישות המוקדמות הבאות:
- מכונה של Google SecOps
- Windows Server 2016 ואילך, או מארח Linux עם
systemd - קישוריות לרשת בין סוכן Bindplane לבין מערכת Commvault
- אם מריצים מאחורי שרת proxy, מוודאים שיציאות חומת האש פתוחות בהתאם לדרישות של סוכן Bindplane
- Privileged access to the Commvault Management Console
קבלת קובץ אימות להטמעת נתונים ב-Google SecOps
- נכנסים למסוף Google SecOps.
- עוברים אל הגדרות SIEM > סוכני איסוף.
- מורידים את קובץ האימות להטמעת נתונים.
שומרים את הקובץ בצורה מאובטחת במערכת שבה יותקן סוכן Bindplane.
איך מקבלים את מספר הלקוח ב-Google SecOps
- נכנסים למסוף Google SecOps.
- עוברים אל SIEM Settings > Profile (הגדרות SIEM > פרופיל).
מעתיקים את מספר הלקוח מהקטע פרטי הארגון ושומרים אותו.
התקנת סוכן Bindplane
מתקינים את סוכן Bindplane במערכת ההפעלה Windows או Linux לפי ההוראות הבאות.
התקנה ב-Windows
- פותחים את שורת הפקודה או את PowerShell כאדמין.
מריצים את הפקודה הבאה:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quietמחכים שההתקנה תסתיים.
כדי לוודא שההתקנה בוצעה, מריצים את הפקודה:
sc query observiq-otel-collectorהשירות אמור להופיע כ-RUNNING.
התקנה ב-Linux
- פותחים טרמינל עם הרשאות root או sudo.
מריצים את הפקודה הבאה:
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.shמחכים שההתקנה תסתיים.
כדי לוודא שההתקנה בוצעה, מריצים את הפקודה:
sudo systemctl status observiq-otel-collectorהשירות צריך להופיע כפעיל (פועל).
מקורות מידע נוספים להתקנה
אפשרויות התקנה נוספות ופתרון בעיות מפורטים במדריך להתקנת סוכן Bindplane.
הגדרה של סוכן Bindplane לקליטת syslog ושליחה ל-Google SecOps
איתור קובץ ההגדרות
Linux:
sudo nano /etc/bindplane-agent/config.yamlWindows:
notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
עריכת קובץ התצורה
מחליפים את כל התוכן של
config.yamlבהגדרה הבאה:receivers: udplog: listen_address: "0.0.0.0:514" exporters: chronicle/commvault: compression: gzip creds_file_path: '/etc/bindplane-agent/ingestion-auth.json' customer_id: '<customer_id>' endpoint: malachiteingestion-pa.googleapis.com log_type: COMMVAULT raw_log_field: body service: pipelines: logs/commvault_to_chronicle: receivers: - udplog exporters: - chronicle/commvault
פרמטרים להגדרה
מחליפים את ה-placeholders הבאים:
הגדרת מקלט:
-
listen_address: כתובת ה-IP והיציאה להאזנה:-
0.0.0.0כדי להאזין בכל הממשקים (מומלץ) - יציאה
514היא יציאת syslog רגילה (נדרשת הרשאת root ב-Linux; אפשר להשתמש ב-1514ללא הרשאת root)
-
-
הגדרת כלי הייצוא:
-
creds_file_path: הנתיב המלא לקובץ האימות להטמעת נתונים:- Linux:
/etc/bindplane-agent/ingestion-auth.json - Windows:
C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json
- Linux:
-
customer_id: מספר הלקוח שהועתק ממסוף Google SecOps endpoint: כתובת ה-URL של נקודת הקצה האזורית:- ארה"ב:
malachiteingestion-pa.googleapis.com - אירופה:
europe-malachiteingestion-pa.googleapis.com - אסיה:
asia-southeast1-malachiteingestion-pa.googleapis.com - רשימה מלאה מופיעה במאמר בנושא נקודות קצה אזוריות.
- ארה"ב:
-
שמירת קובץ התצורה
- אחרי שמסיימים לערוך, שומרים את הקובץ:
- Linux: מקישים על
Ctrl+O, אחר כך עלEnterואז עלCtrl+X. - Windows: לוחצים על קובץ > שמירה.
- Linux: מקישים על
מפעילים מחדש את סוכן Bindplane כדי להחיל את השינויים.
כדי להפעיל מחדש את הסוכן של Bindplane ב-Linux, מריצים את הפקודה הבאה:
sudo systemctl restart observiq-otel-collectorמוודאים שהשירות פועל:
sudo systemctl status observiq-otel-collectorבודקים אם יש שגיאות ביומנים:
sudo journalctl -u observiq-otel-collector -f
כדי להפעיל מחדש את סוכן 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"
- מקישים על
הגדרת syslog ב-Commvault Cloud
- נכנסים למסוף הניהול של Commvault.
- עוברים אל ניהול > מערכת.
- לוחצים על המשבצת של מחבר ה-SIEM.
- לוחצים על הוספת מחבר.
- בכרטיסייה כללי, מזינים את הפרטים הבאים:
- שם המחבר: מזינים שם למחבר.
- סוג המחבר: בוחרים באפשרות Syslog.
- נתונים בסטרימינג: בוחרים את הנתונים שרוצים לייצא.
- לוחצים על הבא.
- בכרטיסייה Connector Definition (הגדרת מחבר), לוחצים על Add syslog server (הוספת שרת syslog).
- מספקים את פרטי ההגדרה הבאים:
- שרת Syslog: מזינים את כתובת ה-IP של סוכן Bindplane.
- מספר יציאה: מזינים את מספר היציאה של סוכן Bindplane.
לוחצים על שליחה.
טבלת מיפוי UDM
| שדה ביומן | מיפוי UDM | היגיון |
|---|---|---|
| AgentType | event.idm.read_only_udm.observer.application | הערך נלקח מהשדה AgentType בהודעת היומן. |
| Alertid | event.idm.read_only_udm.security_result.detection_fields.value | הערך נלקח מהשדה Alertid בהודעת היומן. השדה הזה ממופה למפתח alert_id. |
| Alertname | event.idm.read_only_udm.security_result.detection_fields.value | הערך נלקח מהשדה Alertname בהודעת היומן. השדה הזה ממופה למפתח alert_name. |
| Alertseverity | event.idm.read_only_udm.security_result.severity | השדה הזה משמש לאכלוס השדה security_result.severity על סמך הערך שלו. |
| Alerttime | event.idm.read_only_udm.metadata.event_timestamp | הערך נלקח מהשדה Alerttime בהודעת היומן והומר לחותמת זמן. |
| BackupLevel | event.idm.read_only_udm.additional.fields.value.string_value | הערך נלקח מהשדה BackupLevel בהודעת היומן. השדה הזה ממופה למפתח backup_level. |
| BackupSet | event.idm.read_only_udm.additional.fields.value.string_value | הערך נלקח מהשדה BackupSet בהודעת היומן. השדה הזה ממופה למפתח backup_set. |
| לקוח | event.idm.read_only_udm.principal.hostname | הערך נלקח מהשדה Client בהודעת היומן. |
| CommCell | event.idm.read_only_udm.additional.fields.value.string_value | הערך נלקח מהשדה CommCell בהודעת היומן. השדה הזה ממופה במפתח comcell_field. |
| מחשב | event.idm.read_only_udm.additional.fields.value.string_value | הערך נלקח מהשדה Computer בהודעת היומן. השדה הזה ממופה במפתח computer_field. |
| תיאור | event.idm.read_only_udm.metadata.description | הערך נלקח מהשדה Description בהודעת היומן אחרי עיבוד וניקוי. |
| DetectedCriteria | event.idm.read_only_udm.security_result.detection_fields.value | הערך נלקח מהשדה DetectedCriteria בהודעת היומן. השדה הזה ממופה למפתח detected_criteria. |
| DetectedTime | event.idm.read_only_udm.security_result.detection_fields.value | הערך נלקח מהשדה DetectedTime בהודעת היומן. השדה הזה ממופה למפתח detected_time. |
| פרטים | event.idm.read_only_udm.additional.fields.value.string_value | הערך נלקח מהשדה Details בהודעת היומן. השדה הזה ממופה למפתח details_field. |
| Eventid | event.idm.read_only_udm.metadata.product_log_id | הערך נלקח מהשדה Eventid בהודעת היומן. |
| Eventseverity | event.idm.read_only_udm.security_result.severity | השדה הזה משמש לאכלוס השדה security_result.severity על סמך הערך שלו. |
| הפעולה נכשלה | event.idm.read_only_udm.security_result.detection_fields.value | הערך נלקח מהשדה Failure בהודעת היומן. השדה הזה ממופה למפתח failure_filed. |
| Instance | event.idm.read_only_udm.additional.fields.value.string_value | הערך נלקח מהשדה Instance בהודעת היומן. השדה הזה ממופה במפתח instance_field. |
| מזהה משימה | event.idm.read_only_udm.principal.process.pid | הערך נלקח מהשדה Jobid בהודעת היומן. |
| MonitoringCriteria | event.idm.read_only_udm.additional.fields.value.string_value | הערך נלקח מהשדה MonitoringCriteria בהודעת היומן. השדה הזה ממופה במפתח monitoring_criteria. |
| Occurencetime | event.idm.read_only_udm.metadata.event_timestamp | הערך נלקח מהשדה Occurencetime בהודעת היומן והומר לחותמת זמן. |
| Opid | event.idm.read_only_udm.security_result.detection_fields.value | הערך נלקח מהשדה Opid בהודעת היומן. השדה הזה ממופה למפתח op_id. |
| תוכנית | event.idm.read_only_udm.principal.application | הערך נלקח מהשדה Program בהודעת היומן. |
| רמת החומרה | event.idm.read_only_udm.security_result.severity | הערך נלקח מהשדה Severitylevel בהודעת היומן וממופה על סמך מיפוי מוגדר מראש. |
| StoragePoliciesUsed | event.idm.read_only_udm.additional.fields.value.string_value | הערך נלקח מהשדה StoragePoliciesUsed בהודעת היומן. השדה הזה ממופה למפתח storage_policies_used. |
| לקוח משנה | event.idm.read_only_udm.additional.fields.value.string_value | הערך נלקח מהשדה Subclient בהודעת היומן. השדה הזה ממופה במפתח subclient_field. |
| סוג | event.idm.read_only_udm.security_result.detection_fields.value | הערך נלקח מהשדה Type בהודעת היומן. השדה הזה ממופה למפתח alert_type. |
| שם משתמש | event.idm.read_only_udm.principal.user.userid | הערך נלקח מהשדה Username בהודעת היומן. |
| anomaly_type | event.idm.read_only_udm.security_result.detection_fields.value | הערך שחולץ מהשדה Description באמצעות דפוסי grok. השדה הזה ממופה למפתח detected_anomaly_type. |
| שגיאות | event.idm.read_only_udm.security_result.detection_fields.value | הערך שחולץ מהשדה Description באמצעות דפוסי grok. השדה הזה ממופה במפתח errors_field. |
| file_name | event.idm.read_only_udm.security_result.detection_fields.value | הערך שחולץ מהשדה Description באמצעות דפוסי grok. השדה הזה ממופה למפתח detected_malicious_file. |
| media_agent | event.idm.read_only_udm.security_result.detection_fields.value | הערך שחולץ מהשדה Description באמצעות דפוסי grok. השדה הזה ממופה במפתח detected_media_agent. |
| no_of_files_created | event.idm.read_only_udm.security_result.detection_fields.value | הערך שחולץ מהשדה Description באמצעות דפוסי grok. השדה הזה ממופה במפתח no_of_files_created_field. |
| no_of_files_deleted | event.idm.read_only_udm.security_result.detection_fields.value | הערך שחולץ מהשדה Description באמצעות דפוסי grok. השדה הזה ממופה למפתח no_of_files_deleted_field. |
| no_of_files_modified | event.idm.read_only_udm.security_result.detection_fields.value | הערך שחולץ מהשדה Description באמצעות דפוסי grok. השדה הזה ממופה למפתח no_of_files_modified_field. |
| no_of_files_renamed | event.idm.read_only_udm.security_result.detection_fields.value | הערך שחולץ מהשדה Description באמצעות דפוסי grok. השדה הזה ממופה למפתח no_of_files_renamed_field. |
| כתובת URL | event.idm.read_only_udm.network.http.referral_url | הערך שחולץ מהשדה Description באמצעות דפוסי grok. |
| event.idm.read_only_udm.metadata.event_type | השדה הזה מוגדר ל-STATUS_UPDATE אם השדה Client קיים, אחרת הוא מוגדר ל-GENERIC_EVENT. |
|
| event.idm.read_only_udm.metadata.product_name | השדה הזה מוגדר ל-COMMVAULT. |
|
| event.idm.read_only_udm.metadata.vendor_name | השדה הזה מוגדר ל-COMMVAULT. |
|
| event.idm.read_only_udm.principal.user.user_role | השדה הזה מוגדר ל-ADMINISTRATOR אם השדה User הוא Administrator. |
|
Commcellname |
additional.fields |
מופה מיומן השינויים |
Operation |
metadata.description |
מופה מיומן השינויים |
Companyname |
principal.user.company_name |
מופה מיומן השינויים |
machine_name |
principal.hostname |
מופה מיומן השינויים |
locale |
additional.fields |
מופה מיומן השינויים |
יומן שינויים
צפייה ביומן השינויים של כלי הניתוח הזה
הבעיה עדיין לא נפתרה? קבלת תשובות מחברי הקהילה וממומחי Google SecOps.