פרסום שילובים בהתאמה אישית
נתמך ב:
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. הפעולה הזו צריכה להיות מושבתת כברירת מחדל, והיא לא מיועדת לשימוש במדריכים. - Linux: השילוב צריך לתמוך ב-CentOS 7 ואילך.
דרישות לפעולה
- תיאור הפעולה: תיאור ברור של הפעולה.
- מבנה הפעולה: צריך לפעול לפי תבנית הפעולה של סביבת הפיתוח המשולבת (IDE) שמוגדרת כברירת מחדל.
- פרמטרים של פעולה: מגדירים את כל הפרמטרים שרלוונטיים לפעולה, כולל תיאורים. התאמה של סוגי הפרמטרים לדרישות של הפעולה.
-
הפעלת פעולה בהקשר של התראה: כשזה רלוונטי, כדאי לתכנן את הפעולה כך שהיא תופעל בהקשר של התראה. לדוגמה, אפשר להגדיר את היקף הלוגיקה לסוגים ספציפיים של ישויות (למשל, כתובות URL) באמצעות
siemplify.target_entities. דוגמה מופיעה במאמר יצירת פעולות מותאמות אישית. - רישום ביומן: מוסיפים יומנים לפעולות מורכבות, ורושמים ביומן את כל החריגים או השגיאות עם רמת החומרה הנכונה (`info`, `warn`, `error`, ו-`exception`).
דרישות JSON
- תוצאה בפורמט JSON: לפעולות שמחזירות נתונים, משתמשים ב-
add_result_jsonכדי להחזיר תוצאה בפורמט JSON. - הוספת דוגמה לקובץ JSON: הוספת דוגמה לקובץ JSON שאפשר לייבא אל בונה הביטויים כדי ליצור פלייבוק. ההמלצה הזו מאפשרת לערכי תוצאות JSON לייצג placeholders ב-playbook.
העשרת ישויות
כשמעשירים ישויות בנתונים ממוצר משולב, כדאי לפעול לפי השיטות המומלצות הבאות:
- הוספת שלב העשרה: הוספת נתונים רלוונטיים מהמוצר לפלט של הפעולה.
- שימוש בקידומת: כדי למנוע התנגשויות, מוסיפים קידומת (בדרך כלל שם המוצר) למפתחות של שדות ההעשרה.
- דוגמה: כדי להוסיף לשם ישות את השם הפרטי ושם המשפחה של משתמש, מוסיפים את הקידומת
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.