איסוף יומני AIDE (Advanced Intrusion Detection Environment)
גרסת המנתח: 1.0
במסמך הזה מוסבר איך להטמיע יומנים של AIDE (Advanced Intrusion Detection Environment) ב-Google Security Operations באמצעות Bindplane. AIDE הוא כלי למעקב אחרי תקינות קבצים שמזהה שינויים בקבצים במערכות Linux/Unix.
לפני שמתחילים
חשוב לוודא שמתקיימות הדרישות המוקדמות הבאות:
- מופע של Google SecOps
- מארח Linux עם systemd שמריץ את AIDE בגרסה 0.18 ואילך (לתמיכה בפורמט JSON)
- אם השרת פועל מאחורי שרת proxy, צריך לוודא שהיציאות של חומת האש פתוחות בהתאם לדרישות של סוכן Bindplane.
- גישת אדמין לקובצי ההגדרות של AIDE
קבלת פרטי כניסה ל-Google SecOps בשביל סוכן Bindplane
כדי לאמת את סוכן Bindplane ב-Google SecOps, בוחרים באחת מהשיטות הבאות:
- פריסות חדשות: משתמשים ב-Chronicle API (אפשרות 1).
- פריסות קודמות: ממשיכים להשתמש בקובץ האימות להטמעת נתונים (אפשרות 2) עד שה-Ingestion API יופסק ב-20 ביולי 2027.
אפשרות 1: יצירת חשבון שירות ל-Chronicle API (מומלץ)
- נכנסים אל Google Cloud המסוף ובוחרים את Google Cloud הפרויקט שמקושר למופע של Google SecOps.
- נכנסים לדף IAM & Admin > Service Accounts.
- לוחצים על יצירת חשבון שירות.
- מזינים את פרטי ההגדרה הבאים:
- Service account name: מזינים שם לחשבון (לדוגמה,
bindplane-ingest). - Service account description: מזינים תיאור (לדוגמה,
Bindplane agent log ingestion).
- Service account name: מזינים שם לחשבון (לדוגמה,
- לוחצים על 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בספריית 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כך שיתאים לנתיב שבו שומרים את הקובץ. - עוברים אל IAM & Admin > Settings ומעתיקים את הערך של Project number. תצטרכו אותו כדי להגדיר את כלי הייצוא.
אפשרות 2: הורדה של קובץ האימות להטמעת נתונים (מדור קודם)
- נכנסים למסוף Google SecOps.
- עוברים אל הגדרות SIEM > סוכני איסוף.
- מורידים את קובץ האימות להטמעת נתונים.
- שומרים את הקובץ בצורה מאובטחת במערכת שבה יותקן סוכן Bindplane.
איך מקבלים את מספר הלקוח ב-Google SecOps
- נכנסים למסוף Google SecOps.
- עוברים אל SIEM Settings > Profile (הגדרות SIEM > פרופיל).
- מעתיקים את מספר הלקוח מהקטע פרטי הארגון ושומרים אותו.
התקנת סוכן Bindplane
מתקינים את סוכן Bindplane במערכת ההפעלה Linux לפי ההוראות הבאות.
התקנה ב-Linux
- פותחים טרמינל עם הרשאות root או sudo.
מריצים את הפקודה הבאה:
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
מקורות מידע נוספים להתקנה
אפשרויות התקנה נוספות מפורטות במדריך ההתקנה.
הגדרת סוכן Bindplane להטמעת Syslog ושליחה ל-Google SecOps
ניגשים לקובץ התצורה:
- מאתרים את הקובץ
config.yaml. בדרך כלל, הוא נמצא בספרייה/opt/observiq-otel-collector/ב-Linux. - פותחים את הקובץ באמצעות כלי לעריכת טקסט (לדוגמה,
nanoאוvi).
- מאתרים את הקובץ
עורכים את הקובץ
config.yamlבאופן הבא:receivers: udplog: # Replace the port and IP address as required 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: <CUSTOMER_ID> endpoint: chronicle.googleapis.com # Add optional ingestion labels for better organization log_type: 'AIDE' 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. - מחליפים את
<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: <CUSTOMER_ID> endpoint: malachiteingestion-pa.googleapis.com # Add optional ingestion labels for better organization log_type: 'AIDE' raw_log_field: body ingestion_labels:
מפעילים מחדש את הסוכן של Bindplane כדי להחיל את השינויים.
כדי להפעיל מחדש את סוכן Bindplane ב-Linux, מריצים את הפקודה הבאה:
sudo systemctl restart observiq-otel-collector
הגדרת העברה של Syslog ב-AIDE
פותחים את קובץ התצורה של AIDE:
sudo vi /etc/aide/aide.confעוברים לקטע הדיווח.
מוסיפים את ההגדרה הבאה:
- report_level: מזינים
list_entries. - report_format: מזינים
json(ל-AIDE בגרסה 0.18 ואילך) אוplain. - report_url: מזינים
syslog:authpriv.
הגדרה לדוגמה:
```ini report_level=list_entries report_format=json report_url=syslog:authpriv ```- report_level: מזינים
שומרים את ההגדרה.
מגדירים את rsyslog כך שיעביר את יומני ה-AIDE לסוכן Bindplane. פותחים את ההגדרה של rsyslog:
sudo vi /etc/rsyslog.d/aide-forward.confמוסיפים את ההגדרה הבאה כדי להעביר את יומני המתקנים של
authprivלסוכן Bindplane:authpriv.* @<BINDPLANE_AGENT_IP>:514- מחליפים את
<BINDPLANE_AGENT_IP>בכתובת ה-IP של המארח של סוכן Bindplane. - משתמשים ב-
@ל-UDP או ב-@@להעברת TCP.
- מחליפים את
מפעילים מחדש את rsyslog:
sudo systemctl restart rsyslogאם זו התקנה חדשה, מאתחלים את מסד הנתונים של AIDE:
sudo aide --init sudo mv /var/lib/aide/aide.db.new /var/lib/aide/aide.dbבודקים את ההגדרה:
sudo aide --checkהגדרת בדיקות אוטומטיות באמצעות cron:
sudo crontab -eמוסיפים את השורה הבאה כדי להריץ את AIDE מדי יום בשעה 04:05:
05 4 * * * root /usr/sbin/aide --check
טבלת מיפוי UDM
| שדה ביומן | מיפוי UDM | היגיון |
|---|---|---|
added_label |
principal.asset.attribute.labels |
ממוזג |
changed_label |
principal.asset.attribute.labels |
ממוזג |
old_acl_label |
principal.asset.attribute.labels |
ממוזג |
old_md5_label |
principal.asset.attribute.labels |
ממוזג |
old_perms_label |
principal.asset.attribute.labels |
ממוזג |
old_sha256_label |
principal.asset.attribute.labels |
ממוזג |
old_ts_label |
principal.asset.attribute.labels |
ממוזג |
removed_label |
principal.asset.attribute.labels |
ממוזג |
total_label |
principal.asset.attribute.labels |
ממוזג |
file_path |
principal.file.full_path |
מיפוי ישיר |
path |
principal.file.full_path |
מיפוי ישיר |
old_size |
principal.file.size |
מיפוי ישיר |
host |
principal.hostname |
מיפוי ישיר |
sr |
security_result |
ממוזג |
new_acl_label |
target.asset.attribute.labels |
ממוזג |
new_md5_label |
target.asset.attribute.labels |
ממוזג |
new_perms_label |
target.asset.attribute.labels |
ממוזג |
new_sha256_label |
target.asset.attribute.labels |
ממוזג |
new_ts_label |
target.asset.attribute.labels |
ממוזג |
path |
target.file.full_path |
מיפוי ישיר |
new_size |
target.file.size |
מיפוי ישיר |
| לא רלוונטי | metadata.event_type |
קבוע: GENERIC_EVENT |
| לא רלוונטי | metadata.product_name |
קבוע: AIDE |
| לא רלוונטי | metadata.vendor_name |
קבוע: AIDE |
| לא רלוונטי | principal.application |
קבוע: aide |
| לא רלוונטי | principal.file.size |
קבוע: sizedata |
| לא רלוונטי | target.file.size |
קבוע: sizedata_target |
total_files", "added_files", "removed_files", "changed_files", "old_timestamp", "old_perms", "old_sha256", "old_md5", and "old_acl |
principal.asset.attribute.labels |
מופה מיומן השינויים |
new_timestamp", "new_perms", "new_sha256", "new_md5", and "new_acl |
target.asset.attribute.labels |
מופה מיומן השינויים |
יומן שינויים
צפייה ביומן השינויים של כלי הניתוח הזה
הבעיה עדיין לא נפתרה? קבלת תשובות מחברי הקהילה וממומחי Google SecOps.