איסוף יומנים של RSA Authentication Manager

נתמך ב:

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

‫RSA Authentication Manager (שנקרא עכשיו RSA SecurID) היא פלטפורמת אימות רב-שלבי שמספקת אימות דו-שלבי באמצעות טוקנים, התראות ונתונים ביומטריים. הוא מנהל את זהויות המשתמשים ואת מדיניות האימות, ויוצר יומני ביקורת של ניסיונות אימות בכל הארגון. הכלי לניתוח מחלץ שדות מיומנים בפורמט CSV של RSA Authentication Manager. הוא משתמש ב-grok כדי לנתח את הודעת היומן, ואז ממפה את הערכים האלה ל-Unified Data Model ‏ (UDM). הוא גם מגדיר ערכי מטא-נתונים שמוגדרים כברירת מחדל למקור האירוע ולסוג האירוע.

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

חשוב לוודא שיש לכם את הדברים הבאים:

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

קבלת פרטי כניסה ל-Google SecOps בשביל סוכן Bindplane

כדי לאמת את סוכן Bindplane ב-Google SecOps, בוחרים אחת מהשיטות הבאות:

  • פריסות חדשות: משתמשים ב-Chronicle API (אפשרות 1).
  • פריסות קודמות: ממשיכים להשתמש בקובץ האימות להטמעת נתונים (אפשרות 2) עד שה-Ingestion API יופסק ב-20 ביולי 2027.
  1. נכנסים למסוףGoogle Cloud ובוחרים את הפרויקט ב- Google Cloud שמקושר למכונה של Google SecOps.
  2. נכנסים לדף IAM & Admin > Service Accounts.
  3. לוחצים על Create service account.
  4. מזינים את פרטי ההגדרה הבאים:
    • שם חשבון השירות: מזינים שם לחשבון (לדוגמה, bindplane-ingest).
    • Service account description: מזינים תיאור (לדוגמה, Bindplane agent log ingestion).
  5. לוחצים על Create and continue.
  6. בקטע Grant this service account access to project לוחצים על Select a role ובוחרים באפשרות Chronicle Editor.
  7. לוחצים על המשך ואז על סיום.
  8. לוחצים על חשבון השירות שיצרתם ועוברים לכרטיסייה Keys.
  9. לוחצים על Add key > Create new key.
  10. בוחרים באפשרות JSON ולוחצים על Create. קובץ המפתח יורד למחשב.
  11. שומרים את קובץ המפתח בשם 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 כך שיתאים לנתיב שבו שומרים את הקובץ.
  12. עוברים אל IAM & Admin > Settings (ניהול הרשאות גישה ואדמין > הגדרות) ומעתיקים את מספר הפרויקט. תצטרכו אותו כדי להגדיר את כלי הייצוא.

אפשרות 2: הורדה של קובץ האימות להטמעת נתונים (מדור קודם)

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

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

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

התקנת הסוכן של Bindplane

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

התקנה ב-Windows

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

    msiexec /i "[https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi](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](https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh))" install_unix.sh
    
  3. מחכים שההתקנה תסתיים.

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

    sudo systemctl status observiq-otel-collector
    

השירות אמור להופיע כ-active (running).

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

לאפשרויות התקנה נוספות ולפתרון בעיות, קראו את מדריך ההתקנה של סוכן 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/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
        creds_file_path: '/path/to/ingestion-authentication-file.json'
        customer_id: 'YOUR_CUSTOMER_ID'
        endpoint: chronicle.googleapis.com
        log_type: 'RSA_AUTH_MANAGER'
        raw_log_field: body
        ingestion_labels:
    
    service:
      pipelines:
        logs/source0__chronicle_w_labels-0:
          receivers:
            - udplog
          exporters:
            - chronicle/chronicle_w_labels
    

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

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

  • הגדרת המקלט:

    • ‫udplog: משתמשים ב-udplog עבור UDP syslog או ב-tcplog עבור TCP syslog
    • ‫0.0.0.0: כתובת ה-IP להאזנה (0.0.0.0 להאזנה בכל הממשקים)
    • ‫514: מספר היציאה להאזנה (יציאת syslog רגילה)
  • הגדרת כלי הייצוא:

    • ‫creds_file_path: הנתיב המלא לקובץ המפתח בפורמט JSON של חשבון השירות (אפשרות 1):

      • Linux: /opt/observiq-otel-collector/ingestion-auth.json
      • Windows: C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json
    • ‫YOUR_CUSTOMER_ID: מספר הלקוח מהקטע 'איך מאתרים את מספר הלקוח'

    • ‫location: מחליפים את <LOCATION> באזור של מופע Google SecOps (לדוגמה, us,‏ europe או asia-southeast1). ערך זה מתווסף לתחילית chronicle.googleapis.com של הכלי לייצוא. לרשימה המלאה, ראו נקודות קצה אזוריות.

    • ‫project: מחליפים את <PROJECT_NUMBER> במספר הפרויקט שמופיע בקטע IAM & Admin > Settings.

    • ‫endpoint: משאירים את הערך chronicle.googleapis.com.

    • ‫log_type: סוג היומן בדיוק כמו שהוא מופיע ב-Chronicle‏ (RSA_AUTH_MANAGER)

כלי לייצוא נתונים מ-Legacy ingestion API

  • אם משתמשים בקובץ האימות של ההעלאה מאפשרות 2, מחליפים את הבלוק exporters בבלוק הבא. מגדירים את creds_file_path לנתיב של קובץ האימות להטמעת נתונים. אם המכונה נמצאת מחוץ לארה"ב, מחליפים את malachiteingestion-pa.googleapis.com בנקודת הקצה האזורית (לדוגמה, europe-malachiteingestion-pa.googleapis.com).

    exporters:
      chronicle/chronicle_w_labels:
        compression: gzip
        creds_file_path: '/path/to/ingestion-authentication-file.json'
        customer_id: 'YOUR_CUSTOMER_ID'
        endpoint: malachiteingestion-pa.googleapis.com
        log_type: 'RSA_AUTH_MANAGER'
        raw_log_field: body
        ingestion_labels:
    

שמירת קובץ התצורה

  • אחרי שמסיימים לערוך, שומרים את הקובץ:
    • Linux: מקישים על Ctrl+O, אחר כך על Enter ואז על Ctrl+X
    • Windows: לוחצים על קובץ > שמירה

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

כדי להפעיל מחדש את סוכן Bindplane ב-Linux:

  1. מריצים את הפקודה הבאה:

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

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

    sudo journalctl -u observiq-otel-collector -f
    

כדי להפעיל מחדש את הסוכן של Bindplane ב-Windows:

  1. בוחרים אחת מהאפשרויות האלה:

    • שורת הפקודה או PowerShell כאדמין:
    net stop observiq-otel-collector && net start observiq-otel-collector
    
    • מסוף השירותים:
      1. לוחצים על Win+R, מקלידים services.msc ולוחצים על Enter.
      2. מאתרים את observIQ OpenTelemetry Collector.
      3. לוחצים לחיצה ימנית ובוחרים באפשרות הפעלה מחדש.
  2. מוודאים שהשירות פועל:

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

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

הגדרת העברת Syslog ב-RSA Authentication Manager

  1. נכנסים למסוף האבטחה של RSA SecurID.
  2. עוברים אל הגדרה > הגדרות מערכת > רישום ביומן.
  3. בקטע Remote Logging, לוחצים על Add Remote Log Server.

  4. מספקים את פרטי ההגדרה הבאים:

    • ‫Hostname/IP Address: מזינים את כתובת ה-IP של המארח של סוכן Bindplane.
    • יציאה: מזינים 514.
    • פרוטוקול: בוחרים באפשרות UDP.
  5. בקטע Log Level (רמת היומן), מגדירים את רמות הרישום ביומן:

    • יומן פעילות המערכת: בוחרים באפשרות מידע ומעלה.
    • יומן פעילות של אדמין: בוחרים באפשרות מידע או ברמה גבוהה יותר.
    • יומן אימות בזמן ריצה: בוחרים באפשרות מידע או ברמה גבוהה יותר.
  6. בקטע Log Format:

    • פורמט: בוחרים באפשרות CSV (ערכים מופרדים בפסיקים).
  7. לוחצים על Save.

  8. לחלופין, אפשר להגדיר באמצעות CLI במכשיר RSA:

    manage-logging --set-remote-logging --host BINDPLANE_IP --port 514 --protocol UDP
    

    מחליפים את BINDPLANE_IP בכתובת ה-IP של המארח של סוכן Bindplane.

  9. כדי לוודא שהודעות syslog נשלחות, בודקים את היומנים של סוכן Bindplane.

טבלת מיפוי UDM

שדה ביומן מיפוי UDM היגיון
clientip principal.asset.ip הערך של column8 מהיומן הגולמי.
clientip principal.ip הערך של column8 מיומן הגולמי.
דףה 1 metadata.event_timestamp.seconds הערך מנותח משדה הזמן (עמודה 1) ביומן הגולמי, באמצעות הפורמטים yyyy-MM-dd HH:mm:ss ו-yyyy-MM-dd HH: mm:ss.
column12 security_result.action מיפוי על סמך השדה operation_status (עמודה 12). הערכים SUCCESS ו-ACCEPT ממופים ל-ALLOW, הערכים FAIL,‏ REJECT,‏ DROP,‏ DENY ו-NOT_ALLOWED ממופים ל-BLOCK, וערכים אחרים ממופים ל-UNKNOWN_ACTION.
column18 principal.user.userid הערך של column18 מהיומן הגולמי.
column19 principal.user.first_name הערך של column19 מהיומן הגולמי.
column20 principal.user.last_name הערך של column20 מיומן הגולמי.
column25 principal.hostname הערך של column25 מהיומן הגולמי.
column26 principal.asset.hostname הערך של column26 מיומן הגולמי.
column27 metadata.product_name הערך של column27 מהיומן הגולמי.
דףה 3 target.administrative_domain הערך של column3 מיומן הגולמי.
column32 principal.user.group_identifiers הערך של column32 מיומן הגולמי.
column5 security_result.severity ממופה על סמך שדה החומרה (עמודה 5). הערכים "INFO" ו-"INFORMATIONAL" ממופים ל-INFORMATIONAL, הערכים "WARN" ו-"WARNING" ממופים ל-WARNING, הערכים "ERROR",‏ "CRITICAL",‏ "FATAL",‏ "SEVERE",‏ "EMERGENCY" ו-"ALERT" ממופים ל-ERROR, הערכים "NOTICE",‏ "DEBUG" ו-"TRACE" ממופים ל-DEBUG, וערכים אחרים ממופים ל-UNKNOWN_SEVERITY.
column8 target.asset.ip הערך של column8 מיומן הגולמי.
column8 target.ip הערך של column8 מיומן הגולמי.
event_name security_result.rule_name הערך של column10 מהיומן הגולמי.
host_name intermediary.hostname הערך חולץ מ החלק ביומן הגולמי באמצעות תבניות grok.
process_data principal.process.command_line חולץ מהחלק של היומן הגולמי באמצעות תבניות grok.
סיכום security_result.summary הערך של column13 מהיומן הגולמי.
time_stamp metadata.event_timestamp.seconds חולץ מהחלק של היומן הגולמי באמצעות תבניות grok. אם לא נמצאה חותמת זמן, היא נשלפת משדה חותמת הזמן ביומן הגולמי.

יומן שינויים

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

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