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

במסמך הזה מתואר סוג של ממצא איום ב-Security Command Center. ממצאי האיומים נוצרים על ידי מזהי איומים כשהם מזהים איום פוטנציאלי במשאבי הענן שלכם. רשימה מלאה של ממצאי האיומים הזמינים מופיעה באינדקס של ממצאי האיומים.

סקירה כללית

יומני הביקורת נבדקים כדי לזהות תנועות חשודות של דיסקים בין משאבי מכונות ב-Compute Engine. דיסק אתחול שעבר שינוי אפשרי צורף ל-Compute Engine.

המקור של הממצא הזה הוא Event Threat Detection.

איך מגיבים

כדי להגיב לממצא הזה:

שלב 1: בדיקת פרטי הממצא

  1. פותחים את הממצא Lateral Movement: Modify Boot Disk Attaching to Instance, כמו שמתואר במאמר בדיקת הממצאים. חלונית הפרטים של הממצא נפתחת בכרטיסייה סיכום.
  2. בכרטיסייה סיכום, שימו לב לערכים של השדות הבאים.

    בקטע מה זוהה:

    • Principal email: חשבון השירות שביצע את הפעולה
    • שם השירות: שם ה-API של Google Cloud השירות שאליו הייתה לחשבון השירות גישה
    • שם השיטה: השיטה שהופעלה

שלב 2: מחקר על שיטות התקפה ותגובה

  1. כדי לבדוק את הפעילות של חשבון השירות המשויך, אפשר להשתמש בכלים לחשבונות שירות, כמו כלי לניתוח פעילות.
  2. פונים לבעלים של חשבון השירות בשדה Principal email (כתובת האימייל של חשבון המשתמש). בודקים אם הבעלים החוקי ביצע את הפעולה.

שלב 3: מיישמים את התגובה

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

  • צריך לפנות לבעלים של הפרויקט שבו בוצעה הפעולה.
  • מומלץ להשתמש בהפעלה מאובטחת במכונות הווירטואליות של Compute Engine.
  • מומלץ למחוק את חשבון השירות שעלול להיות פרוץ, לבצע רוטציה ולמחוק את כל מפתחות הגישה של חשבון השירות בפרויקט שעלול להיות פרוץ. אחרי המחיקה, לאפליקציות שמשתמשות בחשבון השירות לצורך אימות לא תהיה יותר גישה. לפני שממשיכים, צוות האבטחה צריך לזהות את כל האפליקציות המושפעות ולעבוד עם בעלי האפליקציות כדי להבטיח את המשכיות העסקית.
  • כדאי לעבוד עם צוות האבטחה כדי לזהות משאבים לא מוכרים, כולל מכונות ב-Compute Engine, תמונות מצב, חשבונות שירות ומשתמשי IAM. מחיקת משאבים שלא נוצרו באמצעות חשבונות מורשים.
  • להשיב לכל ההתראות מ Google Cloud התמיכה.

דוגמה למציאת JSON

הנה דוגמה ל-JSON של הממצא.

{
  "finding": {
    "access": {
      "principalEmail": "PRINCIPAL_EMAIL",
      "callerIpGeo": {},
      "serviceName": "compute.googleapis.com",
      "methodName": "v1.compute.instances.attachDisk",
    },
    "application": {},
    "attackExposure": {},
    "canonicalName": "projects/PROJECT_NUMBER/sources/SOURCE_ID/locations/global/findings/FINDING_ID",
    "category": "Lateral Movement: Modify Boot Disk Attaching to Instance",
    "cloudDlpDataProfile": {},
    "cloudDlpInspection": {},
    "createTime": "2024-02-01T23:55:17.589Z",
    "database": {},
    "eventTime": "2024-02-01T23:55:17.396Z",
    "exfiltration": {},
    "findingClass": "THREAT",
    "findingProviderId": "organizations/ORGANIZATION_NUMBER/firstPartyFindingProviders/etd",
    "indicator": {},
    "kernelRootkit": {},
    "kubernetes": {},
    "logEntries": [
      {
        "cloudLoggingEntry": {
          "insertId": "INSERT_ID",
          "logId": "cloudaudit.googleapis.com/activity",
          "resourceContainer": "projects/PROJECT_NUMBER",
          "timestamp": "2024-02-01T23:55:15.017887Z"
        }
      }
    ],
    "mitreAttack": {
      "primaryTactic": "TACTIC_UNSPECIFIED"
    },
    "mute": "UNDEFINED",
    "name": "organizations/ORGANIZATION_NUMBER/sources/SOURCE_ID/locations/LOCATION/findings/FINDING_ID",
    "parent": "organizations/ORGANIZATION_NUMBER/sources/SOURCE_ID/locations/LOCATION",
    "parentDisplayName": "Event Threat Detection",
    "resourceName": "//compute.googleapis.com/projects/PROJECT_NUMBER/zones/ZONE_ID/instances/INSTANCE_ID",
    "securityPosture": {},
    "severity": "LOW",
    "state": "ACTIVE",
    "vulnerability": {},
    "externalSystems": {}
  },
  "resource": {
    "name": "//compute.googleapis.com/projects/PROJECT_NUMBER/zones/ZONE_ID/instances/INSTANCE_ID",
    "displayName": "INSTANCE_ID",
    "type": "google.compute.Instance",
    "gcpMetadata": {
      "project": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER",
      "projectDisplayName": "PROJECT_NUMBER",
      "parent": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER",
      "parentDisplayName": "PROJECT_NUMBER",
      "folders": [
        {
          "resourceFolder": "//cloudresourcemanager.googleapis.com/folders/FOLDER_NUMBER",
          "resourceFolderDisplayName": "FOLDER_NUMBER"
        }
      ],
      "organization": "organizations/ORGANIZATION_NUMBER"
    }
  },
  "sourceProperties": {
    "sourceId": {
      "projectNumber": "PROJECT_NUMBER",
      "customerOrganizationNumber": "ORGANIZATION_NUMBER"
    },
    "detectionCategory": {
      "ruleName": "modify_boot_disk",
      "subRuleName": "attach_to_instance"
    },
    "detectionPriority": "LOW",
    "affectedResources": [
      {
        "gcpResourceName": "//compute.googleapis.com/projects/PROJECT_NUMBER/zones/ZONE_ID/instances/INSTANCE_ID"
      },
      {
        "gcpResourceName": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER"
      },
      {
        "gcpResourceName": "https://www.googleapis.com/compute/v1/projects/PROJECT_NUMBER/zones/ZONE_ID/disks/INSTANCE_ID"
      },
      {
        "gcpResourceName": "projects/PROJECT_NUMBER/zones/ZONE_ID/instances/INSTANCE_ID"
      }
    ],
    "evidence": [
      {
        "sourceLogId": {
          "projectId": "PROJECT_NUMBER",
          "resourceContainer": "PROJECT_NUMBER",
          "timestamp": {
            "seconds": "1706831715",
            "nanos": 17887000
          },
          "insertId": "INSERT_ID",
          "logId": "cloudaudit.googleapis.com/activity"
        }
      }
    ],
    "properties": {
      "diskId": "https://www.googleapis.com/compute/v1/projects/PROJECT_NUMBER/zones/ZONE_ID/disks/DISK_ID",
      "targetInstance": "projects/PROJECT_NUMBER/zones/ZONE_ID/instances/INSTANCE_ID",
      "workerInstances": [
        "projects/PROJECT_NUMBER/zones/ZONE_ID/instances/INSTANCE_ID"
      ],
      "bootDiskPayloads": [
        {
          "instanceId": "projects/PROJECT_NUMBER/zones/ZONE_ID/instances/INSTANCE_ID",
          "operation": "MODIFY_BOOT_DISK_ATTACH",
          "principalEmail": "PRINCIPAL_EMAIL",
          "eventTime": "2024-02-01T23:55:06.706640Z"
        },
        {
          "instanceId": "projects/PROJECT_NUMBER/zones/ZONE_ID/instances/INSTANCE_ID",
          "operation": "MODIFY_BOOT_DISK_DETACH",
          "principalEmail": "PRINCIPAL_EMAIL",
          "eventTime": "2024-02-01T23:55:05.608631Z"
        }
      ]
    },
    "findingId": "FINDING_ID",
    "contextUris": {
      "mitreUri": {
        "displayName": "MITRE Link",
        "url": "https://attack.mitre.org/techniques/T1570/"
      },
      "cloudLoggingQueryUri": [
        {
          "displayName": "Cloud Logging Query Link",
          "url": "https://console.cloud.google.com/logs/query;query=timestamp%3D%222024-02-01T23:55:15.017887Z%22%0AinsertId%3D%22INSERT_ID?project=PROJECT_NUMBER"
        }
      ],
      "relatedFindingUri": {}
    }
  }
}

המאמרים הבאים