איסוף יומני Veeam

נתמך ב:

במאמר הזה מוסבר איך להטמיע יומנים של Veeam ב-Google Security Operations באמצעות סוכן Bindplane.

‫Veeam Backup & Replication היא פלטפורמה להגנה על נתונים שמפיקה הודעות syslog למשימות גיבוי, משימות שכפול, פעולות שחזור ואירועים במערכת. הכלי לניתוח מחלץ שדות מהודעות syslog באמצעות דפוסי grok וממפה אותם למודל הנתונים המאוחד (UDM).

לפני שמתחילים

חשוב לוודא שמתקיימות הדרישות המוקדמות הבאות:

  • מופע של Google SecOps
  • ‫Windows Server 2016 ואילך, או מארח Linux עם systemd
  • קישוריות לרשת בין סוכן Bindplane לבין שרת Veeam Backup & Replication
  • אם מריצים מאחורי שרת proxy, מוודאים שיציאות חומת האש פתוחות בהתאם לדרישות של סוכן Bindplane
  • גישה מיוחדת ל-Veeam

קבלת קובץ אימות להטמעת נתונים ב-Google SecOps

  1. נכנסים למסוף Google SecOps.
  2. עוברים אל SIEM Settings > Collection Agents.
  3. מורידים את קובץ האימות להטמעת נתונים.
  4. שומרים את הקובץ בצורה מאובטחת במערכת שבה תותקן Bindplane.

איך מוצאים את מספר הלקוח ב-Google SecOps

  1. נכנסים למסוף Google SecOps.
  2. עוברים אל SIEM Settings > Profile (הגדרות SIEM > פרופיל).
  3. מעתיקים את מספר הלקוח מהקטע פרטי הארגון ושומרים אותו.

התקנת סוכן Bindplane

מתקינים את סוכן Bindplane במערכת ההפעלה Windows או Linux לפי ההוראות הבאות.

התקנת חלונות

  1. פותחים את שורת הפקודה או את PowerShell כאדמין.
  2. מריצים את הפקודה הבאה:

    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    
  3. מחכים שההתקנה תסתיים.

  4. כדי לוודא שההתקנה בוצעה, מריצים את הפקודה:

    sc query observiq-otel-collector
    

    השירות צריך להופיע עם הערך RUNNING.

התקנה ב-Linux

  1. פותחים טרמינל עם הרשאות root או sudo.
  2. מריצים את הפקודה הבאה:

    sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
    
  3. מחכים שההתקנה תסתיים.

  4. מאמתים את ההתקנה על ידי הרצת:

    sudo systemctl status observiq-otel-collector
    

    השירות צריך להופיע כפעיל (פועל).

מקורות מידע נוספים להתקנה

אפשרויות התקנה נוספות ופתרון בעיות מפורטים במדריך להתקנת סוכן Bindplane.

הגדרה של סוכן Bindplane לקליטת syslog ושליחה ל-Google SecOps

מאתרים את קובץ התצורה

  • ‫Linux:

    sudo nano /opt/observiq-otel-collector/config.yaml
    
  • ‫Windows:

    notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
    

עריכת קובץ ההגדרות

  • מחליפים את כל התוכן של config.yaml בהגדרות הבאות:

    receivers:
        udplog:
            listen_address: "0.0.0.0:514"
    
    exporters:
        chronicle/veeam:
            compression: gzip
            creds_file_path: '/etc/bindplane-agent/ingestion-auth.json'
            customer_id: '<customer_id>'
            endpoint: malachiteingestion-pa.googleapis.com
            log_type: VEEAM
            raw_log_field: body
    
    service:
        pipelines:
            logs/veeam_to_chronicle:
                receivers:
                    - udplog
                exporters:
                    - chronicle/veeam
    

פרמטרים להגדרה

מחליפים את ה-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
    • ‫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: לוחצים על קובץ > שמירה

מפעילים מחדש את סוכן Bindplane כדי להחיל את השינויים.

  • כדי להפעיל מחדש את סוכן Bindplane ב-Linux, מריצים את הפקודה הבאה:

    sudo systemctl restart observiq-otel-collector
    
    1. מוודאים שהשירות פועל:

      sudo systemctl status observiq-otel-collector
      
    2. בודקים אם יש שגיאות ביומנים:

      sudo journalctl -u observiq-otel-collector -f
      
  • כדי להפעיל מחדש את סוכן Bindplane ב-Windows, בוחרים באחת מהאפשרויות הבאות:

    • שורת הפקודה או PowerShell כאדמין:

      net stop observiq-otel-collector && net start observiq-otel-collector
      
    • מסוף השירותים:

      1. לוחצים על Win+R, מקלידים services.msc ולוחצים על Enter.
      2. מחפשים את observIQ OpenTelemetry Collector.
      3. לוחצים לחיצה ימנית ובוחרים באפשרות הפעלה מחדש.
      4. מוודאים שהשירות פועל:

        sc query observiq-otel-collector
        
      5. בודקים אם יש שגיאות ביומנים:

        type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
        

הגדרת syslog ל-Veeam

  1. נכנסים למסוף Veeam Backup & Replication.
  2. עוברים אל תפריט > אפשרויות > שילובים של SIEM.
  3. בקטע שרתי Syslog, לוחצים על הוספה.
  4. מספקים את פרטי ההגדרה הבאים:
    • שם: מזינים את כתובת ה-IP ואת מספר היציאה של סוכן Bindplane (לדוגמה, 192.168.1.1:514).
    • Transport (העברה): בוחרים באפשרות UDP או TCP, בהתאם להגדרות של סוכן Bindplane.
  5. לוחצים על אישור כדי לשמור.

טבלת מיפוי UDM

שדה ביומן מיפוי UDM היגיון
application principal.application ממופה ישירות מהשדה application שחולץ על ידי תבנית grok.
CredentialId principal.resource.attribute.labels.[] ממופה ישירות מהשדה CredentialId שחולץ על ידי המסנן kv. נוצרת תווית עם המפתח CredentialId.
date_2, time_2, year metadata.event_timestamp השדות date_2,‏ time_2 ו-year משורשרים ומנותחים באמצעות המסנן date כדי ליצור את metadata.event_timestamp.
date_2, time_2 metadata.event_timestamp השדות date_2 ו-time_2 משורשרים ומנותחים באמצעות המסנן date כדי ליצור את metadata.event_timestamp.
deviceId principal.resource.product_object_id ממופה ישירות מהשדה deviceId שחולץ על ידי המסנן kv.
description security_result.description ממופה ישירות מהשדה description שחולץ על ידי תבנית ה-grok.
error_code security_result.detection_fields.[] ממופה ישירות מהשדה error_code שחולץ על ידי תבנית ה-grok. נוצרת תווית עם המפתח error_code.
executing_feature principal.hostname, principal.asset.hostname ממופה ישירות מהשדה executing_feature שחולץ על ידי תבנית ה-grok.
host principal.hostname, principal.asset.hostname ממופה ישירות מהשדה host שחולץ על ידי תבנית ה-grok.
ManagementIP principal.ip, principal.asset.ip ממופה ישירות מהשדה ManagementIP שחולץ על ידי המסנן kv.
pid principal.process.pid ממופה ישירות מהשדה pid שחולץ על ידי תבנית ה-grok.
previousSeverity security_result.severity_details ממופה ישירות מהשדה previousSeverity שחולץ על ידי תבנית ה-grok.
prod_event_type metadata.product_event_type ממופה ישירות מהשדה prod_event_type שחולץ על ידי תבנית ה-grok.
query security_result.detection_fields.[] ממופה ישירות מהשדה query שחולץ על ידי תבנית ה-grok. נוצרת תווית עם המפתח query.
reportingAddress principal.ip, principal.asset.ip ממופה ישירות מהשדה reportingAddress שחולץ על ידי תבנית ה-grok.
severity security_result.severity ממופה מהשדה severity. הערך נקבע לפי לוגיקה מותנית שמבוססת על השדה severity (ERROR, ‏ MAJOR/WARN, ‏ INFO ממופים לערכי חומרה ספציפיים של UDM).
src_ip principal.ip, principal.asset.ip ממופה ישירות מהשדה src_ip שחולץ על ידי תבנית grok.
summary security_result.summary ממופה ישירות מהשדה summary שחולץ על ידי תבנית grok.
target_ip target.ip, target.asset.ip ממופה ישירות מהשדה target_ip שחולץ על ידי תבנית ה-grok.
thread_id security_result.detection_fields.[] ממופה ישירות מהשדה thread_id שחולץ על ידי תבנית ה-grok. נוצרת תווית עם המפתח thread_id.
(לא רלוונטי) event_type ההודעה נבחרת לפי הלוגיקה במנתח התוכן. אם יש נתוני MID גם ב-principal וגם ב-target, הערך הוא NETWORK_UNCATEGORIZED. אם רק ל-principal יש נתוני MID, הערך הוא STATUS_UPDATE. אחרת, הערך הוא GENERIC_EVENT.
(לא רלוונטי) metadata.event_type הועתק מהשדה event_type שנוצר באופן פנימי.
(לא רלוונטי) metadata.vendor_name הוצמד ל-VEEAM.
(לא רלוונטי) metadata.product_name מקודד בתוך הקוד ל-"Veeam".
(לא רלוונטי) event.timestamp חותמת הזמן של האירוע נלקחת מהשדה collection_time של רשומת היומן.
enterpriseId additional.fields מופה מיומן השינויים
recipient_emailid additional.fields מופה מיומן השינויים
description metadata.description מופה מיומן השינויים
version additional.fields מופה מיומן השינויים
categoryId additional.fields מופה מיומן השינויים
instanceId additional.fields מופה מיומן השינויים
VbrVersion metadata.product_version מופה מיומן השינויים

יומן שינויים

צפייה ביומן השינויים של כלי הניתוח הזה

הבעיה עדיין לא נפתרה? קבלת תשובות מחברי הקהילה וממומחי Google SecOps.