פרסום שילובים בהתאמה אישית
נתמך ב:
Google SecOps
SOAR
במסמך הזה מפורטות הדרישות לפרסום שילובים ב-Google Security Operations SOAR. הוא כולל רשימה של דרישות מוקדמות, תקני קידוד, הנחיות לפיתוח פעולות, כללים לעיצוב JSON, שיטות מומלצות להעשרת ישויות ותהליך לשליחת שילוב למרכז התוכן.
הקפדה על הדרישות האלה עוזרת לוודא שהשילובים אמינים, קלים לתחזוקה וגלויים למשתמשים אחרים.
דרישות לשילוב
- Python 3.7: פיתוח כל השילובים ב-Python 3.7.
- תיאור השילוב: צריך לכלול תיאור ברור של המוצר שמשולב עם המוצר שלכם.
-
Icons
- סמל SVG: הסמל הזה מופיע בכל המופעים של השילוב בפלטפורמה.
- סמל PNG: התמונה הזו מופיעה ב-Google SecOps Marketplace.
- קטגוריית שילוב: מגדירים קטגוריה כדי לאפשר למשתמשים אחרים לסנן את השילוב שלכם ב-Google SecOps Marketplace. בוחרים קטגוריה מתוך הרשימה המוגדרת מראש ב-Google SecOps Marketplace.
- תלות: אם השילוב דורש ספריות חיצוניות, צריך לציין אותן בהגדרות השילוב.
- פרמטרים של שילוב: צריך לכלול את כל הפרמטרים שנדרשים לחיבור מוצלח למוצר, יחד עם תיאורים ברורים.
- מנהל: כדי למנוע שכפול קוד, יוצרים מנהל – קובץ Python שאפשר להפנות אליו מסקריפטים אחרים בשילוב.
-
פעולת פינג: כוללים פעולת פינג כדי לאמת את הקישוריות. אם החיבור מתבצע בהצלחה, התוצאה צריכה להיות
true. הפעולה הזו צריכה להיות מושבתת כברירת מחדל, והיא לא מיועדת לשימוש ב-Playbook. - Linux: השילוב צריך לתמוך ב-CentOS 7 ואילך.
דרישות לגבי פעולות
- תיאור הפעולה: תיאור ברור של מה שהפעולה עושה.
- מבנה הפעולה: צריך לפעול לפי תבנית הפעולה של סביבת הפיתוח המשולבת (IDE) שמוגדרת כברירת מחדל.
- פרמטרים של פעולה: מגדירים את כל הפרמטרים שרלוונטיים לפעולה, כולל תיאורים. התאמה של סוגי הפרמטרים לדרישות של הפעולה.
-
הפעלת פעולה בהקשר של התראה: במקרים הרלוונטיים, כדאי לתכנן את הפעולה כך שתפעל בהקשר של התראה. לדוגמה, אפשר להגדיר את היקף הלוגיקה לסוגים ספציפיים של ישויות (למשל, כתובות URL) באמצעות
siemplify.target_entities. דוגמה מופיעה במאמר יצירת פעולות מותאמות אישית. - רישום ביומן: מוסיפים יומנים לפעולות מורכבות, ורושמים ביומן את כל החריגים או השגיאות עם רמת החומרה הנכונה (info, warn, error, ו-exception).
דרישות JSON
- תוצאה בפורמט JSON: כדי להחזיר תוצאה בפורמט JSON עבור פעולות שמחזירות נתונים, משתמשים ב-
add_result_json. - הוספת דוגמה לקובץ JSON: הוספת קובץ JSON לדוגמה שאפשר לייבא אל בונה הביטויים כדי ליצור פלייבוק. ההמלצה הזו מאפשרת לערכי תוצאות ב-JSON לייצג פלייסהולדרים בפלייבוק.
העשרת ישויות
כשמעשירים ישויות בנתונים ממוצר משולב, מומלץ לפעול לפי השיטות המומלצות הבאות:
- הוספת שלב העשרה: הוספת נתונים רלוונטיים מהמוצר לפלט של הפעולה.
- שימוש בקידומת: כדי למנוע התנגשויות, מוסיפים קידומת (בדרך כלל שם המוצר) למפתחות של שדות ההעשרה.
- דוגמה: כדי להעשיר ישות בשם הפרטי ובשם המשפחה של המשתמש, מוסיפים את הקידומת
Zoomלשדות החדשים.entity_enrichment = {"first_name":"First Name", "last_name":"Last Name"} entity_enrichment = add_prefix_to_dict(entity_enrichment, "Zoom")
- דוגמה: כדי להעשיר ישות בשם הפרטי ובשם המשפחה של המשתמש, מוסיפים את הקידומת
- עדכון הישות: משתמשים ב-
entity.additional_properties.update()כדי להוסיף את הנתונים המועשרים למאפייני הישות. - עדכון ההתראה: משתמשים ב-
siemplify.update_entities(enriched_entities)כדי להוסיף את הישויות המעודכנות להתראה. לוחצים על הישות כדי לראות את הפרטים המלאים.
פרסום השילוב
כדי שהשילוב יהיה זמין לכל המשתמשים ב-Google SecOps Marketplace, צריך לפנות אל תמיכת הלקוחות ולשלוח אותו לבדיקה של צוות Marketplace.
הבעיה עדיין לא נפתרה? קבלת תשובות מחברי הקהילה וממומחי Google SecOps.