איסוף יומנים של Tanium Comply
במאמר הזה מוסבר איך להטמיע יומנים של Tanium Comply ב-Google Security Operations באמצעות Amazon S3, באמצעות יכולת הייצוא המקורית של Tanium Connect ל-S3. הכלי לניתוח הנתונים הופך נתוני יומן בפורמט JSON למודל נתונים מאוחד (UDM). הוא מחלץ מידע חשוב על פגיעויות, כמו מזהה CVE, ציוני CVSS, כתובות IP מושפעות וחותמות זמן, ואז משנה את המבנה שלהם לפורמט UDM סטנדרטי לניתוח אבטחה עקבי.
לפני שמתחילים
חשוב לוודא שמתקיימות הדרישות המוקדמות הבאות:
- מופע של Google SecOps
- גישת אדמין ל-Tanium Connect ול-Tanium Console
- Tanium Comply בגרסה 2.1 ואילך מותקן ומוגדר
- גישת אדמין ל-AWS (S3, IAM)
הגדרה של קטגוריית AWS S3 ו-IAM ל-Google SecOps
- יוצרים קטגוריה ב-Amazon S3 לפי המדריך למשתמש: יצירת קטגוריה
- שומרים את השם והאזור של הקטגוריה לעיון בהמשך (לדוגמה,
tanium-comply-logs). - יוצרים משתמש לפי מדריך המשתמש הזה: יצירת משתמש IAM.
- בוחרים את המשתמש שנוצר.
- לוחצים על הכרטיסייה פרטי כניסה לאבטחה.
- בקטע Access Keys, לוחצים על Create Access Key.
- בוחרים באפשרות שירות של צד שלישי בתור תרחיש השימוש.
- לוחצים על הבא.
- אופציונלי: מוסיפים תג תיאור.
- לוחצים על Create access key (יצירת מפתח גישה).
- לוחצים על הורדת קובץ CSV כדי לשמור את מפתח הגישה ואת מפתח הגישה הסודי לשימוש מאוחר יותר.
- לוחצים על סיום.
- לוחצים על הכרטיסייה הרשאות.
- בקטע Permissions policies, לוחצים על Add permissions.
- לוחצים על הוספת הרשאות.
- בוחרים באפשרות צירוף מדיניות ישירות.
- מחפשים את המדיניות AmazonS3FullAccess ובוחרים בה.
- לוחצים על הבא.
- לוחצים על הוספת הרשאות.
הגדרת הרשאות בקטגוריית Amazon S3
- במסוף Amazon S3, בוחרים את הקטגוריה שיצרתם קודם.
- לוחצים על הרשאות > מדיניות של מאגר.
בעורך מדיניות הקטגוריה, מוסיפים את המדיניות הבאה:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::YOUR_ACCOUNT_ID:user/tanium-connect-s3-user" }, "Action": [ "s3:PutObject", "s3:PutObjectAcl", "s3:GetObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::tanium-comply-logs", "arn:aws:s3:::tanium-comply-logs/*" ] } ] }מחליפים את המשתנים הבאים:
- משנים את
YOUR_ACCOUNT_IDלמזהה החשבון ב-AWS. - אם השם שונה, מחליפים את
tanium-comply-logsבשם הקטגוריה בפועל. - אם שם המשתמש שונה, מחליפים את
tanium-connect-s3-userבשם המשתמש בפועל ב-IAM.
- משנים את
לוחצים על Save.
הגדרת Tanium Connect לייצוא ל-S3
- נכנסים לTanium Console כאדמינים.
- עוברים אל Tanium Connect > Connections.
- לוחצים על יצירת חיבור.
- בקטע General Information, מציינים את פרטי ההגדרה הבאים:
- שם: מזינים שם תיאורי (לדוגמה,
Tanium Comply to S3). - תיאור: מזינים תיאור משמעותי (לדוגמה,
Export Tanium Comply findings to S3 for Google SecOps ingestion). - הפעלה: בוחרים באפשרות הזו כדי להפעיל את החיבור.
- רמת היומן: בוחרים באפשרות מידע (ברירת מחדל) או משנים לפי הצורך.
- שם: מזינים שם תיאורי (לדוגמה,
בקטע Configuration (הגדרה), בוחרים באפשרות Tanium Comply (Findings) (תאימות של Tanium (ממצאים)) בשדה Source (מקור).
מגדירים את הגדרות המקור של Comply:
- סוג הממצא: בוחרים את סוג הממצאים לייצוא (הכול, תאימות או פגיעות).
- Include Resolved Findings (הכללת ממצאים שנפתרו): בוחרים אם לכלול ממצאים שנפתרו.
- קבוצות מחשבים: בוחרים את קבוצות המחשבים שרוצים לכלול בייצוא (ברירת מחדל: כל המחשבים).
בקטע Destination (יעד), בוחרים באפשרות AWS S3.
מספקים את פרטי ההגדרה הבאים:
- שם היעד: מזינים שם (לדוגמה,
Google SecOps S3 Bucket). - מפתח גישה ל-AWS: מזינים את מזהה מפתח הגישה של משתמש ה-IAM שנוצר קודם.
- מפתח סודי של AWS: מזינים את מפתח הגישה הסודי של משתמש IAM שנוצר קודם.
- שם הקטגוריה: מזינים את שם הקטגוריה ב-S3 (לדוגמה,
tanium-comply-logs). - Bucket Path (נתיב לדלי): אופציונלי. מזינים קידומת נתיב (לדוגמה,
tanium/comply/). - אזור: בוחרים את האזור ב-AWS שבו נמצאת הקטגוריה (לדוגמה,
us-east-1).
- שם היעד: מזינים שם (לדוגמה,
בקטע Format (פורמט), מגדירים את פורמט הפלט:
- סוג הפורמט: בוחרים באפשרות JSON.
- כולל כותרות עמודות: בוחרים אם רוצים לכלול כותרות עמודות.
- יצירת מסמך: מבטלים את הסימון של האפשרות הזו כדי לשלוח נתוני JSON גולמיים.
אופציונלי: בקטע Configure Output (הגדרת הפלט), מגדירים מסננים ועמודות בהתאמה אישית לפי הצורך.
בקטע תזמון, מגדירים מתי החיבור יפעל:
- סוג התזמון: בוחרים באפשרות Cron.
- ביטוי Cron: מזינים ביטוי Cron לייצוא קבוע (לדוגמה,
0 */4 * * *לייצוא כל 4 שעות). - תאריך התחלה: הגדרת תאריך ההתחלה של התזמון.
לוחצים על שמירת השינויים.
בדף Connect Overview (סקירה כללית של Connect), עוברים אל Connections (חיבורים).
לוחצים על החיבור שיצרתם (Tanium Comply to S3).
לוחצים על Run Now (הפעלה עכשיו) כדי לבדוק את החיבור.
מאשרים שרוצים להפעיל את החיבור.
עוקבים אחרי סטטוס החיבור ומוודאים שממצאי התאימות מיוצאים אל דלי ה-S3.
אופציונלי: יצירת משתמש IAM ומפתחות עם הרשאת קריאה בלבד ל-Google SecOps
- עוברים אל AWS Console > IAM > Users > Add users.
- לוחצים על הוספת משתמשים.
- מספקים את פרטי ההגדרה הבאים:
- משתמש: מזינים
secops-reader. - סוג הגישה: בוחרים באפשרות מפתח גישה – גישה פרוגרמטית.
- משתמש: מזינים
- לוחצים על יצירת משתמש.
- מצרפים מדיניות קריאה מינימלית (מותאמת אישית): משתמשים > secops-reader > הרשאות > הוספת הרשאות > צירוף מדיניות ישירות > יצירת מדיניות.
בעורך ה-JSON, מזינים את המדיניות הבאה:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": ["s3:GetObject"], "Resource": "arn:aws:s3:::tanium-comply-logs/*" }, { "Effect": "Allow", "Action": ["s3:ListBucket"], "Resource": "arn:aws:s3:::tanium-comply-logs" } ] }מגדירים את השם ל-
secops-reader-policy.עוברים אל יצירת מדיניות > מחפשים או בוחרים > הבא > הוספת הרשאות.
עוברים אל Security credentials > Access keys > Create access key (פרטי כניסה לאבטחה > מפתחות גישה > יצירת מפתח גישה).
מורידים את קובץ ה-CSV (הערכים האלה מוזנים לפיד).
הגדרת פיד ב-Google SecOps להטמעה של יומני Tanium Comply
- עוברים אל SIEM Settings > Feeds (הגדרות SIEM > פידים).
- לוחצים על + הוספת פיד חדש.
- בשדה שם הפיד, מזינים שם לפיד (לדוגמה,
Tanium Comply logs). - בוחרים באפשרות Amazon S3 V2 בתור סוג המקור.
- בוחרים באפשרות Tanium Comply בתור סוג היומן.
- לוחצים על הבא.
- מציינים ערכים לפרמטרים הבאים של הקלט:
- S3 URI:
s3://tanium-comply-logs/tanium/comply/(צריך לשנות את הנתיב אם השתמשתם בשם או בנתיב אחרים של קטגוריה). - אפשרויות למחיקת המקור: בוחרים את אפשרות המחיקה הרצויה.
- הגיל המקסימלי של הקובץ: כולל קבצים שעברו שינוי במספר הימים האחרון. ברירת המחדל היא 180 ימים.
- מזהה מפתח גישה: מפתח גישה של משתמש עם גישה לקטגוריית S3 (מהמשתמש עם הרשאת קריאה בלבד שנוצר למעלה).
- מפתח גישה סודי: מפתח סודי של משתמש עם גישה לקטגוריית S3 (מהמשתמש עם הרשאת קריאה בלבד שנוצר למעלה).
- מרחב השמות של הנכס: מרחב השמות של הנכס.
- תוויות להוספה: התווית שתתווסף לאירועים מהפיד הזה.
- S3 URI:
- לוחצים על הבא.
- בודקים את ההגדרות של הפיד החדש במסך סיום ולוחצים על שליחה.
טבלת מיפוי UDM
| שדה ביומן | מיפוי UDM | היגיון |
|---|---|---|
| שם המחשב | entity.entity.asset.hostname | מופה ישירות מהשדה 'שם המחשב' אחרי החלפת הרווחים בקווים תחתונים. |
| CVE | entity.entity.asset.vulnerabilities.cve_id | מופה ישירות מהשדה 'CVE'. |
| ציון CVSS גרסה 3 | entity.entity.asset.vulnerabilities.cvss_base_score | ממופה ישירות מהשדה 'ציון CVSS v3' אחרי שינוי השם ל-cvss_base_score. |
| מידת החומרה לפי CVSS v3 | entity.entity.asset.vulnerabilities.severity_details | מופה ישירות מהשדה 'חומרה של CVSS v3'. |
| וקטור CVSS v3 | entity.entity.asset.vulnerabilities.cvss_vector | מופה ישירות מהשדה 'וקטור CVSS v3'. |
| התאריך שבו נמצאה לראשונה | entity.entity.asset.vulnerabilities.first_found | הערך הזה מנותח מהשדה 'תאריך האיתור הראשון' ומומר לפורמט RFC 3339 UTC. אם התאריך מכיל את התו '-', התוספת 'T00:00:00Z' מצורפת אליו. אחרת, התאריך מחולץ באמצעות grok ואז מומר. |
| כתובת IP | entity.entity.asset.ip | כל כתובת IP מהמערך IP Address ממופה לשדה ip נפרד ב-UDM. |
| התאריך האחרון שבו נמצאה | entity.entity.asset.vulnerabilities.last_found | הערך הזה מנותח מהשדה Last Found Date (תאריך האיתור האחרון) ומומר לפורמט UTC של RFC 3339. אם התאריך מכיל את התו '-', התוספת 'T00:00:00Z' מצורפת אליו. אחרת, התאריך מחולץ באמצעות grok ואז מומר. |
| כותרת | entity.entity.asset.vulnerabilities.name | מופה ישירות מהשדה 'שם'. |
| collection_time.nanos | entity.metadata.collected_timestamp.nanos | מופה ישירות מהשדה 'collection_time.nanos'. |
| collection_time.seconds | entity.metadata.collected_timestamp.seconds | מופה ישירות מהשדה collection_time.seconds. |
| פעם | entity.metadata.interval.start_time | הערך הזה מנותח מהשדה 'time' ומומר לפורמט UTC של RFC 3339. |
| - | entity.metadata.entity_type | מגדירים את הערך כ-'ASSET'. |
| - | entity.metadata.product_entity_id | הערך שמוגדר הוא Tanium: בצירוף הערך של השדה computerName. |
| - | entity.metadata.product_name | מגדירים את האפשרות 'תאימות'. |
| - | entity.metadata.vendor_name | מגדירים את הערך Tanium. |
יומן שינויים
צפייה ביומן השינויים של מנתח התוכן הזה
הבעיה עדיין לא נפתרה? קבלת תשובות מחברי הקהילה וממומחי Google SecOps.