איסוף יומני הקשר של Google Cloud Compute

גרסת מנתח הנתונים: 3.0

נתמך ב:

במאמר הזה מוסבר איך לייצא יומני הקשר של Compute ולהטמיע אותם ב-Google Security Operations באמצעות Cloud Storage. Google Cloud הכלי לניתוח מחלץ מידע מהיומנים בפורמט JSON. לאחר מכן, המערכת מבצעת נרמול ומבנה של הנתונים שחולצו בפורמט UDM של Google SecOps, תוך התמקדות בפרטים על מכונות וירטואליות כמו מפרטי חומרה, הגדרות רשת, הגדרות אבטחה ויחסים לישויות אחרות.

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

חשוב לוודא שמתקיימות דרישות הסף הבאות:

  • מופע של Google SecOps.
  • שירות Compute מוגדר ופעיל בסביבת Google Cloud שלכם.
  • גישה עם הרשאות מיוחדות ל- Google Cloud והרשאות מתאימות.

יצירת קטגוריה של Cloud Storage

  1. נכנסים למסוףGoogle Cloud .
  2. נכנסים לדף Cloud Storage Buckets.

    כניסה לדף Buckets

  3. לוחצים על Create.

  4. ממלאים את פרטי הקטגוריה בדף Create a bucket. אחרי כל אחד מהשלבים הבאים, לוחצים על המשך כדי לעבור לשלב הבא:

    1. בקטע Get started (תחילת העבודה), מבצעים את הפעולות הבאות:

      1. מזינים שם ייחודי שעומד בדרישות לשמות של קטגוריות. לדוגמה, compute-context-logs.
      2. כדי להפעיל את מרחב השמות ההיררכי, לוחצים על חץ ההרחבה כדי להרחיב את הקטע אופטימיזציה לעומסי עבודה שמתמקדים בקבצים ובעיבוד נתונים, ואז בוחרים באפשרות הפעלת מרחב שמות היררכי בדלי הזה.

      3. כדי להוסיף תווית למאגר, לוחצים על החץ להרחבה כדי להרחיב את הקטע תוויות.

      4. לוחצים על הוספת תווית ומציינים מפתח וערך לתווית.

    2. בקטע Choose where to store your data, מבצעים את הפעולות הבאות:

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

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

    3. בקטע Choose a storage class for your data, בוחרים default storage class לקטגוריה, או בוחרים ב-Autoclass לניהול אוטומטי של סוג האחסון (storage class) של נתוני הקטגוריה.

    4. בקטע Choose how to control access to objects, בוחרים באפשרות not כדי לא לאכוף public access prevention, ובוחרים access control model לאובייקטים של הקטגוריה.

    5. בקטע Choose how to protect object data:

      1. בוחרים באחת מהאפשרויות בקטע הגנה על נתונים שרוצים להגדיר לקטגוריה.
      2. כדי לבחור איך להצפין את נתוני האובייקט, לוחצים על החץ להרחבה של Data encryption ובוחרים Data encryption method.
  5. לוחצים על יצירה.

הגדרה של ייצוא יומנים של Compute Google Cloud

  1. נכנסים למסוףGoogle Cloud .
  2. עוברים אל Logging > Log Router.
  3. לוחצים על Create Sink.
  4. מציינים את פרמטרי ההגדרה הבאים:

    • שם מאגר: מזינים שם בעל משמעות, לדוגמה, Compute-Context-Sink.
    • יעד של Sink: בוחרים באפשרות Cloud Storage Storage ומזינים את ה-URI של הקטגוריה, לדוגמה, gs://compute-context-logs/.
    • מסנן יומן:

      logName="*compute*"
      resource.type="gce_instance"
      
  5. לוחצים על יצירה.

הגדרת הרשאות ל-Cloud Storage

  1. נכנסים אל IAM & Admin > IAM.
  2. מאתרים את חשבון השירות של Cloud Logging.
  3. מקצים את התפקיד roles/storage.admin בקטגוריה.

הגדרת פידים

יש שתי נקודות כניסה שונות להגדרת פידים בפלטפורמת Google SecOps:

  • הגדרות SIEM > פידים > הוספת פיד חדש
  • מרכז התוכן > חבילות תוכן > תחילת העבודה

איך מגדירים את הפיד של Google Cloud Compute Context

  1. לוחצים על חבילת פלטפורמת Google Cloud Compute.
  2. מאתרים את סוג היומן GCP Compute Context.
  3. מציינים את הערכים הבאים:

    • סוג המקור: Google Cloud Storage V2.
    • Storage Bucket URI: כתובת URL של קטגוריה של Cloud Storage, לדוגמה, gs://compute-context-logs/. כתובת ה-URL צריכה להסתיים בקו נטוי (/).
    • אפשרויות למחיקת מקורות: בוחרים את אפשרות המחיקה לפי ההעדפה.

    • הגיל המקסימלי של הקובץ: קבצים שעברו שינוי במהלך מספר הימים האחרון. ברירת המחדל היא 180 ימים.

    • חשבון שירות של Chronicle: מעתיקים את חשבון השירות. תצטרכו אותו כדי להוסיף הרשאות בקטגוריה לחשבון השירות הזה, כדי לאפשר ל-Google SecOps לקרוא או למחוק נתונים בקטגוריה.

    אפשרויות מתקדמות

    • שם הפיד: ערך שמולא מראש ומזהה את הפיד.
    • מרחב שמות של נכס: מרחב השמות שמשויך לפיד.
    • תוויות של העברה: תוויות שמוחלות על כל האירועים מהפיד הזה.
  4. לוחצים על יצירת פיד.

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

טבלת מיפוי UDM

שדה היומן מיפוי UDM לוגיקה
ישויות אב event.idm.entity.entity.asset.attribute.labels.value כל ערך של ישות אב במערך ancestors ממופה לתווית נפרדת עם המפתח ancestors.
assetType event.idm.entity.entity.asset.category ממופה ישירות מהשדה assetType.
asset_type event.idm.entity.entity.asset.category ממופה ישירות מהשדה asset_type.
name event.idm.entity.entity.resource.name ממופה ישירות משדה השם.
resource.data.cpuPlatform event.idm.entity.entity.asset.hardware.cpu_platform ממופה ישירות מהשדה resource.data.cpuPlatform.
resource.data.creationTimestamp event.idm.entity.entity.asset.attribute.creation_time הערך מנותח לפורמט של חותמת זמן מהשדה resource.data.creationTimestamp.
resource.data.id event.idm.entity.entity.asset.product_object_id ממופה ישירות מהשדה resource.data.id.
resource.data.labels.business_function event.idm.entity.entity.asset.attribute.labels.value ממופה ישירות מהשדה resource.data.labels.business_function, כשהמפתח מוגדר ל-business_function.
resource.data.labels.environment event.idm.entity.entity.asset.attribute.labels.value ממופה ישירות מהשדה resource.data.labels.environment, כשהמפתח מוגדר ל-environment.
resource.data.labels.infra_location event.idm.entity.entity.asset.attribute.labels.value ממופה ישירות מהשדה resource.data.labels.infra_location, כשהמפתח מוגדר ל-infra_location.
resource.data.labels.instance_group event.idm.entity.user.group_identifiers ממופה ישירות מהשדה resource.data.labels.instance_group.
resource.data.labels.os event.idm.entity.entity.asset.platform_software.platform_version ממופה ישירות מהשדה resource.data.labels.os.
resource.data.labels.primary_application event.idm.entity.entity.asset.attribute.labels.value ממופה ישירות מהשדה resource.data.labels.primary_application, כשהמפתח מוגדר ל-primary_application.
resource.data.labels.project_code event.idm.entity.entity.asset.attribute.labels.value ממופה ישירות מהשדה resource.data.labels.project_code, כשהמפתח מוגדר ל-project_code.
resource.data.lastStartTimestamp event.idm.entity.entity.asset.last_boot_time הערך מנותח לפורמט של חותמת זמן מהשדה resource.data.lastStartTimestamp.
resource.data.machineType event.idm.entity.entity.asset.hardware.model סוג המכונה מחולץ מהשדה resource.data.machineType באמצעות ביטוי רגולרי.
resource.data.name event.idm.entity.entity.asset.hostname ממופה ישירות מהשדה resource.data.name.
resource.data.networkInterfaces.0.accessConfigs.0.natIP event.idm.entity.entity.asset.nat_ip כתובת ה-IP הראשונה של NAT מממשק הרשת הראשון ממופה.
resource.data.networkInterfaces.0.network event.idm.entity.entity.asset.attribute.cloud.vpc.name מזהה הרשת מחולץ מהשדה resource.data.networkInterfaces.0.network באמצעות ביטוי רגולרי.
resource.data.networkInterfaces.0.networkIP event.idm.entity.entity.asset.ip כתובת ה-IP של ממשק הרשת הראשון ממופה.
resource.data.networkInterfaces.1.networkIP event.idm.entity.entity.asset.ip כתובת ה-IP של ממשק הרשת השני ממופה.
resource.data.selfLink event.idm.entity.entity.url מופה ישירות מהשדה resource.data.selfLink.
resource.data.serviceAccounts.0.email event.idm.entity.relations.entity.user.email_addresses כתובת האימייל של חשבון השירות הראשון ממופה.
resource.data.status event.idm.entity.entity.asset.deployment_status הערך ACTIVE אם הסטטוס הוא אחד מהערכים הבאים: RUNNING, ‏PROVISIONING, ‏STAGING, ‏STOPPING, ‏SUSPENDING, ‏SUSPENDED, ‏REPAIRING, ‏TERMINATED. אחרת, ממופה לכתובת DEPLOYMENT_STATUS_UNSPECIFIED.
event.idm.entity.entity.asset.attribute.cloud.availability_zone אזור הזמינות נוצר משילוב של השדות region ו-zone_suffix.
event.idm.entity.entity.asset.attribute.cloud.environment הוגדר לערך GOOGLE_CLOUD_PLATFORM.
event.idm.entity.entity.asset.attribute.cloud.project.name מזהה הפרויקט מחולץ משדה השם באמצעות ביטוי רגולרי.
event.idm.entity.entity.asset.attribute.cloud.project.resource_type הוגדר לערך CLOUD_PROJECT.
event.idm.entity.entity.asset.attribute.cloud.vpc.resource_type הוגדר לערך VPC_NETWORK.
event.idm.entity.entity.resource.resource_type הערך צריך להיות VIRTUAL_MACHINE אם המאפיין asset_type או assetType מכיל את הערך Instance.
event.idm.entity.entity.resource.type הערך צריך להיות VIRTUAL_MACHINE אם asset_type או assetType מכילים את הערך Instance.
event.idm.entity.metadata.collected_timestamp הערך מוגדר לחותמת הזמן של האירוע ב-Logstash.
event.idm.entity.metadata.entity_type הוגדר לערך ASSET.
event.idm.entity.metadata.product_name הוגדר לערך GCP Compute Context.
event.idm.entity.metadata.vendor_name הוגדר לערך Google Cloud Platform.
event.idm.entity.relations.entity.user.attribute.cloud.environment הוגדר לערך GOOGLE_CLOUD_PLATFORM.
event.idm.entity.relations.entity_type הוגדר לערך USER.
event.idm.entity.relations.relationship הוגדר לערך ADMINISTERS.

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