איסוף יומנים של Synology

נתמך ב:

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

לפני שמתחילים

ודאו שאתם עומדים בדרישות המוקדמות הבאות:

  • מופע של Google SecOps.
  • גישה עם הרשאות ל-Synology DSM.

הגדרת פידים

כדי להגדיר פיד:

  1. עוברים אל הגדרות > ניהול נתונים > פידים. אם אתם משתמשים בפלטפורמה של SIEM בלבד, עוברים אל הגדרות > פידים.
  2. לוחצים על הוספת פיד חדש.
  3. בדף הבא, לוחצים על הגדרת פיד יחיד.
  4. בשדה Feed name, נותנים שם לפיד, למשל Synology Logs.
  5. בוחרים באפשרות Webhook בתור סוג המקור.
  6. בוחרים באפשרות Synology בתור סוג היומן.
  7. לוחצים על הבא.
  8. אופציונלי: מציינים ערכים לפרמטרים הבאים של הקלט:
    • Split delimiter: התו המשמש להפרדה בין שורות ביומן, כמו \n.
    • מרחב השמות של הנכס: מרחב השמות של הנכס.
    • תוויות הטמעה: התווית שנוספה לאירועים מהפיד הזה.
  9. לוחצים על הבא.
  10. בודקים את הגדרות הפיד במסך סיום ולוחצים על שליחה.
  11. לוחצים על יצירת מפתח סודי כדי ליצור מפתח סודי לאימות הפיד הזה.
  12. מעתיקים את המפתח הסודי ושומרים אותו. לא תוכלו לראות שוב את המפתח הסודי הזה. במקרה הצורך, אפשר ליצור מחדש מפתח סודי, אבל הפעולה הזו מבטלת את המפתח הסודי הקודם.
  13. בכרטיסייה פרטים, מעתיקים את כתובת ה-URL של נקודת הקצה של הפיד מהשדה פרטי נקודת הקצה. צריך לציין את כתובת ה-URL של נקודת הקצה הזו באפליקציית הלקוח.
  14. לוחצים על סיום.

יצירת מפתח API לפיד ה-Webhook

  1. נכנסים לדף CredentialsGoogle Cloud במסוף >.

    כניסה לדף Credentials

  2. לוחצים על Create credentials ואז על מפתח API.

  3. מגבילים את הגישה של מפתח ה-API ל-Google Security Operations API.

מציינים את כתובת ה-URL של נקודת הקצה

  1. באפליקציית הלקוח, מציינים את כתובת ה-URL של נקודת הקצה (endpoint) ב-HTTPS שסופקה בפיד ה-webhook.
  2. כדי להפעיל את האימות, צריך לציין את מפתח ה-API ואת המפתח הסודי כחלק מהכותרת בהתאמה אישית, בפורמט הבא:

    X-goog-api-key = API_KEY
    X-Webhook-Access-Key = SECRET
    

    המלצה: ציינו את מפתח ה-API ככותרת במקום לציין אותו בכתובת ה-URL.

  3. אם לקוח ה-webhook שלכם לא תומך בכותרות בהתאמה אישית, אתם יכולים לציין את מפתח ה-API ואת המפתח הסודי באמצעות פרמטרים של שאילתה בפורמט הבא:

    ENDPOINT_URL?key=API_KEY&secret=SECRET
    

    מחליפים את מה שכתוב בשדות הבאים:

    • ‫ENDPOINT_URL: כתובת ה-URL של נקודת הקצה של הפיד.
    • ‫API_KEY: מפתח ה-API לאימות ב-Google Security Operations.
    • ‫SECRET: המפתח הסודי שיצרתם כדי לאמת את הפיד.

יצירת Webhook ב-Synology בשביל Google SecOps

  1. נכנסים ל-DiskStation Manager‏ (DSM) ב-Synology NAS.
  2. עוברים אל לוח הבקרה > התראה > Webhook.
  3. לוחצים על הוספה.
  4. מציינים ערכים לפרמטרים הבאים:

    • ספק: בוחרים באפשרות בהתאמה אישית.
    • כלל: בוחרים את סוג ההודעות שרוצים לשלוח ב-webhook.

    • לוחצים על הבא.

    • Provider name: נותנים ל-webhook שם ייחודי (לדוגמה, Google SecOps).

    • נושא: יתווסף כקידומת להודעת ההתראה.

    • Webhook URL: מזינים את ENDPOINT_URL.

    • בוחרים באפשרות שליחת הודעות באנגלית.

    • לוחצים על הבא.

    • שיטת HTTP: בוחרים באפשרות POST.

    • מוסיפים את הכותרת X-Webhook-Access-Key עם הערך SECRET.

    • מוסיפים את הכותרת X-goog-api-key עם הערך API_KEY.

    • לוחצים על אישור.

  5. לוחצים על אישור כדי לשמור את ה-webhook.

טבלת מיפוי UDM

שדה ביומן מיפוי UDM Logic (פונקציה לוגית)
app target.application הערך של השדה app שחולץ על ידי מסנן ה-grok מוקצה ל-target.application.
desc metadata.description הערך של השדה desc שחולץ על ידי מסנן ה-grok מוקצה ל-metadata.description.
desc target.file.names אם השדה desc מכיל את הערך "Closed)", נתיב הקובץ שבסוגריים מחולץ ומוקצה ל-target.file.names. אם השדה desc מכיל את הערך "accessed shared folder", נתיב התיקייה שבסוגריים מחולץ ומוקצה ל-target.file.names.
host principal.hostname הערך של השדה host שחולץ על ידי מסנן ה-grok מהשדה host_and_ip מוקצה ל-principal.hostname.
host_and_ip principal.ip השדה host_and_ip מנותח. אם נמצאה כתובת IP‏ (ip1), היא מוקצית ל-principal.ip. אם נמצאת כתובת IP שנייה (ip2), היא גם מתווספת אל principal.ip.
intermediary_host intermediary.hostname הערך של השדה intermediary_host שחולץ על ידי מסנן ה-grok מוקצה ל-intermediary.hostname. אם ההודעה מכילה את הביטוי "signed in" או "sign in", נוצר אובייקט auth ריק ב-extensions. המערכת משתמשת בחותמת הזמן מהשדה collection_time ביומן הגולמי. אם ההודעה מכילה את המילים "מחובר" או "כניסה", הערך מוגדר כ-USER_LOGIN. אם ההודעה מכילה את הטקסט "accessed shared folder", הערך מוגדר כ-USER_RESOURCE_ACCESS. אחרת, ברירת המחדל היא GENERIC_EVENT. הערך של השדה type שחולץ על ידי מסנן ה-grok מוקצה ל-metadata.product_event_type. הערך מוגדר באופן סטטי בתור "SYNOLOGY". הערך מוגדר באופן סטטי בתור "SYNOLOGY". אם ההודעה מכילה את הטקסט "failed to sign", הערך מוגדר כ-BLOCK. אם ההודעה מכילה את המילה "success", הערך מוגדר כ-ALLOW. אם השדה severity (שחולץ על ידי grok) הוא "INFO", הערך מוגדר ל-INFORMATIONAL.
severity security_result.severity הערך של השדה severity שחולץ על ידי מסנן ה-grok משמש לקביעת ה-security_result.severity. אם הערך הוא "INFO", הוא ממופה ל-"INFORMATIONAL".
time metadata.event_timestamp השדה time, שחולץ על ידי מסנן ה-grok, מנותח ומומר לחותמת זמן. חותמת הזמן הזו מוקצית ל-metadata.event_timestamp.
type metadata.product_event_type הערך של השדה type שחולץ על ידי מסנן ה-grok מוקצה ל-metadata.product_event_type.
user target.administrative_domain אם דומיין חולץ מהשדה user, הוא מוקצה ל-target.administrative_domain.
user target.user.userid המערכת מחלצת את החלק של שם המשתמש מהשדה user (לפני התו "\" אם הוא קיים) ומקצה אותו ל-target.user.userid. המערכת משתמשת בחותמת הזמן מהשדה collection_time ביומן הגולמי.

יומן שינויים

הצגת יומן השינויים של המנתח הזה

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