איסוף יומני Preempt

נתמך ב:

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

‫Preempt Security היא פלטפורמה לזיהוי איומים על זהויות ולתגובה לאיומים כאלה. הפלטפורמה יוצרת התרעות אבטחה לגבי איומים ב-Active Directory, כולל התנהגות חריגה של אימות, הרחבת הרשאות ותנועה לרוחב. היא מייצאת יומנים בפורמט CEF (Common Event Format) דרך syslog.

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

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

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

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

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

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

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

התקנת סוכן Bindplane

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

התקנת Windows

  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:
        tcplog:
            listen_address: "0.0.0.0:514"
    
    exporters:
        chronicle/preempt:
            compression: gzip
            creds_file_path: '<CREDS_FILE_PATH>'
            customer_id: '<CUSTOMER_ID>'
            endpoint: <REGION_ENDPOINT>
            log_type: PREEMPT
            raw_log_field: body
            ingestion_labels:
                env: production
    
    service:
        pipelines:
            logs/preempt_to_chronicle:
                receivers:
                    - tcplog
                exporters:
                    - chronicle/preempt
    

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

מחליפים את ה-placeholders הבאים:

  • הגדרת מקלט:

    • tcplog: מקבל syslog דרך TCP. משתמשים ב-udplog אם פריסת Preempt מעבירה נתונים באמצעות UDP.
    • 0.0.0.0:514: האזנה בכל הממשקים ביציאה 514. משנים את היציאה אם צריך (לדוגמה, 1514 ל-Linux שאינו 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.
    • <REGION_ENDPOINT>: Regional 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 עם עדיפות

  1. נכנסים למסוף הניהול של Preempt.
  2. עוברים אל הגדרות > שילוב SIEM.
  3. מפעילים העברה של syslog.
  4. מספקים את פרטי ההגדרה הבאים:
    • פרוטוקול: בוחרים באפשרות TCP (חייב להיות זהה להגדרת המקלט של סוכן Bindplane).
    • פורמט: בוחרים באפשרות CEF.
    • כתובת שרת Syslog: מזינים את כתובת ה-IP של מארח הסוכן Bindplane (לדוגמה, 192.168.1.100).
    • יציאה: מזינים 514 (חייב להיות זהה ליציאת המקלט של סוכן Bindplane).
  5. בוחרים את סוגי האירועים להעברה:
    • התראות
    • הפרות מדיניות
    • אירועי אימות חריגים
  6. לוחצים על שמירה או על אישור.
  7. כדי לוודא שהיומנים נשלחים, בודקים את היומנים של סוכן Bindplane.

טבלת מיפוי UDM

שדה היומן מיפוי UDM לוגיקה
event_id,‏ _target metadata.event_type הערך הוא SCAN_NETWORK אם _target לא ריק ו-event_id הוא SUSPICIOUS_DOMAIN_ACTIVITY;‏ USER_UNCATEGORIZED אם _target לא ריק ו-event_id הוא אחד מהערכים UNUSUAL_ENDPOINT_ACCESS,‏ UNUSUAL_ACTIVITY או UNUSUAL_ENDPOINT_USE;‏ NETWORK_UNCATEGORIZED אם event_id הוא APPLIANCE_CONNECTIVITY_FAILURE; אחרת, הערך הוא GENERIC_EVENT.
event_id metadata.product_event_type הערך הועתק ישירות
גרסה metadata.product_version הערך הועתק ישירות
cs1 metadata.url_back_to_product הערך מ-cs1 אם cs1Label == "incidentLink"
network.ip_protocol הגדרה כ-TCP אם event_id == "APPLIANCE_CONNECTIVITY_FAILURE"
dhost, host principal.hostname ערך מ-dhost אם dhost לא ריק ולא כתובת IP, אחרת מ-host אם host לא ריק ולא כתובת IP
dhost, host principal.ip ערך מ-dhost אם dhost הוא IP, אחרת מ-host אם host הוא IP
description, event_name, act, cs5, cs2, externalId, cn2 security_result.description אם התיאור לא ריק, הערך הוא מהתיאור. אחרת, הערך הוא שרשור של event_name,‏ act,‏ status מ-cs5 אם cs5Label == "status" או מ-cs2 אם cs2Label == "status",‏ IncidentID מ-externalId,‏ CompromisedEntities מ-cn2
cs1 security_result.rule_name הערך מ-cs1 אם cs1Label == "ruleName"
severity security_result.severity הומר ממספר שלם: HIGH אם > 7, ‏ MEDIUM אם > 4, ‏ LOW אם > 2, ‏ INFORMATIONAL אם > 0, אחרת UNKNOWN_SEVERITY; או מוגדר ל-LOW אם cat == "Policy Log" ו-severity == "INFO"
severity security_result.severity_details הערך הועתק ישירות
act, event_name security_result.summary הערך מ-act אם הוא לא ריק, אחרת מ-event_name
destinationServiceName target.application הערך מ-destinationServiceName אם event_id == "APPLIANCE_CONNECTIVITY_FAILURE"
שוש target.hostname הערך הועתק ישירות
src, dst target.ip ערך מ-src, או מ-dst אם event_id == "APPLIANCE_CONNECTIVITY_FAILURE"
suser target.user.userid הערך הועתק ישירות
ספק metadata.vendor_name הערך מהספק אם הוא לא ריק, אחרת הערך הוא PreemptSecurity
מוצר metadata.product_name הערך מהמוצר אם הוא לא ריק, אחרת הערך הוא PBF

שנה רישום

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

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