Movimentação lateral: disco de inicialização modificado anexado à instância

Este documento descreve um tipo de descoberta de ameaças no Security Command Center. Essas descobertas são geradas por detectores de ameaças quando detectam um risco nos recursos da nuvem. Para ver uma lista completa, consulte Índice de descobertas de ameaças.

Visão geral

Os registros de auditoria são examinados para detectar movimentos suspeitos de disco entre os recursos da instância do Compute Engine. Um disco de inicialização potencialmente modificado foi anexado ao Compute Engine.

O Event Threat Detection é a origem dessa descoberta.

Como responder

Para responder a essa descoberta:

Etapa 1: verificar os detalhes da descoberta

  1. Abra a descoberta Lateral Movement: Modify Boot Disk Attaching to Instance, conforme detalhado em Analisar uma descoberta. O painel de detalhes da descoberta é aberto na guia Resumo.
  2. Na guia Resumo, anote os valores dos seguintes campos.

    Em O que foi detectado:

    • E-mail principal: a conta de serviço que realizou a ação
    • Nome do serviço: o nome da API do Google Cloud serviço acessado pela conta de serviço
    • Nome do método: o método que foi chamado

Etapa 2: pesquisar métodos de ataque e resposta

  1. Use ferramentas da conta de serviço, como Activity Analyzer, para investigar a atividade da conta de serviço associada.
  2. Entre em contato com o proprietário da conta de serviço no campo E-mail do principal. Confirme se o proprietário legítimo realizou a ação.

Etapa 3: implementar a resposta

O plano de resposta a seguir pode ser apropriado para essa descoberta, mas também pode afetar as operações. Avalie cuidadosamente as informações coletadas na investigação para determinar a melhor maneira de resolver as descobertas.

  • Entre em contato com o proprietário do projeto em que a ação foi realizada.
  • Considere usar a Inicialização segura para suas instâncias de VM do Compute Engine.
  • Considere excluir a conta de serviço potencialmente comprometida, bem como trocar e excluir todas as chaves de acesso da conta de serviço do projeto comprometido. Após a exclusão, os aplicativos que usam a conta de serviço para autenticação perdem o acesso. Antes de prosseguir, a equipe de segurança precisa identificar todos os aplicativos afetados e trabalhar com os proprietários do aplicativo para garantir a continuidade de negócios.
  • Trabalhe com sua equipe de segurança para identificar recursos desconhecidos, inclusive instâncias do Compute Engine, snapshots, contas de serviço e usuários do IAM. Exclua recursos não criados com contas autorizadas.
  • Responda a notificações do Google Cloud Suporte.

Exemplo de JSON de descoberta

Confira a seguir um exemplo do JSON de descoberta.

{
  "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": {}
    }
  }
}

A seguir