Devo

במאמר הזה מוסבר איך לשלב את Devo עם Google Security Operations.

הרשאת מוצר

ב-Devo יש כמה שיטות אימות, שמתוארות במסמך Security credentials שזמין במאמרי העזרה של Devo.

השילוב של Google Security Operations תומך באסימוני אימות או במפתחות גישה לצורך אימות.

מומלץ להגדיר אימות מבוסס-טוקן:

  1. עוברים למסמך Authentication tokens שזמין בתיעוד של Devo.
  2. פועלים לפי השלבים ליצירת טוקן, ובשלב 3 בוחרים באפשרות שאילתת נתונים באמצעות API בארכיטקטורת REST.
  3. בשלב 4, מציינים את הערך "siem.logtrust.alert.info" בטבלת היעד.

מסיימים את תהליך היצירה לפי המסמכים כדי לקבל אסימון.

API

מידע נוסף על ה-API זמין במסמך API reference שבמאמרי העזרה של Devo.

הגדרת השילוב של Devo ב-Google SecOps

איך מגדירים שילובים ב-Google SecOps

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

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

שם הפרמטר לתצוגה סוג ערך ברירת המחדל חובה תיאור
כתובת URL של ממשק API String https://apiv2-us.devo.com כן מציינים את שורש ה-API של מכונת Devo המטורגטת.
טוקן API סיסמה לא רלוונטי לא

אם משתמשים באימות מבוסס-אסימון, צריך לציין את אסימון ה-API של המכונה של Devo.

אם מספקים גם טוקן וגם מפתחות גישה, השילוב פועל על טוקן API ומתעלם ממפתחות הגישה.

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

תרחישים לדוגמה

  1. אפשר להשתמש ב-Devo כמקור להתראות ש-Google SecOps יעבד.
  2. אפשר לשלוח שאילתות ל-Devo מ-Google SecOps כדי להעשיר את ההקשר של ההתראות ב-Google SecOps.

פעולות

פינג

תיאור

בודקים את הקישוריות למכונה של Devo באמצעות הפרמטרים שמופיעים בדף ההגדרות של השילוב ב-Google SecOps Content Hub.

אם לא הוענקה ההרשאה "siem.logtrust.alert.info" לטוקן הגישה שנוצר, פעולת ה-Ping תיכשל גם אם הטוקן תקין. מידע נוסף זמין בקטע הרשאות למוצרים.

פרמטרים

לא רלוונטי

תרחיש לדוגמה

הפעולה משמשת לבדיקת הקישוריות בדף הגדרת השילוב ב-Google SecOps Content Hub, ואפשר לבצע אותה כפעולה ידנית, לא בפלייבוקים.

ריצה

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

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

תוצאת הסקריפט
שם תוצאת הסקריפט אפשרויות של ערכים דוגמה
is_success נכון/לא נכון is_success=False
תוצאת JSON
N/A
העשרת ישויות

לא רלוונטי

תובנות

לא רלוונטי

קיר נרתיקים
סוג התוצאות ערך/תיאור סוג
הודעת פלט*

הפעולה לא אמורה להיכשל או להפסיק את ההפעלה של הפלייבוק:

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

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

אם התגובה נכשלה: "ההתחברות לשרת LogRhythm נכשלה! השגיאה היא {0}".format(exception.stacktrace)

כללי

שאילתה מתקדמת

תיאור

להריץ שאילתה מתקדמת על סמך הפרמטרים שצוינו. שימו לב שהפעולה לא פועלת על ישויות של Google SecOps. כדי לשלוח שאילתה לטבלה אחרת, צריך ליצור אסימון נוסף לטבלה הזו לפי ההוראות במסמך Authentication tokens שזמין במאמרי העזרה של Devo, ולציין אותו בדף ההגדרות של השילוב.

פרמטרים

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

מציינים שאילתה להפעלה במכונה של Devo.

לדוגמה: "from siem.logtrust.alert.info".

מסגרת זמן DDL

בשעה האחרונה

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

  • בשעה האחרונה
  • 6 השעות האחרונות
  • ‫24 השעות האחרונות
  • בשבוע שעבר
  • בחודש שעבר
  • בהתאמה אישית
לא

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

אם בוחרים באפשרות "בהתאמה אישית", צריך לציין גם את הפרמטר "שעת התחלה".

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

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

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

פורמט: ISO 8601

דוגמה: 2021-08-05T05:18:42Z

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

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

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

פורמט: ISO 8601

דוגמה: 2021-08-05T05:18:42Z

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

ריצה

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

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

תוצאת הסקריפט
שם תוצאת הסקריפט אפשרויות של ערכים דוגמה
is_success נכון/לא נכון is_success=False
תוצאת JSON
{
   "msg": "",
   "timestamp": 1630483519438,
   "cid": "01a5d92a25ba",
   "status": 0,
   "object": [
       {
           "eventdate": 1619452643049,
           "alertHost": "backoffice",
           "domain": "siemplify",
           "priority": 7.0,
           "context": "my.alert.siemplify.500",
           "category": "my.context",
           "status": 0,
           "alertId": "22797077",
           "srcIp": null,
           "srcPort": null,
           "srcHost": "",
           "dstIp": null,
           "dstPort": null,
           "dstHost": "",
           "protocol": "",
           "username": "user@siemplify.co",
           "application": "",
           "engine": "pil01-pro-custom-us-aws",
           "extraData": "{\"count\":\"13\",\"eventdate\":\"2021-04-26+15%3A56%3A30.0\"}"
       }
   ]
}
העשרת ישויות

לא רלוונטי

תובנות

לא רלוונטי

קיר נרתיקים
סוג התוצאות ערך/תיאור סוג
הודעת פלט*

הפעולה לא אמורה להיכשל או להפסיק את ההפעלה של הפלייבוק:

אם נמצאו לפחות חלק מהנתונים (is_success=true): "Successfully retrieved results for the provided query in Devo."‎

אם לא נמצאו תוצאות (is_success=false): "לא נמצאו תוצאות לשאילתה שצוינה ב-Devo".

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

אם מדווחות שגיאות בשאילתה: "Error executing action "חיפוש מתקדם".‎ Reason: {message}''.format(error.Stacktrace)

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

אם הערך של הפרמטר "שעת התחלה" גדול מהערך של הפרמטר "שעת סיום" (נכשל): "שגיאה בביצוע הפעולה "". סיבה: "שעת סיום" צריכה להיות מאוחרת יותר מ "שעת התחלה".

אם מגדירים ערך שלילי או 0 בפרמטר Max Rows to Return: "Error executing action "". Reason: "Max Rows to Return" should be positive, non-zero number."

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

כללי
טבלה

שם הטבלה: תוצאות של שאילתות מתקדמות

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

כל העמודות שמוחזרות מהתגובה.

כללי

שאילתה פשוטה

תיאור

להריץ שאילתה פשוטה על סמך הפרמטרים שצוינו. שימו לב שהפעולה לא פועלת על ישויות של Google SecOps. כדי לשלוח שאילתה לטבלה אחרת, צריך ליצור אסימון נוסף לטבלה הזו לפי ההוראות במסמך Authentication tokens שזמין במאמרי העזרה של Devo, ולציין אותו בדף ההגדרות של השילוב.

פרמטרים

שם הפרמטר לתצוגה סוג ערך ברירת המחדל חובה תיאור
שם טבלה String siem.logtrust.alert.info כן מציינים את הטבלה שרוצים לשלוח אליה שאילתה.
שדות להחזרה CSV לא רלוונטי לא

מציינים את השדות שיוחזרו.

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

מסנן Where String לא רלוונטי לא מציינים את המסנן Where לשאילתה שצריך להריץ.
מסגרת זמן DDL

בשעה האחרונה

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

בשעה האחרונה

6 השעות האחרונות

‫24 השעות האחרונות

בשבוע שעבר

בחודש שעבר

בהתאמה אישית

לא

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

אם בוחרים באפשרות "בהתאמה אישית", צריך לציין גם את הפרמטר "שעת התחלה".

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

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

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

פורמט: ISO 8601

דוגמה: 2021-08-05T05:18:42Z

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

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

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

פורמט: ISO 8601 דוגמה: 2021-08-05T05:18:42Z

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

ריצה

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

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

תוצאת הסקריפט
שם תוצאת הסקריפט אפשרויות של ערכים דוגמה
is_success נכון/לא נכון is_success=False
תוצאת JSON
{
   "msg": "",
   "timestamp": 1630483519438,
   "cid": "01a5d92a25ba",
   "status": 0,
   "object": [
       {
           "eventdate": 1619452643049,
           "alertHost": "backoffice",
           "domain": "siemplify",
           "priority": 7.0,
           "context": "my.alert.siemplify.500",
           "category": "my.context",
           "status": 0,
           "alertId": "22797077",
           "srcIp": null,
           "srcPort": null,
           "srcHost": "",
           "dstIp": null,
           "dstPort": null,
           "dstHost": "",
           "protocol": "",
           "username": "user@siemplify.co",
           "application": "",
           "engine": "pil01-pro-custom-us-aws",
           "extraData": "{\"count\":\"13\",\"eventdate\":\"2021-04-26+15%3A56%3A30.0\"}"
       }
   ]
}
העשרת ישויות

לא רלוונטי

תובנות

לא רלוונטי

קיר נרתיקים
סוג התוצאות ערך/תיאור סוג
הודעת פלט*

הפעולה לא אמורה להיכשל או להפסיק את ההפעלה של הפלייבוק:

אם נמצאו לפחות חלק מהנתונים (is_success=true): "Successfully retrieved results for the query: "{constructed query}" in Devo."‎

אם לא נמצאו תוצאות (is_success=false): "לא נמצאו תוצאות לשאילתה {constructed query} ב-Devo".

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

אם מדווחות שגיאות בשאילתה: "Error executing action "Simple Search".‎ Reason: {message}''.format(error.Stacktrace)

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

אם הערך של הפרמטר "שעת התחלה" גדול מהערך של הפרמטר "שעת סיום" (נכשל): "שגיאה בביצוע הפעולה "". סיבה: "שעת סיום" צריכה להיות מאוחרת יותר מ "שעת התחלה".

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

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

כללי
טבלה

שם הטבלה: תוצאות של שאילתה פשוטה

עמודות בטבלה: כל העמודות שהוחזרו מהתשובה

כללי

מחברים

Devo Alerts Connector

תיאור

אפשר להשתמש במחבר כדי לאחזר רשומות של התראות מהטבלה siem.logtrust.alert.info מ-Devo. אפשר להשתמש ברשימת ההיתרים של המחבר כדי להטמיע רק סוגים ספציפיים של התראות על סמך ערך ההקשר של ההתראה.

הגדרת Devo Alerts Connector ב-Google SecOps

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

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

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

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

מתאר את שם השדה שבו מאוחסן שם הסביבה.

אם שדה הסביבה לא נמצא, הסביבה היא סביבת ברירת המחדל.

תבנית ביטוי רגולרי של סביבה String .* לא

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

ברירת המחדל היא .* כדי לכלול את הכול ולהחזיר את הערך ללא שינוי.

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

אם תבנית הביטוי הרגולרי היא null או ריקה, או אם ערך הסביבה הוא null, תוצאת הסביבה הסופית היא סביבת ברירת המחדל.

כתובת URL של ממשק API String https://apiv2-us.devo.com כן צריך לציין את כתובת ה-URL של ה-API של מופע Devo המטורגט.
טוקן API סיסמה לא רלוונטי לא אם משתמשים באימות מבוסס-אסימון, צריך לציין את אסימון ה-API של המכונה של Devo.
מפתח API סיסמה לא רלוונטי לא אם משתמשים באימות באמצעות מפתחות גישה, צריך לציין את מפתח ה-API של המכונה של Devo.
API Secret סיסמה לא רלוונטי לא אם משתמשים באימות באמצעות מפתחות גישה, צריך לציין את סוד ה-API של מופע היעד ב-Devo.
אימות SSL תיבת סימון סימן אישור לא אם ההגדרה מופעלת, שרת Google SecOps בודק את האישור שהוגדר לשורש ה-API.
הפרש הזמן בשעות מספר שלם 24 כן אחזור התראות מ-X שעות אחורה.
מספר ההתראות המקסימלי בכל מחזור מספר שלם 30 כן מספר ההתראות שצריך לעבד במהלך הפעלה אחת של המחבר.
עדיפות מינימלית לאחזור String רגילה כן

העדיפות המינימלית של ההתראה שתיקלט ב-Google SecOps, לדוגמה, נמוכה או בינונית.

ערכים אפשריים: נמוכה מאוד, נמוכה, רגילה, גבוהה, גבוהה מאוד

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

כללי מחברים

תמיכה בשרת proxy

המחבר תומך בשרת proxy.

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