Tanium

במסמך הזה מוסבר איך לשלב את Tanium עם Google SecOps.

דרישות מוקדמות

‫Tanium משתמשת באסימוני API כדי לאמת קריאות ל-REST API. מידע נוסף על יצירת אסימוני API זמין במאמר ניהול אסימוני API במסמכי התיעוד של Tanium.

שילוב של Tanium עם Google Security Operations

הוראות מפורטות להגדרת שילוב ב-Google SecOps מופיעות במאמר הגדרת שילובים.

פרמטרים של שילוב

משתמשים בפרמטרים הבאים כדי להגדיר את השילוב:

השם המוצג של הפרמטר סוג ערך ברירת המחדל חובה תיאור
ספריית הבסיס של ה-API כתובת URL לא רלוונטי כן מציינים את שורש Tanium API שבו השילוב צריך להשתמש.
טוקן API סיסמה לא רלוונטי כן מציינים את טוקן Tanium API שבו השילוב צריך להשתמש.
אימות SSL תיבת סימון סימן אישור לא אם האפשרות הזו מופעלת, השרת של Google SecOps בודק שהאישור מוגדר עבור שורש ה-API.

פעולות

פינג

בודקים את הקישוריות להתקנת Tanium באמצעות הפרמטרים שמופיעים בדף הגדרת השילוב בכרטיסייה Google Security Operations Marketplace.

הפעלה ב-

הפעולה הזו לא מופעלת על ישויות, ואין לה פרמטרים של קלט חובה.

תוצאות הפעולה

תוצאת סקריפט
שם התוצאה של הסקריפט אפשרויות ערך דוגמה
is_success נכון/לא נכון is_success:False
Case wall
סוג התוצאות ערך/תיאור סוג
הודעת פלט*

הפעולה לא אמורה להיכשל או לעצור את ההרצה של חוברת ההדרכה:

אם הפעולה בוצעה בהצלחה: "Successfully connected to the Tanium installation with the provided connection parameters!" (החיבור להתקנת Tanium בוצע בהצלחה עם פרמטרי החיבור שסופקו).

הפעולה צריכה להיכשל ולהפסיק את ההרצה של מדריך ההפעלה:

אם מדווחת שגיאה קריטית, כמו פרטי כניסה שגויים או אובדן קישוריות: "החיבור להתקנת Tanium נכשל! השגיאה היא {0}".format(exception.stacktrace)

כללי

העשרת ישויות

העשרת ישויות באמצעות מידע מ-Tanium. הפעולה היא פעולה אסינכרונית של Google SecOps. ישויות נתמכות: שם מארח, כתובת IP.

פרמטרים

השם המוצג של הפרמטר סוג ערך ברירת המחדל חובה תיאור
שדות נוספים CSV לא רלוונטי לא

מציינים שדות נוספים לאחזור מ-Tanium לצורך העשרת ישויות.

הפרמטר מקבל כמה ערכים כמחרוזת שמופרדת באמצעות פסיקים.

הפעלה ב-

הפעולה הזו מופעלת בישויות הבאות:

  • כתובת IP
  • שם המארח

תוצאות הפעולה

תוצאת סקריפט
שם התוצאה של הסקריפט אפשרויות ערך דוגמה
is_success נכון/לא נכון is_success:False
תוצאה בפורמט JSON
{
    "data": {
        "now": "2022/01/28 10:18:54 GMT-0000",
        "max_available_age": "",
        "result_sets": [
            {
                "age": 0,
                "id": X,
                "report_count": 2,
                "saved_question_id": 0,
                "question_id": X,
                "archived_question_id": 0,
                "seconds_since_issued": 0,
                "issue_seconds": 0,
                "expire_seconds": 0,
                "tested": 4,
                "passed": 1,
                "mr_tested": 4,
                "mr_passed": 4,
                "estimated_total": 4,
                "select_count": 10,
                "error_count": 0,
                "no_results_count": 0,
                "columns": [
                    {
                        "hash": X,
                        "name": "Computer ID",
                        "type": 1
                    },
                    {
                        "hash": 0,
                        "name": "Count",
                        "type": 3
                    }
                ],
                "cache_id": "X",
                "expiration": 0,
                "filtered_row_count": 1,
                "filtered_row_count_machines": 1,
                "row_count": 1,
                "row_count_machines": 1,
                "item_count": 1,
                "rows": [
                    {
                        "id": x,
                        "cid": x,
                        "data": [
                            [
                                {
                                    "text": "X"
                                }
                            ],
                            [
                                {
                                    "text": "No User"
                                }
                            ],
                            [
                                {
                                    "text": "1"
                                }
                            ]
                        ]
                    }
                ]
            }
        ]
    }
}
טבלת העשרה

קידומת: Tanium_

שם שדה ההעשרה לוגיקה – מתי להחיל
Computer_ID כשהנתונים זמינים בפורמט JSON
Operating_System כשהנתונים זמינים בפורמט JSON
OS_Platform כשהנתונים זמינים בפורמט JSON
Service_Pack כשהנתונים זמינים בפורמט JSON
Domain_Name כשהנתונים זמינים בפורמט JSON
זמן פעולה תקינה כשהנתונים זמינים בפורמט JSON
System_UUID כשהנתונים זמינים בפורמט JSON
IP_Address כשהנתונים זמינים בפורמט JSON
Case wall
סוג התוצאות ערך/תיאור סוג
הודעת פלט*

הפעולה לא אמורה להיכשל או לעצור את ההרצה של חוברת ההדרכה:

אם יש נתונים לגבי ישות אחת (is_success = true): "Successfully enriched the following entities using information from Tanium: {entity.identifier}".

אם הנתונים לא זמינים עבור ישות אחת (is_success=true): "לא הייתה אפשרות להוסיף מידע לישויות הבאות באמצעות מידע מ-Tanium: {entity.identifier}"

אם יש כמה התאמות ב-Tanium לישות שסופקה (is_success=true): "נמצאו כמה תוצאות ב-Tanium לישויות, נלקחה ההתאמה הראשונה: {entity.identifier}"

אם הנתונים לא זמינים לכל הישויות (is_success=false): "אף אחת מהישויות שסופקו לא עברה העשרה".

הפעולה צריכה להיכשל ולהפסיק את ההרצה של מדריך ההפעלה:

אם מדווח קוד הסטטוס 400 (תחביר שגוי של השאלה): "Error executing action "Enrich Entities" because provided question text is invalid. "

אם מדווחת שגיאה קריטית, כמו פרטי כניסה שגויים, אין חיבור לשרת או שגיאה אחרת: "שגיאה בהפעלת הפעולה 'הוספת פרטים לישויות'". הסיבה: {0}''.format(error.Stacktrace)

כללי
Case Wall Table

שם הטבלה: {entity.identifier}

עמודות הטבלה:

  • מפתח
  • ערך
ישות

יצירת שאלה

יצירת שאלה חדשה ב-Tanium על סמך הפרמטרים שצוינו, והשאלה מוצגת באופן מיידי. הפעולה מחזירה מזהה שאלה שאפשר להעביר לפעולה Get Question Results (קבלת תוצאות של שאלה) כדי לקבל את תוצאות השאלה. הערה: הפעולה לא פועלת עם ישויות של Google SecOps.

פרמטרים

השם המוצג של הפרמטר סוג ערך ברירת המחדל חובה תיאור
הטקסט של השאלה String לא רלוונטי כן

מציינים את התוכן של השאלה ב-Tanium.

דוגמה: קבלת מערכת הפעלה מכל המכונות

הפעלה ב-

הפעולה לא מופעלת בישויות.

תוצאות הפעולה

תוצאת סקריפט
שם התוצאה של הסקריפט אפשרויות ערך דוגמה
is_success נכון/לא נכון is_success:False
תוצאה בפורמט JSON
{
    "data": {
        "id": X
    }
}
Case wall
סוג התוצאות ערך/תיאור סוג
הודעת פלט*

הפעולה לא אמורה להיכשל או לעצור את ההרצה של חוברת ההדרכה:

אם הנתונים זמינים (is_success = true): "Successfully created Tanium question with id {question_id_from_response}".

הפעולה צריכה להיכשל ולהפסיק את ההרצה של מדריך ההפעלה:

אם מדווח על קוד הסטטוס 400 (תחביר שגוי של השאלה): "Error executing action "Create Question" because provided question text is invalid. "

אם מדווחת שגיאה קריטית, כמו פרטי כניסה שגויים, אין חיבור לשרת או שגיאה אחרת: "שגיאה בהפעלת הפעולה 'יצירת שאלה'. הסיבה: {0}''.format(error.Stacktrace)

כללי

קבלת תוצאות של שאלות

מאחזרים תוצאות לשאלה ב-Tanium. הפעולה היא פעולה אסינכרונית של Google SecOps. הערה: הפעולה לא פועלת עם ישויות של Google SecOps.

פרמטרים

השם המוצג של הפרמטר סוג ערך ברירת המחדל חובה תיאור
מזהה השאלה מספר שלם לא רלוונטי כן מציינים את מזהה השאלה ב-Tanium כדי לקבל תוצאות.
יצירת טבלה של בקשות תמיכה תיבת סימון סימן אישור לא אם האפשרות הזו מופעלת, הפעולה יוצרת טבלת case wall כחלק מתוצאות הפעולה.
מספר השורות המקסימלי להחזרה מספר שלם 50 כן מציינים את המספר המקסימלי של שורות שהפעולה צריכה להחזיר לשאלה.

הפעלה ב-

הפעולה הזו לא מופעלת על ישויות.

תוצאות הפעולה

תוצאת סקריפט
שם התוצאה של הסקריפט אפשרויות ערך דוגמה
is_success נכון/לא נכון is_success:False
תוצאה בפורמט JSON
{
  "id": 1,
  "report_count": 3,
  "saved_question_id": 0,
  "question_id": 1,
  "seconds_since_issued": 600,
  "issue_seconds": 0,
  "expire_seconds": 600,
  "tested": 3,
  "passed": 3,
  "mr_tested": 3,
  "mr_passed": 3,
  "estimated_total": 3,
  "select_count": 3,
  "error_count": 0,
  "no_results_count": 0,
  "row_count": 3,
  "row_count_machines": 3,
  "item_count": 3,
  "filtered_row_count": 3,
  "filtered_row_count_machines": 3,
  "columns": [
    {
      "hash": 1,
      "name": "IP Address",
      "type": 5
    },
    {
      "hash": 2,
      "name": "Computer Name",
      "type": 1
    },
    {
      "hash": 3,
      "name": "Operating System",
      "type": 1
    }
  ],
  "rows": [
    {
      "IP Address": [
        "2001:db8:a::100",
        "192.0.2.10"
      ],
      "Computer Name": [
        "CLIENT-A01"
      ],
      "Operating System": [
        "Windows Server 2022 Datacenter"
      ]
    },
    {
      "IP Address": [
        "2001:db8:a::101"
      ],
      "Computer Name": [
        "CLIENT-B02"
      ],
      "Operating System": [
        "Windows Server 2019 Standard Evaluation"
      ]
    },
    {
      "IP Address": [
        "198.51.100.5"
      ],
      "Computer Name": [
        "server-web-prod.example.com"
      ],
      "Operating System": [
        "Debian 12.12"
      ]
    }
  ]
}
Case wall
סוג התוצאות ערך/תיאור סוג
הודעת פלט*

הפעולה לא אמורה להיכשל או לעצור את ההרצה של חוברת ההדרכה:

אם הנתונים זמינים (is_success=true): "Successfully fetched results for the following Tanium question id: {question id}".

אם הנתונים לא זמינים (is_success=false): "לא נמצאו תוצאות למזהה השאלה Tanium: {question id}"

הפעולה צריכה להיכשל ולהפסיק את ההרצה של מדריך ההפעלה:

אם מדווח קוד הסטטוס 404 (השאלה לא קיימת): 'לא הצלחתי למצוא שאלה ב-Tanium עם מזהה השאלה {question_id}. '

אם מדווחת שגיאה חמורה, כמו פרטי כניסה שגויים, אין חיבור לשרת או שגיאה אחרת: "שגיאה בהפעלת הפעולה 'תוצאות השאלות של Qet'". הסיבה: {0}''.format(error.Stacktrace)

כללי
טבלה

שם הטבלה: Tanium Question {question_id} Results

עמודות הטבלה:

העמודות נוצרות על סמך הנתונים שמוחזרים משאלה.

כללי

הצגת רשימה של אירועים בנקודת קצה

רשימת אירועים שקשורים לנקודות הקצה מ-Tanium. הפעולה פועלת עם Tanium Threat Response API.

פרמטרים

השם המוצג של הפרמטר סוג ערך ברירת המחדל חובה תיאור
סוג האירוע DDL

משולב

ערכים אפשריים:

  • קובץ
  • רשת
  • עיבוד
  • מרשם
  • נהג/ת
  • משולב
  • DNS
  • תמונה
לא מציינים את סוג האירוע שצריך להחזיר.
מסגרת זמן DDL

בשעה האחרונה

ערכים אפשריים:

  • בשעה האחרונה
  • 6 השעות האחרונות
  • 24 השעות האחרונות
  • בשבוע שעבר
  • בחודש שעבר
  • זמן ההתראה עד עכשיו
  • 5 דקות לפני או אחרי שעת ההתראה
  • ‫30 דקות לפני או אחרי שעת ההתראה
  • שעה אחת לפני ואחרי שעת ההתראה
  • בהתאמה אישית
לא

מציינים מסגרת זמן לתוצאות.

אם בוחרים באפשרות 'התראה: זמן עד עכשיו', הפעולה משתמשת בשעת ההתחלה של ההתראה כשעת ההתחלה של החיפוש, ושעת הסיום היא השעה הנוכחית.

אם בוחרים באפשרות '30 דקות לפני זמן ההתראה ועד 30 דקות אחריו', הפעולה מחפשת את ההתראות 30 דקות לפני שההתראה התרחשה ועד 30 דקות אחרי שההתראה התרחשה. אותו רעיון חל על האפשרויות 'שעה לפני זמן ההתראה ועד שעה אחריו' ו'5 דקות לפני זמן ההתראה ועד 5 דקות אחריו'. אם בוחרים באפשרות 'התאמה אישית', צריך גם לספק את הפרמטר 'זמן התחלה'.

שעת ההתחלה String לא רלוונטי לא

מציינים את שעת ההתחלה של התוצאות.

הפרמטר הזה הוא חובה אם בוחרים באפשרות 'מותאם אישית' בפרמטר 'מסגרת זמן'.

פורמט: ISO 8601

שעת הסיום String לא רלוונטי לא

מציינים את שעת הסיום של התוצאות.

אם לא מספקים ערך ובפרמטר Time Frame (מסגרת זמן) בוחרים באפשרות Custom (התאמה אישית), המערכת משתמשת בזמן הנוכחי.

פורמט: ISO 8601

שדה המיון String חותמת זמן לא מציינים את הפרמטר שבו רוצים להשתמש למיון.
סדר המיון DDL

ASC Possible

ערכים:

  • ASC
  • DESC
לא מציינים את סדר המיון.
מספר מקסימלי של אירועים להחזרה מספר שלם 50 לא

מציינים את מספר האירועים שיוחזרו לכל ישות.

מקסימום: 500

הפעלה ב-

הפעולה הזו לא מופעלת על ישויות.

תוצאות הפעולה

תוצאת סקריפט
שם התוצאה של הסקריפט אפשרויות ערך דוגמה
is_success נכון/לא נכון is_success:False
תוצאה בפורמט JSON
{
  "events": [
    {
      "create_time": "2022-01-18 11:59:52.000",
      "end_time": null,
      "exit_code": null,
      "pid": 2,
      "process_path": "kthreadd",
      "id": "72057594037927939",
      "process_table_id": "72057594037927939",
      "parent_process_table_id": "72057594037927937",
      "parent_pid": -1,
      "user_name": "root",
      "group_name": "root",
      "hash_type_name": null,
      "hash": null,
      "process_command_line": null,
      "parent_path": "<Unknown Process>",
      "parent_command_line": "<Unknown Process>",
      "parent_hash": null,
      "create_time_raw": 1642507192000,
      "end_time_raw": null
    }
  ]
}
Case wall
סוג התוצאות ערך/תיאור סוג
הודעת פלט*

הפעולה לא אמורה להיכשל או לעצור את ההרצה של חוברת ההדרכה:

אם נמצא לפחות אירוע אחד לנקודת קצה (is_success=true): 'הוחזרו אירועים בהצלחה לנקודות הקצה הבאות ב-Tanium:\n'.format(entity).‎

אם לא נמצאו אירועים לנקודת קצה (is_success=true): 'No events were found for the following endpoints in Tanium:\n'.format(entity).

אם לא נמצאו אירועים לכל נקודות הקצה (is_success=true): "לא נמצאו אירועים לנקודות הקצה שצוינו ב-Tanium".

אם לא הייתה אפשרות ליצור חיבור או שלא נמצא חיבור לנקודות קצה מסוימות (is_success=true): "לא הייתה אפשרות לאחזר מידע על אירועים מנקודות הקצה הבאות ב-Tanium בגלל בעיות בקישוריות של הסוכן: {entity}. צריך לוודא ששמות המארחים האלה מחוברים למודול Tanium Threat Response".

אם לא בוצע обогащение לכל הנתונים (is_success=false): "לא נמצא מידע על IOCs".

הפעולה צריכה להיכשל ולהפסיק את ההרצה של מדריך ההפעלה:

אם מדווחת שגיאה קריטית, כמו פרטי כניסה שגויים, אין חיבור לשרת או שגיאה אחרת: "שגיאה בהפעלת הפעולה 'הוספת מידע על IOC'. הסיבה: {0}''.format(error.Stacktrace)

אם לא ניתן ליצור חיבור או שלא נמצא חיבור לכל נקודות הקצה (is_success=false):'שגיאה בהפעלת הפעולה 'List Endpoint Events' (רשימת אירועים של נקודת קצה)'. הסיבה: לא הייתה אפשרות לאחזר מידע על אירועים מנקודות הקצה שסופקו ב-Tanium בגלל בעיות בקישוריות של הסוכן. חשוב לוודא ששמות המארחים האלה מחוברים למודול Tanium Threat Response".

כללי

Quarantine Endpoint

מכניסים את נקודות הקצה להסגר ב-Tanium. הפעולה פועלת עם Tanium Threat Response API.

פרמטרים

השם המוצג של הפרמטר סוג ערך ברירת המחדל חובה תיאור
הפעלה בלבד תיבת סימון התיבה לא מסומנת כן אם האפשרות הזו מופעלת, הפעולה רק מתחילה את ביצוע המשימה בלי לחכות לתוצאות.
שמות של חבילות String
  • Apply Linux IPTables Quarantine ל-Linux
  • Apply Mac PF Quarantine ל-macOS
  • Apply Windows IPsec Quarantine ל-Windows
כן אובייקט JSON שמכיל את כל שמות החבילות לכל מערכת הפעלה.

הפעלה ב-

הפעולה הזו מופעלת בישויות הבאות:

  • כתובת IP
  • שם המארח

תוצאות הפעולה

תוצאת סקריפט
שם התוצאה של הסקריפט אפשרויות ערך דוגמה
is_success נכון/לא נכון is_success:False
תוצאה בפורמט JSON
{
  "id": 82,
  "type": "responseAction",
  "status": "COMPLETED",
  "metadata": {
      "id": 2,
      "type": "gatherSnapshot",
      "status": "RUNNING",
      "computerName": "EX01.exlab.local",
      "userId": 1,
      "userName": "tanium",
      "options": {},
      "results": {
          "taskIds": [
              73
          ],
          "actionIds": []
      },
      "expirationTime": "2022-03-08T14:31:50.211Z",
      "createdAt": "2022-03-01T14:31:50.212Z",
      "updatedAt": "2022-03-01T14:36:19.533Z"
  },
  "results": {
      "didActionComplete": false,
      "stopped": true,
      "finished": true
  },
  "error": null,
  "startTime": "2022-03-01T14:42:10.390Z",
  "endTime": "2022-03-01T15:29:50.495Z",
  "createdAt": "2022-03-01T14:42:10.379Z",
  "updatedAt": "2022-03-01T14:42:10.379Z"
}
Case wall
סוג התוצאה ערך / תיאור סוג
הודעת פלט*

הפעולה לא אמורה להיכשל או לעצור את ההרצה של חוברת ההדרכה:

אם לפחות נקודת קצה אחת נמצאת בהסגר (is_success=true): "Successfully initiated quarantine on the following endpoints in Tanium:\n".format(entity)

אם לפחות נקודת קצה אחת לא הוכנסה להסגר, אבל לא בגלל פסק זמן (is_success=false): "לא הייתה אפשרות להכניס להסגר את נקודות הקצה הבאות ב-Tanium: {entity}. צריך לוודא שהסוכן Tanium Threat Response מחובר בצורה תקינה וששם המארח או כתובת ה-IP נכונים".

אם לא כל נקודות הקצה הוכנסו להסגר, אבל לא בגלל פסק זמן (is_success=false): "לא הייתה אפשרות להכניס להסגר את נקודות הקצה שצוינו ב-Tanium. צריך לוודא שהסוכן Tanium Threat Response מחובר בצורה תקינה וששם המארח או כתובת ה-IP נכונים".

Async Pending entities: {entities}

הפעולה צריכה להיכשל ולהפסיק את ההרצה של מדריך ההפעלה:

אם מדווחת שגיאה קריטית, כמו פרטי כניסה שגויים, אין חיבור לשרת או שגיאה אחרת: "שגיאה בהפעלת הפעולה 'הוספת פרטים ל-IOC'. הסיבה: {0}''.format(error.Stacktrace)

אם לא ניתן ליצור חיבור או שלא נמצא חיבור לכל נקודות הקצה (is_success=false): 'שגיאה בהפעלת הפעולה 'הסגרת נקודת קצה'. סיבה: לא ניתן להכניס להסגר את נקודות הקצה שסופקו ב-Tanium בגלל בעיות בקישוריות של הסוכן. צריך לוודא שנקודות הקצה מחוברות למודול Tanium Threat Response וששם המארח או כתובת ה-IP נכונים'.

אם נתקלתם בפסק זמן: "שגיאה בהפעלת הפעולה 'הסגרת נקודת קצה'. הסיבה: הפעולה נתקלה בפסק זמן במהלך הביצוע. ישויות בהמתנה: {entities that are still in progress}. צריך להגדיל את הזמן הקצוב לתפוגה ב-IDE או להפעיל את האפשרות 'רק הפעלה'”.

כללי

הורדת הקובץ

הורדת קובץ מנקודות קצה ב-Tanium. הפעולה פועלת עם Tanium Threat Response API.

פרמטרים

השם המוצג של הפרמטר סוג ערך ברירת המחדל חובה תיאור
נתיבי קבצים CSV לא רלוונטי כן מציינים את הנתיב המוחלט של הקבצים בנקודת הקצה שרוצים להוריד.
נתיב תיקיית ההורדות String לא רלוונטי כן מציינים את הנתיב לתיקייה שבה רוצים לשמור את הקבצים.
החלפה תיבת סימון התיבה לא מסומנת כן אם האפשרות הזו מופעלת, הפעולה דורסת את הקובץ עם אותו שם.

הפעלה ב-

הפעולה הזו מופעלת בישויות הבאות:

  • כתובת IP
  • שם המארח

תוצאות הפעולה

תוצאת סקריפט
שם התוצאה של הסקריפט אפשרויות ערך דוגמה
is_success נכון/לא נכון is_success:False
תוצאה בפורמט JSON
{
    "absolute_file_path": [
        "file_path_1",
        "file_path_2"
    ],
    "entity": [
        {
            "identifier": "",
            "task_details": {
                "id": 81,
                "type": "fileDownload",
                "status": "COMPLETED",
                "metadata": {
                    "connection": "remote:centos-003:3864230059:1",
                    "paths": [
                        "/tmp/saaj-impl.jar"
                    ],
                    "compress": "true"
                },
                "results": {
                    "completed": [
                        "/tmp/saaj-impl.jar"
                    ],
                    "failed": [],
                    "fileResults": [
                        {
                            "response": {
                                "source": "/tmp/saaj-impl.jar",
                                "target": "/opt/Tanium/TaniumModuleServer/services/threat-response-service/tmp/4965e791-db87-4f31-ba60-2e52c9bac3de",
                                "totalBytes": 503502,
                                "transferHash": "5402c16c3873a722b94d8a3101cb98f5e4f862acc69cdee3a94cf40c1b04b265",
                                "totalTimeMs": 260,
                                "avgBytesPerSecond": 504123.0769230769
                            },
                            "uuid": "eb5077b3-9b02-42e2-bba4-58d9668a14e4",
                            "finalPath": "/opt/Tanium/TaniumModuleServer/services/threat-response-files/evidence/files/eb5077b3-9b02-42e2-bba4-58d9668a14e4.zip"
                        }
                    ]
                },
                "error": null,
                "startTime": "2022-03-01T14:38:23.952Z",
                "endTime": "2022-03-01T14:38:24.559Z",
                "createdAt": "2022-03-01T14:38:23.943Z",
                "updatedAt": "2022-03-01T14:38:23.943Z"
            }
        }
    ]
}
Case wall
סוג התוצאה ערך / תיאור סוג
הודעת פלט*

הפעולה לא אמורה להיכשל או לעצור את ההרצה של חוברת ההדרכה:

אם לפחות קובץ אחד הורד לכל ישות (is_success=true): "הורדת הקבצים הבאים מנקודת הקצה {entity} ב-Tanium הושלמה:\n".format(downloaded files)."

אם לא הורד לפחות קובץ אחד לכל ישות, אבל לא בגלל זמן קצוב לתפוגה (is_success=false): "לא הייתה אפשרות להוריד את הקבצים הבאים מנקודת הקצה {entity} ב-Tanium: {pending files}. צריך לוודא שהסוכן של Tanium Threat Response מחובר בצורה תקינה וששם המארח או כתובת ה-IP נכונים. תוצאת ה-JSON מכילה פרטים נוספים על המשימות".

Async Pending entities: {entities}

הפעולה צריכה להיכשל ולהפסיק את ההרצה של מדריך ההפעלה:

אם מדווחת שגיאה קריטית, כמו פרטי כניסה שגויים, אין חיבור לשרת או שגיאה אחרת: "שגיאה בהפעלת הפעולה 'הורדת קובץ'. הסיבה: {0}''.format(error.Stacktrace)"

אם כבר קיים קובץ עם אותו שם, אבל הערך של 'החלפת קובץ' הוא false: 'שגיאה בהפעלת הפעולה 'הורדת קובץ''. הסיבה: קבצים עם הנתיב {0} כבר קיימים. צריך למחוק את הקבצים או להגדיר את האפשרות 'החלפה' כ-true".

אם נתקלתם בזמן קצוב לתפוגה: "Error executing action "Download File". הסיבה: הפעולה נתקלה בפסק זמן במהלך הביצוע. ישויות בהמתנה: {entities that are still in progress}. צריך להגדיל את הזמן הקצוב לתפוגה ב-IDE".

כללי

מחיקת הקובץ

הורדת קובץ מנקודות קצה ב-Tanium. הפעולה פועלת עם Tanium Threat Response API.

פרמטרים

השם המוצג של הפרמטר סוג ערך ברירת המחדל חובה תיאור
נתיבי קבצים CSV לא רלוונטי כן מציינים את הנתיב המוחלט של הקבצים בנקודת הקצה שרוצים למחוק.

הפעלה ב-

הפעולה הזו פועלת עם הישויות הבאות:

  • כתובת IP
  • שם המארח

תוצאות הפעולה

תוצאת סקריפט
שם התוצאה של הסקריפט אפשרויות ערך דוגמה
is_success נכון/לא נכון is_success:False
תוצאה בפורמט JSON
{
  "success": [],
  "not_exist_already_or_errors": []
}
Case wall
סוג התוצאה ערך / תיאור סוג
הודעת פלט*

הפעולה לא אמורה להיכשל או לעצור את ההרצה של חוברת ההדרכה:

אם לפחות קובץ אחד נמחק (קוד סטטוס: 204, is_success=true): 'Successfully deleted files from the following endpoints in Tanium:\n'.format(entity).

אם קובץ אחד לפחות לא קיים בנקודת קצה אחת (קוד סטטוס: 500, is_success=true): "הסטטוס של חלק מהקבצים לא ברור, צריך לבדוק את תוצאת ה-JSON. Tanium מחזירה קוד סטטוס 500 במקרה כזה, כשקובץ לא נמצא, אבל גם אם יש בעיות אחרות".

אם לפחות קובץ אחד לא קיים בכל נקודות הקצה (קוד סטטוס: 500, is_success=false): "הסטטוס של כל הקבצים לא ברור, צריך לבדוק את תוצאת ה-JSON. ‫Tanium מחזירה קוד סטטוס 500 במקרה שהקובץ לא נמצא, אבל גם אם יש בעיות אחרות".

אם לא נמצאה נקודת קצה אחת לפחות (is_success=true): "לא הייתה אפשרות למחוק קבצים מנקודות הקצה הבאות ב-Tanium: {entity}. צריך לוודא שהסוכן של Tanium Threat Response מחובר בצורה תקינה וששם המארח או כתובת ה-IP נכונים".

אם לא נמצאו כל נקודות הקצה (is_success=false): "לא הייתה אפשרות למחוק קבצים מנקודות הקצה שצוינו ב-Tanium. צריך לוודא שאמצעי ההגנה מפני איומים של Tanium מחובר בצורה תקינה וששם המארח או כתובת ה-IP נכונים".

הפעולה צריכה להיכשל ולהפסיק את ההרצה של מדריך ההפעלה:

אם מדווחת שגיאה קריטית, כמו פרטי כניסה שגויים, אין חיבור לשרת או שגיאה אחרת: "שגיאה בהפעלת הפעולה 'מחיקת קובץ'. הסיבה: {0}''.format(error.Stacktrace)

כללי

קבלת פרטי המשימה

אחזור פרטים על משימה ב-Tanium. הפעולה פועלת עם Tanium Threat Response API.

פרמטרים

השם המוצג של הפרמטר סוג ערך ברירת המחדל חובה תיאור
מזהי משימות CSV לא רלוונטי כן מציינים רשימה של מזהי משימות מופרדים בפסיקים, שרוצים לאחזר את הפרטים שלהם.
המתנה להשלמה תיבת סימון סימן אישור לא

אם האפשרות הזו מופעלת, הפעולה ממתינה עד שהמשימה תקבל אחד מהסטטוסים הבאים:

  • הושלם
  • לא הושלם
  • שגיאה

הפעלה ב-

הפעולה הזו לא מופעלת על ישויות.

תוצאות הפעולה

תוצאת סקריפט
שם התוצאה של הסקריפט אפשרויות ערך דוגמה
is_success נכון/לא נכון is_success:False
תוצאה בפורמט JSON
{
    "id": 81,
    "type": "fileDownload",
    "status": "COMPLETED",
    "metadata": {
        "connection": "remote:centos-003:3864230059:1",
        "paths": [
            "/tmp/saaj-impl.jar"
        ],
        "compress": "true"
    },
    "results": {
        "completed": [
            "/tmp/saaj-impl.jar"
        ],
        "failed": [],
        "fileResults": [
            {
                "response": {
                    "source": "/tmp/saaj-impl.jar",
                    "target": "/opt/Tanium/TaniumModuleServer/services/threat-response-service/tmp/4965e791-db87-4f31-ba60-2e52c9bac3de",
                    "totalBytes": 503502,
                    "transferHash": "5402c16c3873a722b94d8a3101cb98f5e4f862acc69cdee3a94cf40c1b04b265",
                    "totalTimeMs": 260,
                    "avgBytesPerSecond": 504123.0769230769
                },
                "uuid": "eb5077b3-9b02-42e2-bba4-58d9668a14e4",
                "finalPath": "/opt/Tanium/TaniumModuleServer/services/threat-response-files/evidence/files/eb5077b3-9b02-42e2-bba4-58d9668a14e4.zip"
            }
        ]
    },
    "error": null,
    "startTime": "2022-03-01T14:38:23.952Z",
    "endTime": "2022-03-01T14:38:24.559Z",
    "createdAt": "2022-03-01T14:38:23.943Z",
    "updatedAt": "2022-03-01T14:38:23.943Z"
}
Case wall
סוג התוצאה ערך / תיאור סוג
הודעת פלט*

הפעולה לא אמורה להיכשל או לעצור את ההרצה של חוברת ההדרכה:

אם לפחות משימה אחת אוחזרה (is_success=true): "Successfully fetched details about the following tasks in Tanium:\n".format(id)."

אם לא נמצאה לפחות משימה אחת (is_success=true): 'לא הייתה אפשרות למצוא את המשימות הבאות ב-Tanium:\n'.format(id).

אם לא נמצאה לפחות משימה אחת (is_success=true): "לא נמצאו משימות ב-Tanium".

אחזור אסינכרוני של פרטים על משימות: {task ids}

הפעולה צריכה להיכשל ולהפסיק את ההרצה של מדריך ההפעלה:

אם מדווחת שגיאה קריטית, כמו פרטי כניסה שגויים, אין חיבור לשרת או שגיאה אחרת: "Error executing action "Get Task Details". Reason: {0}''.format(error.Stacktrace)"

אם חלף הזמן הקצוב לתפוגה והפרמטר Wait for completion (המתנה לסיום) מופעל: "Error executing action "Get Task Details". Reason: action ran into a timeout during execution. Pending tasks: {tasks that are still in progress}. Please increase the timeout in IDE." (שגיאה בהפעלת הפעולה Get Task Details (קבלת פרטי המשימה). סיבה: חלף הזמן הקצוב לתפוגה במהלך ההפעלה. משימות בהמתנה: {משימות שעדיין מתבצעות}. צריך להגדיל את הזמן הקצוב לתפוגה ב-IDE).

כללי

יצירת חיבור

יוצרים חיבור לנקודת הקצה ב-Tanium.

ישויות

הפעולה הזו מופעלת על ישויות של שם מארח וכתובת IP.

הוספת נתונים לפעולה

לא רלוונטי

פלט של פעולות

סוג הפלט של הפעולה
קיר המארז לא רלוונטי
קישור לקיר של הפנייה לא רלוונטי
טבלת קיר עם תושבת לא רלוונטי
טבלת העשרה לא רלוונטי
תוצאה בפורמט JSON לא רלוונטי
תוצאת סקריפט יש גישה
תוצאת סקריפט
שם התוצאה של הסקריפט ערך
is_success נכון/לא נכון
Case wall

הפעולה מספקת את הודעות הפלט הבאות:

הודעת פלט תיאור ההודעה

Successfully created a connection for the following entities: LIST_OF_SUCCESSFUL_ENTITIES

No suitable entities were found in the scope.

הפעולה הסתיימה בהצלחה.

Action wasn't able to create a connection for the following entities: LIST_OF_FAILED_ENTITIES

Error executing action "Create Connection". Reason: ERROR_REASON

הפעולה נכשלה.

צריך לבדוק את החיבור לשרת, את פרמטרי הקלט או את פרטי הכניסה.

הצגת רשימת החיבורים

מציגים רשימה של חיבורי נקודות קצה ב-Tanium.

ישויות

הפעולה הזו לא מופעלת על ישויות.

הוספת נתונים לפעולה

לא רלוונטי

פלט של פעולות

סוג הפלט של הפעולה
קיר המארז לא רלוונטי
קישור לקיר של הפנייה לא רלוונטי
טבלת קיר עם תושבת לא רלוונטי
טבלת העשרה לא רלוונטי
תוצאה בפורמט JSON לא רלוונטי
תוצאת סקריפט יש גישה
תוצאת סקריפט
שם התוצאה של הסקריפט ערך
is_success נכון/לא נכון
Case wall

הפעולה מספקת את הודעות הפלט הבאות:

הודעת פלט תיאור ההודעה

Successfully found connections in INTEGRATION

No connections were found in INTEGRATION

הפעולה הסתיימה בהצלחה.
Error executing action "List Connections". Reason: ERROR_REASON

הפעולה נכשלה.

צריך לבדוק את החיבור לשרת, את פרמטרי הקלט או את פרטי הכניסה.

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