איסוף יומנים של IBM CICS
במאמר הזה מוסבר איך להטמיע יומני IBM CICS ב-Google Security Operations באמצעות סוכן Bindplane.
IBM CICS (מערכת לבקרת פרטי לקוחות) היא פלטפורמה לעיבוד עסקאות עבור אפליקציות למחשבים מרכזיים. הוא יוצר יומני ביקורת לביצוע עסקאות, לגישה למשאבים, להפרות אבטחה ולאירועים במערכת. היומנים הם בפורמט LEEF וכוללים את זהות המשתמש, פרטי העסקה ומאפייני רשת המקור.
לפני שמתחילים
חשוב לוודא שמתקיימות הדרישות המוקדמות הבאות:
- מופע של Google SecOps
- Windows Server 2016 ואילך, או מארח Linux עם
systemd - קישוריות לרשת בין סוכן Bindplane לבין המארח של מעביר היומנים של CICS
- אם מריצים מאחורי שרת proxy, מוודאים שיציאות חומת האש פתוחות בהתאם לדרישות של סוכן Bindplane
- גישת אדמין לאזור IBM CICS או למערכת המרכזית עם הרשאה להגדיר הקלטה של SMF וייצוא של יומנים
קבלת קובץ אימות להטמעת נתונים ב-Google SecOps
- נכנסים למסוף Google SecOps.
- עוברים אל SIEM Settings > Collection Agents.
- מורידים את קובץ האימות להטמעת נתונים.
שומרים את הקובץ בצורה מאובטחת במערכת שבה תותקן 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 /opt/observiq-otel-collector/config.yamlWindows:
notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
עריכת קובץ ההגדרות
מחליפים את כל התוכן של
config.yamlבהגדרה הבאה:receivers: tcplog: listen_address: "0.0.0.0:514" exporters: chronicle/ibm_cics: compression: gzip creds_file_path: '/etc/bindplane-agent/ingestion-auth.json' customer_id: '<customer_id>' endpoint: malachiteingestion-pa.googleapis.com log_type: IBM_CICS raw_log_field: body ingestion_labels: env: production service: pipelines: logs/cics_to_chronicle: receivers: - tcplog exporters: - chronicle/ibm_cics
פרמטרים להגדרה
מחליפים את ה-placeholders הבאים:
הגדרת מקלט:
-
tcplog: סוג הנמען על סמך הפרוטוקול:udplogעבור UDP syslog-
tcplogfor TCP syslog
-
0.0.0.0: כתובת ה-IP להאזנה:-
0.0.0.0כדי להאזין בכל הממשקים (מומלץ) - כתובת IP ספציפית להאזנה בממשק אחד
-
-
514: מספר היציאה להאזנה (לדוגמה,514, 1514, 6514)
-
הגדרת כלי הייצוא:
-
ibm_cics: שם תיאורי של הכלי לייצוא -
creds_file_path: הנתיב המלא לקובץ האימות להטמעת נתונים:- Linux:
/etc/bindplane-agent/ingestion-auth.json - Windows:
C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json
- Linux:
-
<customer_id>: מספר הלקוח מהשלב הקודם -
endpoint: כתובת ה-URL של נקודת הקצה האזורית:- ארה"ב:
malachiteingestion-pa.googleapis.com - אירופה:
europe-malachiteingestion-pa.googleapis.com - אסיה:
asia-southeast1-malachiteingestion-pa.googleapis.com - רשימה מלאה מופיעה במאמר בנושא נקודות קצה אזוריות.
- ארה"ב:
-
IBM_CICS: סוג היומן בדיוק כמו שהוא מופיע ב-Chronicle -
ingestion_labels: תוויות אופציונליות בפורמט YAML (לדוגמה,env: production)
-
הגדרת צינור עיבוד נתונים:
-
cics_to_chronicle: שם תיאורי של צינור העיבוד
-
שמירת קובץ ההגדרות
- אחרי שמסיימים לערוך, שומרים את הקובץ:
- 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 של IBM CICS
IBM CICS כותב נתוני ביקורת ונתוני עסקאות לרשומות SMF (System Management Facilities) במחשב המרכזי. כדי להעביר את היומנים האלה לסוכן Bindplane באמצעות syslog, צריך להשתמש בתוכנה להעברת syslog במארח של תוכנת ביניים.
- מזהים את סוגי הרשומות ב-SMF שמכילים נתוני CICS (בדרך כלל SMF type 110).
- כדי לחלץ את הרשומות הרלוונטיות, אפשר להשתמש בכלי עזר למחשב מרכזי כמו DFHSTUP (תוכנית כלי עזר לסטטיסטיקות של CICS) או תוכניות להעברת נתונים של SMF.
- ממירים את רשומות ה-SMF שחולצו לפורמט LEEF באמצעות IBM CICS Performance Analyzer, סקריפט REXX מותאם אישית או פתרון ETL של צד שלישי.
- מגדירים את מעביר ה-syslog במארח של תוכנת הביניים כדי לשלוח את היומנים שהומרו לסוכן Bindplane:
- שרת Syslog: מזינים את כתובת ה-IP של המארח של סוכן Bindplane (לדוגמה,
192.168.1.100). - יציאה: מזינים
514(חייב להיות זהה ליציאת המקלט של סוכן Bindplane). - פרוטוקול: בוחרים באפשרות TCP (מומלץ למסירה מהימנה של יומני רישום של מחשבי מיינפריים).
- פורמט: מוודאים שמשתמשים בפורמט LEEF.
- שרת Syslog: מזינים את כתובת ה-IP של המארח של סוכן Bindplane (לדוגמה,
כדי לוודא שהודעות syslog מתקבלות, בודקים את היומנים של סוכן Bindplane.
טבלת מיפוי UDM
| שדה ביומן | מיפוי UDM | היגיון |
|---|---|---|
kv.sum |
metadata.description |
שם שונה/מיפוי |
kv.devTime |
metadata.event_timestamp |
ניתוח הכתובות שברשימה: yyyy-MM-ddTHH:mm:ss.SSSZ |
event_type |
metadata.product_event_type |
שם שונה/מיפוי |
version |
metadata.product_version |
שם שונה/מיפוי |
kv.terminal |
principal.hostname |
מיפוי ישיר |
kv.src |
principal.ip |
ממוזג |
firstname |
principal.user.first_name |
שם שונה/מיפוי |
lastname |
principal.user.last_name |
שם שונה/מיפוי |
kv.name |
principal.user.user_display_name |
שם שונה/מיפוי |
kv.usrName |
principal.user.userid |
שם שונה/מיפוי |
kv.appl |
target.application |
שם שונה/מיפוי |
kv.tran |
target.process.product_specific_process_id |
מיפוי ישיר |
| לא רלוונטי | metadata.event_type |
קבוע: PROCESS_UNCATEGORIZED |
| לא רלוונטי | metadata.product_name |
קבוע: CICS |
| לא רלוונטי | metadata.vendor_name |
קבוע: IBM |
הבעיה עדיין לא נפתרה? קבלת תשובות מחברי הקהילה וממומחי Google SecOps.