權限提升:休眠服務帳戶獲派敏感角色

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

總覽

系統將敏感 IAM 角色授予休眠的使用者管理服務帳戶。如果服務帳戶閒置超過 180 天,就會視為休眠帳戶。

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

回應方式

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

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

  1. 按照「查看發現項目」一文的說明,開啟Privilege Escalation: Dormant Service Account Granted Sensitive Role發現項目。
  2. 在「摘要」分頁的發現項目詳細資料中,記下下列欄位的值。

    「偵測到的內容」下方會顯示以下資訊:

    • 主體電子郵件地址:執行授權動作的使用者
    • 違規存取權授予。主體名稱:獲得敏感角色的休眠服務帳戶
    • 違規存取權授予。授予的角色:指派的敏感 IAM 角色

    在「受影響的資源」下方:

    • 資源顯示名稱:機構、資料夾或專案,其中休眠服務帳戶已獲授權敏感 IAM 角色。

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

  1. 使用服務帳戶工具 (例如活動分析器),調查休眠服務帳戶的活動。
  2. 與「主體電子郵件地址」欄位的擁有者聯絡。 確認正當擁有者是否執行了這項操作。

步驟 3:檢查記錄

  1. 在發現項目詳細資料面板的「摘要」分頁中,按一下「相關連結」下方的「Cloud Logging URI」連結,開啟「Logs Explorer」。

步驟 4:實作回應

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

  • 請與執行動作的專案擁有者聯絡。
  • 如果主體電子郵件的擁有者遭到入侵,請移除其存取權。
  • 從休眠服務帳戶中移除新指派的敏感 IAM 角色。
  • 請考慮刪除可能遭入侵的服務帳戶,並輪替及刪除可能遭入侵專案的所有服務帳戶存取金鑰。刪除後,使用該服務帳戶進行驗證的資源會失去存取權。請先由安全團隊找出所有受影響的資源,並與資源擁有者合作,確保業務持續運作。
  • 與安全團隊合作找出不熟悉的資源,包括 Compute Engine 執行個體、快照、服務帳戶和 IAM 使用者。刪除非授權帳戶建立的資源。
  • 回覆 Cloud Customer Care 的任何通知。
  • 如要限制可建立服務帳戶的使用者,請使用 Organization Policy Service
  • 如要找出並修正過於寬鬆的角色,請使用 IAM 建議工具

發現項目 JSON 範例

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

{
  "findings": {
    "access": {
      "principalEmail": "PRINCIPAL_EMAIL",
      "callerIp": "IP_ADDRESS",
      "callerIpGeo": {
        "regionCode": "REGION_CODE"
      },
      "serviceName": "cloudresourcemanager.googleapis.com",
      "methodName": "SetIamPolicy",
    },
    "assetDisplayName": "ASSET_DISPLAY_NAME",
    "assetId": "organizations/ORGANIZATION_ID/assets/ASSET_ID",
    "canonicalName": "projects/PROJECT_NUMBER/sources/SOURCE_ID/findings/FINDING_ID",
    "category": "Privilege Escalation: Dormant Service Account Granted Sensitive Role",
    "cloudDlpInspection": {},
    "contacts": {
      "security": {
        "contacts": [
          {
            "email": "EMAIL_ADDRESS_1"
          },
          {
            "email": "EMAIL_ADDRESS_2"
          }
        ]
      },
      "technical": {
        "contacts": [
          {
            "email": "EMAIL_ADDRESS_3"
          },
          {
            "email": "EMAIL_ADDRESS_4"
          }
        ]
      }
    },
    "createTime": "CREATE_TIMESTAMP",
    "database": {},
    "eventTime": "EVENT_TIMESTAMP",
    "exfiltration": {},
    "findingClass": "THREAT",
    "findingProviderId": "organizations/ORGANIZATION_ID/firstPartyFindingProviders/etd",
    "iamBindings": [
      {
        "action": "ADD",
        "role": "SENSITIVE_IAM_ROLE",
        "member": "serviceAccount:DORMANT_SERVICE_ACCOUNT"
      }
    ],
    "indicator": {},
    "kernelRootkit": {},
    "kubernetes": {},
    "mitreAttack": {
      "primaryTactic": "INITIAL_ACCESS",
      "primaryTechniques": [
        "VALID_ACCOUNTS",
        "CLOUD_ACCOUNTS"
      ]
    },
    "mute": "UNDEFINED",
    "name": "organizations/ORGANIZATION_ID/sources/SOURCE_ID/findings/FINDING_ID",
    "parent": "organizations/ORGANIZATION_ID/sources/SOURCE_ID",
    "parentDisplayName": "Event Threat Detection",
    "resourceName": "RESOURCE_FULL_NAME",
    "severity": "SEVERITY_CLASSIFICATION",
    "state": "ACTIVE",
    "vulnerability": {},
    "workflowState": "NEW"
  },
  "resource": {
    "name": "RESOURCE_FULL_NAME",
    "display_name": "RESOURCE_DISPLAY_NAME",
    "project_name": "//RESOURCE/projects/PROJECT_NUMBER",
    "project_display_name": "PROJECT_ID",
    "parent_name": "RESOURCE_PARENT_NAME",
    "parent_display_name": "PARENT_DISPLAY_NAME",
    "type": "RESOURCE_TYPE",
    "folders": [
      {
        "resourceFolderDisplayName": "RESOURCE_FOLDER_DISPLAY_NAME",
        "resourceFolder": "RESOURCE_FOLDER_ID"
      }
    ]
  },
  "sourceProperties": {
    "sourceId": {
      "projectNumber": "PROJECT_NUMBER",
      "customerOrganizationNumber": "ORGANIZATION_ID"
    },
    "detectionCategory": {
      "ruleName": "sensitive_role_added_to_dormant_sa"
    },
    "detectionPriority": "HIGH",
    "affectedResources": [
      {
        "gcpResourceName": "GOOGLE_CLOUD_RESOURCE_NAME"
      }
    ],
    "evidence": [
      {
        "sourceLogId": {
          "projectId": "PROJECT_ID",
          "resourceContainer": "projects/PROJECT_ID",
          "timestamp": {
            "seconds": "1678897327",
            "nanos": 26483000
          },
          "insertId": "INSERT_ID"
        }
      }
    ],
    "properties": {},
    "findingId": "FINDING_ID",
    "contextUris": {
      "mitreUri": {
        "displayName": "MITRE Link",
        "url": "https://attack.mitre.org/techniques/T1078/004/"
      },
      "cloudLoggingQueryUri": [
        {
          "displayName": "Cloud Logging Query Link",
          "url": "LINK_TO_LOG_QUERY"
        }
      ]
    }
  }
}

後續步驟