權限提升:將敏感角色授予混合群組

本文說明 Security Command Center 中的威脅發現項目類型。威脅偵測工具偵測到雲端資源中可能存在威脅時,就會產生威脅發現項目。如需可用威脅發現項目的完整清單,請參閱威脅發現項目索引

總覽

含有外部成員的 Google 群組獲授敏感角色或權限

Event Threat Detection 是這項發現項目的來源。

回應方式

下列應變計畫可能適用於這項發現,但也可能影響作業。 請仔細評估調查期間收集到的資訊,找出解決問題的最佳方式。

如要回應這項發現項目,請按照下列步驟操作:

步驟 1:查看調查結果詳細資料

  1. 按照「查看發現項目」一文的說明,開啟Privilege Escalation: Sensitive Role Granted To Hybrid Group發現項目。系統會開啟發現項目的詳細資料面板,並顯示「摘要」分頁。

  2. 在「摘要」分頁中,查看下列各節的資訊:

    • 偵測到的內容,尤其是下列欄位:
      • 主要電子郵件地址:進行變更的帳戶,可能已遭盜用。
    • 受影響的資源,尤其是下列欄位:
      • 資源完整名稱:授予新角色的資源。
    • 相關連結,尤其是下列欄位:
      • Cloud Logging URI:記錄項目連結。
      • MITRE ATT&CK 方法:連結至 MITRE ATT&CK 文件。
      • 相關發現項目:任何相關發現項目的連結。
    1. 按一下「JSON」分頁標籤。
    2. 請注意 JSON 中的下列欄位。
    • groupName:變更的 Google 群組
    • bindingDeltas:新授予這個群組的敏感角色。

步驟 2:查看群組權限

  1. 前往 Google Cloud 控制台的「IAM」頁面。

    前往「IAM」頁面

  2. 在「篩選」欄位中,輸入 groupName 中列出的帳戶名稱。

  3. 查看授予群組的敏感角色。

  4. 如果不需要新加入的敏感角色,請撤銷該角色

    您必須具備特定權限,才能管理機構或專案中的角色。詳情請參閱「必要權限」。

步驟 3:檢查記錄

  1. 在發現項目詳細資料面板的「摘要」分頁中,按一下「Cloud Logging URI」連結,開啟「Logs Explorer」
  2. 必要時,請選取專案。

  3. 在載入的頁面中,使用下列篩選條件檢查 Google 群組設定變更的記錄:

    • protoPayload.methodName="SetIamPolicy"
    • protoPayload.authenticationInfo.principalEmail="principalEmail"

步驟 4:研究攻擊和應變方法

  1. 查看這類發現項目的 MITRE ATT&CK 架構項目:「有效帳戶」
  2. 如要判斷是否需要採取其他補救措施,請將調查結果與 MITRE 研究結合。

發現項目 JSON 範例

以下是發現項目 JSON 的範例。

{
  "findings": {
    "access": {
      "principalEmail": "PRINCIPAL_EMAIL",
      "callerIp": "IP_ADDRESS",
      "callerIpGeo": {},
      "serviceName": "cloudresourcemanager.googleapis.com",
      "methodName": "SetIamPolicy",
    },
    "assetDisplayName": "PROJECT_NAME",
    "assetId": "organizations/ORGANIZATION_NUMBER/assets/ASSET_ID",
    "canonicalName": "projects/PROJECT_NUMBER/sources/SOURCE_ID/findings/FINDING_ID",
    "category": "Privilege Escalation: Sensitive Role Granted To Hybrid Group",
    "contacts": {
      "technical": {
        "contacts": [
          {
            "email": "EMAIL_ADDRESS"
          },
          {
            "email": "EMAIL_ADDRESS"
          },
          {
            "email": "EMAIL_ADDRESS"
          }
        ]
      }
    },
    "createTime": "2022-12-22T00:31:58.242Z",
    "database": {},
    "eventTime": "2022-12-22T00:31:58.151Z",
    "exfiltration": {},
    "findingClass": "THREAT",
    "findingProviderId": "organizations/ORGANIZATION_NUMBER/firstPartyFindingProviders/etd",
    "iamBindings": [
      {
        "action": "ADD",
        "role": "roles/iam.securityAdmin",
        "member": "group:GROUP_NAME@ORGANIZATION_NAME",
      }
    ],
    "indicator": {},
    "kernelRootkit": {},
    "kubernetes": {},
    "mitreAttack": {
      "primaryTactic": "INITIAL_ACCESS",
      "primaryTechniques": [
        "VALID_ACCOUNTS",
        "CLOUD_ACCOUNTS"
      ]
    },
    "mute": "UNDEFINED",
    "name": "organizations/ORGANIZATION_NUMBER/sources/SOURCE_ID/findings/FINDING_ID",
    "parent": "organizations/ORGANIZATION_NUMBER/sources/SOURCE_ID",
    "parentDisplayName": "Event Threat Detection",
    "resourceName": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER",
    "severity": "HIGH",
    "sourceDisplayName": "Event Threat Detection",
    "state": "ACTIVE",
    "vulnerability": {},
    "workflowState": "NEW"
  },
  "resource": {
    "name": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER",
    "display_name": "PROJECT_NAME",
    "project_name": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER",
    "project_display_name": "PROJECT_NAME",
    "parent_name": "//cloudresourcemanager.googleapis.com/folders/FOLDER_NUMBER",
    "parent_display_name": "FOLDER_ID",
    "type": "google.cloud.resourcemanager.Project",
    "folders": [
      {
        "resourceFolderDisplayName": "FOLDER_ID",
        "resourceFolder": "//cloudresourcemanager.googleapis.com/folders/FOLDER_NUMBER"
      }
    ]
  },
  "sourceProperties": {
    "sourceId": {
      "projectNumber": "PROJECT_NUMBER",
      "customerOrganizationNumber": "ORGANIZATION_NUMBER"
    },
    "detectionCategory": {
      "technique": "persistence",
      "indicator": "audit_log",
      "ruleName": "sensitive_role_to_group_with_external_member"
    },
    "detectionPriority": "HIGH",
    "affectedResources": [
      {
        "gcpResourceName": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER"
      }
    ],
    "evidence": [
      {
        "sourceLogId": {
          "projectId": "PROJECT_ID",
          "resourceContainer": "projects/PROJECT_ID",
          "timestamp": {
            "seconds": "1671669114",
            "nanos": 715318000
          },
          "insertId": "INSERT_ID"
        }
      }
    ],
    "properties": {
      "sensitiveRoleToHybridGroup": {
        "principalEmail": "PRINCIPAL_EMAIL",
        "groupName": "group:GROUP_NAME@ORGANIZATION_NAME",
        "bindingDeltas": [
          {
            "action": "ADD",
            "role": "roles/iam.securityAdmin",
            "member": "group:GROUP_NAME@ORGANIZATION_NAME",
          }
        ],
        "resourceName": "projects/PROJECT_ID"
      }
    },
    "findingId": "FINDING_ID",
    "contextUris": {
      "mitreUri": {
        "displayName": "MITRE Link",
        "url": "https://attack.mitre.org/techniques/T1078/004/"
      }
    }
  }
}

後續步驟