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 | משולב ערכים אפשריים:
|
לא | מציינים את סוג האירוע שצריך להחזיר. |
| מסגרת זמן | DDL | בשעה האחרונה ערכים אפשריים:
|
לא | מציינים מסגרת זמן לתוצאות. אם בוחרים באפשרות 'התראה: זמן עד עכשיו', הפעולה משתמשת בשעת ההתחלה של ההתראה כשעת ההתחלה של החיפוש, ושעת הסיום היא השעה הנוכחית. אם בוחרים באפשרות '30 דקות לפני זמן ההתראה ועד 30 דקות אחריו', הפעולה מחפשת את ההתראות 30 דקות לפני שההתראה התרחשה ועד 30 דקות אחרי שההתראה התרחשה. אותו רעיון חל על האפשרויות 'שעה לפני זמן ההתראה ועד שעה אחריו' ו'5 דקות לפני זמן ההתראה ועד 5 דקות אחריו'. אם בוחרים באפשרות 'התאמה אישית', צריך גם לספק את הפרמטר 'זמן התחלה'. |
| שעת ההתחלה | String | לא רלוונטי | לא | מציינים את שעת ההתחלה של התוצאות. הפרמטר הזה הוא חובה אם בוחרים באפשרות 'מותאם אישית' בפרמטר 'מסגרת זמן'. פורמט: ISO 8601 |
| שעת הסיום | String | לא רלוונטי | לא | מציינים את שעת הסיום של התוצאות. אם לא מספקים ערך ובפרמטר Time Frame (מסגרת זמן) בוחרים באפשרות Custom (התאמה אישית), המערכת משתמשת בזמן הנוכחי. פורמט: ISO 8601 |
| שדה המיון | String | חותמת זמן | לא | מציינים את הפרמטר שבו רוצים להשתמש למיון. |
| סדר המיון | DDL | ASC Possible ערכים:
|
לא | מציינים את סדר המיון. |
| מספר מקסימלי של אירועים להחזרה | מספר שלם | 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 |
|
כן | אובייקט 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
הפעולה מספקת את הודעות הפלט הבאות:
| הודעת פלט | תיאור ההודעה |
|---|---|
|
הפעולה הסתיימה בהצלחה. |
|
הפעולה נכשלה. צריך לבדוק את החיבור לשרת, את פרמטרי הקלט או את פרטי הכניסה. |
הצגת רשימת החיבורים
מציגים רשימה של חיבורי נקודות קצה ב-Tanium.
ישויות
הפעולה הזו לא מופעלת על ישויות.
הוספת נתונים לפעולה
לא רלוונטי
פלט של פעולות
| סוג הפלט של הפעולה | |
|---|---|
| קיר המארז | לא רלוונטי |
| קישור לקיר של הפנייה | לא רלוונטי |
| טבלת קיר עם תושבת | לא רלוונטי |
| טבלת העשרה | לא רלוונטי |
| תוצאה בפורמט JSON | לא רלוונטי |
| תוצאת סקריפט | יש גישה |
תוצאת סקריפט
| שם התוצאה של הסקריפט | ערך |
|---|---|
| is_success | נכון/לא נכון |
Case wall
הפעולה מספקת את הודעות הפלט הבאות:
| הודעת פלט | תיאור ההודעה |
|---|---|
|
הפעולה הסתיימה בהצלחה. |
Error executing action "List Connections". Reason:
ERROR_REASON |
הפעולה נכשלה. צריך לבדוק את החיבור לשרת, את פרמטרי הקלט או את פרטי הכניסה. |
הבעיה עדיין לא נפתרה? קבלת תשובות מחברי הקהילה וממומחי Google SecOps.