איסוף יומני ביקורת של Entrust nShield HSM
גרסת כלי הניתוח: 1.0
במאמר הזה מוסבר איך להטמיע יומני ביקורת של Entrust nShield HSM ב-Google Security Operations באמצעות סוכן Bindplane.
מנתח הנתונים מחלץ שדות מיומנים בפורמט syslog של Entrust nShield HSM. הוא משתמש ב-grok או ב-kv כדי לנתח את הודעת היומן, ואז ממפה את הערכים האלה למודל הנתונים המאוחד (UDM). הוא גם מגדיר ערכי מטא-נתונים שמוגדרים כברירת מחדל למקור האירוע ולסוג האירוע.
לפני שמתחילים
חשוב לוודא שמתקיימות הדרישות המוקדמות הבאות:
- מופע של Google SecOps
- מארח עם Windows 2016 ואילך או Linux עם
systemd - אם מריצים את הסוכן מאחורי שרת proxy, מוודאים שיציאות חומת האש פתוחות בהתאם לדרישות של סוכן Bindplane
- גישה עם הרשאות למסוף הניהול של Entrust nShield HSM או ל-Security World Software
- Security World מאותחל עם יכולת רישום ביומן ביקורת
קבלת פרטי כניסה ל-Google SecOps בשביל סוכן Bindplane
כדי לאמת את סוכן Bindplane ב-Google SecOps, בוחרים באחת מהשיטות הבאות:
- פריסות חדשות: משתמשים ב-Chronicle API (אפשרות 1).
- פריסות מדור קודם: אפשר להמשיך להשתמש בקובץ האימות של ה-API להעברת נתונים (אפשרות 2) עד שה-API להעברת נתונים יפסיק לפעול ב-20 ביולי 2027.
אפשרות 1: יצירת חשבון שירות ל-Chronicle API (מומלץ)
- נכנסים למסוףGoogle Cloud ובוחרים את הפרויקט ב- Google Cloud שמקושר למכונה של Google SecOps.
- נכנסים לדף IAM & Admin > Service Accounts.
- לוחצים על Create service account.
- מזינים את פרטי ההגדרה הבאים:
- שם חשבון השירות: מזינים שם לחשבון (לדוגמה,
bindplane-ingest). - Service account description: מזינים תיאור (לדוגמה,
Bindplane agent log ingestion).
- שם חשבון השירות: מזינים שם לחשבון (לדוגמה,
- לוחצים על Create and continue.
- בקטע Grant this service account access to project לוחצים על Select a role ובוחרים באפשרות Chronicle Editor.
- לוחצים על המשך ואז על סיום.
- לוחצים על חשבון השירות שיצרתם ועוברים לכרטיסייה Keys.
- לוחצים על Add key > Create new key.
- בוחרים באפשרות JSON ולוחצים על Create. קובץ המפתח יורד למחשב.
- שומרים את קובץ המפתח בתור
ingestion-auth.jsonבספריית ה-collector של Bindplane (/opt/observiq-otel-collector/ingestion-auth.jsonב-Linux אוC:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.jsonב-Windows), או מעדכנים אתcreds_file_pathב-config.yamlכך שיתאים לנתיב שבו שמרתם אותו. - עוברים אל IAM & Admin > Settings (ניהול הרשאות גישה ואדמין > הגדרות) ומעתיקים את מספר הפרויקט. תצטרכו אותו כדי להגדיר את הייצוא.
אפשרות 2: הורדת קובץ אימות להטמעת נתונים (גרסה מדור קודם)
- נכנסים למסוף Google SecOps.
- עוברים אל SIEM Settings > Collection Agents (הגדרות SIEM > סוכני איסוף).
- מורידים את קובץ האימות להטמעת נתונים.
- שומרים את הקובץ בצורה מאובטחת במערכת שבה יותקן הסוכן של Bindplane.
איך מקבלים את מספר הלקוח ב-Google SecOps
- נכנסים למסוף Google SecOps.
- עוברים אל SIEM Settings (הגדרות SIEM) > Profile (פרופיל).
- מעתיקים את מספר הלקוח מהקטע פרטי הארגון ושומרים אותו.
התקנת הסוכן של Bindplane
מתקינים את הסוכן של Bindplane במערכת ההפעלה Windows או Linux לפי ההוראות הבאות.
התקנת חלונות
- פותחים את שורת הפקודה או את PowerShell כאדמין.
מריצים את הפקודה הבאה:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
התקנה ב-Linux
- פותחים טרמינל עם הרשאות root או sudo.
מריצים את הפקודה הבאה:
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
מקורות מידע נוספים להתקנה
לאפשרויות התקנה נוספות, קראו את מדריך ההתקנה של סוכן Bindplane.
הגדרה של סוכן Bindplane להטמעה של Syslog ושליחה אל Google SecOps
- ניגשים לקובץ התצורה:
- מאתרים את הקובץ
config.yaml. בדרך כלל, הוא נמצא בספרייה/opt/observiq-otel-collector/ב-Linux או בספריית ההתקנה ב-Windows. - פותחים את הקובץ באמצעות כלי לעריכת טקסט (לדוגמה,
nano,viאו Notepad).
- מאתרים את הקובץ
עורכים את הקובץ
config.yamlבאופן הבא:receivers: udplog: # nShield HSM only supports UDP for audit logs 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 # Adjust the path to the credentials file you downloaded in Step 1 creds_file_path: '/path/to/ingestion-authentication-file.json' # Replace with your actual customer ID from Step 2 customer_id: YOUR_CUSTOMER_ID endpoint: chronicle.googleapis.com # Use ENTRUST_HSM as the log type log_type: 'ENTRUST_HSM' raw_log_field: body ingestion_labels: service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - udplog exporters: - chronicle/chronicle_w_labels- מחליפים את היציאה ואת כתובת ה-IP לפי הצורך בתשתית שלכם.
- מחליפים את
<LOCATION>באזור של מכונת Google SecOps (לדוגמה,us,europeאוasia-southeast1). המייצא מוסיף את הערך הזה בתחילתchronicle.googleapis.com. - מחליפים את
<PROJECT_NUMBER>במספר הפרויקט מתוך IAM & Admin > Settings. - מחליפים את
YOUR_CUSTOMER_IDבמספר הלקוח בפועל. - מעדכנים את
/path/to/ingestion-authentication-file.jsonלנתיב הקובץ שבו נשמר קובץ המפתח של חשבון השירות (אפשרות 1) בשלב 1.
מייצא API להטמעה מדור קודם
אם אתם משתמשים בקובץ האימות להטמעת נתונים מאפשרות 2, החליפו את הבלוק
exportersבקוד הבא. מגדירים אתcreds_file_pathלנתיב של קובץ האימות להטמעת נתונים. אם המכונה נמצאת מחוץ לארה"ב, מחליפים אתmalachiteingestion-pa.googleapis.comבנקודת הקצה האזורית (לדוגמה,europe-malachiteingestion-pa.googleapis.com).exporters: chronicle/chronicle_w_labels: compression: gzip # Adjust the path to the credentials file you downloaded in Step 1 creds_file_path: '/path/to/ingestion-authentication-file.json' # Replace with your actual customer ID from Step 2 customer_id: YOUR_CUSTOMER_ID endpoint: malachiteingestion-pa.googleapis.com # Use ENTRUST_HSM as the log type log_type: 'ENTRUST_HSM' raw_log_field: body ingestion_labels:
מפעילים מחדש את סוכן Bindplane כדי להחיל את השינויים.
כדי להפעיל מחדש את סוכן Bindplane ב-Linux, מריצים את הפקודה הבאה:
sudo systemctl restart observiq-otel-collectorכדי להפעיל מחדש את סוכן Bindplane ב-Windows, אפשר להשתמש במסוף Services או להזין את הפקודה הבאה:
net stop observiq-otel-collector && net start observiq-otel-collector
הגדרת העברת Syslog ב-Entrust nShield HSM
שיטת ההגדרה תלויה במודל הפריסה של nShield HSM. צריך להפעיל את רישום הביקורת ביומן כשיוצרים Security World או כשמכניסים HSM ל-Security World קיים.
אפשרות 1: הגדרה באמצעות כלי השירות config-auditlogging (מומלץ)
במחשב הלקוח שבו מותקנת התוכנה Security World, מריצים את הפקודה הבאה:
config-auditlogging --server <BINDPLANE_IP> --port 514 --enable-syslogמחליפים את
<BINDPLANE_IP>בכתובת ה-IP של המארח של סוכן Bindplane.- השינויים בהגדרות נכתבים בקובץ התצורה של השרת הפיזי.
מפעילים מחדש את ה-hardserver כדי להחיל את השינויים:
- Linux:
/opt/nfast/sbin/init.d-ncipher restart - Windows:
net stop "nfast server" && net start "nfast server"
- Linux:
אפשרות 2: הגדרה באמצעות קובץ תצורה של שרת חומרה
- עורכים את קובץ ההגדרות של hardserver:
- Linux:
/opt/nfast/kmdata/config/config - Windows:
%NFAST_KMDATA%\config\config
- Linux:
מוסיפים או משנים את הערכים הבאים בקובץ התצורה:
auditlog_addr=<BINDPLANE_IP> auditlog_port=514*מחליפים את
<BINDPLANE_IP>בכתובת ה-IP של המארח של סוכן Bindplane.שומרים את קובץ התצורה.
מפעילים מחדש את השרת כדי שהשינויים ייכנסו לתוקף:
- Linux:
/opt/nfast/sbin/init.d-ncipher restart - Windows:
net stop "nfast server" && net start "nfast server"
- Linux:
אפשרות 3: הגדרה של HSM שמחוברים לרשת (nShield Connect)
ב-HSM שמחוברים לרשת, אפשר לשלוח את ההגדרות מרחוק:
- מוודאים שהאפשרות "שליחת הגדרות אישיות" מופעלת ב-RFS (מערכת קבצים מרחוק).
מעתיקים את קובץ התצורה של ה-HSM:
cp /opt/nfast/kmdata/hsm-ESN/config/config /opt/nfast/kmdata/hsm-ESN/config/config.newעורכים את
config.newכדי להוסיף את הגדרת הרישום ביומן הביקורת:[audit_logging] auditlog_addr=<BINDPLANE_IP> auditlog_port=514מעבירים את ההגדרה ל-HSM:
cfg-pushnethsm --address=<HSM_IP> /opt/nfast/kmdata/hsm-ESN/config/config.new- מחליפים את
<HSM_IP>בכתובת ה-IP של ה-HSM של nShield Connect.
- מחליפים את
טבלת מיפוי UDM
| שדה ביומן | מיפוי UDM | היגיון |
|---|---|---|
desc |
metadata.description |
מיפוי ישיר |
ts |
metadata.event_timestamp |
נותח בתור MMM d HH:mm:ss |
has_principal |
metadata.event_type |
מיפוי: true → STATUS_UPDATE |
has_user |
metadata.event_type |
מיפוי: true → USER_UNCATEGORIZED |
product_event |
metadata.product_event_type |
מיפוי ישיר |
session_id |
network.session_id |
מיפוי ישיר |
application |
principal.application |
מיפוי ישיר |
ip |
principal.asset.ip |
ממוזג |
rhost |
principal.asset.ip |
ממוזג |
ip |
principal.ip |
ממוזג |
rhost |
principal.ip |
ממוזג |
port |
principal.port |
מיפוי ישיר |
user |
principal.user.userid |
מיפוי ישיר |
| לא רלוונטי | metadata.event_type |
קבוע: USER_UNCATEGORIZED |
| לא רלוונטי | metadata.product_name |
קבוע: Entrust nShield HSM |
| לא רלוונטי | metadata.vendor_name |
קבוע: ENTRUST HSM |
יומן שינויים
צפייה ביומן השינויים של כלי הניתוח הזה
הבעיה עדיין לא נפתרה? קבלת תשובות מחברי הקהילה וממומחי Google SecOps.