處理遭盜用的 Google Cloud 憑證

Google Cloud 憑證可控管對 Google Cloud上代管資源的存取權。為了確保您的資料安全無虞,不受攻擊者的侵擾,處理憑證時務必要格外謹慎。

建議您保護所有憑證,避免意外遭他人存取。 Google Cloud 這類憑證包括但不限於:

Google Cloud CLI 憑證會儲存在使用者的主目錄中。您可以使用 Google Cloud CLI 中的 gcloud auth list 指令列出這些項目。應用程式預設憑證會儲存在開發人員的工作站。瀏覽器 Cookie 是瀏覽器專用的,但通常儲存在開發人員工作站中。

如果您懷疑有任何憑證遭駭,則應立即採取行動,減輕遭駭對Google Cloud 帳戶造成的影響。

監控憑證是否外洩

如要監控潛在的入侵行為,請考慮下列事項:

確保安全營運中心 (SOC) 收到即時通知,並具備快速應對可疑憑證遭盜用事件所需的劇本、工具和存取權。使用 Security Command Center Enterprise 方案,啟用 SIEM 和 SOAR 功能,例如應對手冊、回應工作流程和自動化動作。您也可以將 Security Command Center 與現有 SIEM 整合,或將記錄匯入 Google Security Operations,以進行進一步分析。

保護 Google Cloud 資源,避免憑證遭盜用

如果您懷疑憑證遭到盜用,請盡快完成下列各節中的步驟,保護資源安全。

撤銷並重新核發憑證

如果懷疑憑證遭盜用,請撤銷並重新核發憑證。進行這類作業時請小心,確保不會因撤銷憑證而導致服務中斷。

一般來說,如要重新核發憑證,請產生新憑證,推送給所有需要憑證的服務和使用者,然後撤銷舊憑證。

下列各節提供每種憑證的具體操作說明。

更換服務帳戶金鑰

  1. 前往 Google Cloud 控制台的「Service accounts」(服務帳戶) 頁面。

    前往「Service accounts」(服務帳戶)

  2. 找出受影響的服務帳戶。

  3. 為服務帳戶建立新金鑰。

  4. 將新金鑰推送到所有使用了舊金鑰的位置。

  5. 刪除舊金鑰。

詳情請參閱「建立服務帳戶」。

重新產生 API 金鑰

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

    前往「憑證」

  2. 使用「建立憑證」按鈕建立新的 API 金鑰。將新金鑰設定為與遭駭的 API 金鑰相同。API 金鑰的限制必須一致,否則服務可能會中斷。

  3. 將 API 金鑰推送到所有使用了舊金鑰的位置。

  4. 刪除舊金鑰。

詳情請參閱使用 API 金鑰進行驗證

重設 OAuth2 用戶端 ID 密鑰

變更用戶端 ID 密鑰後,服務在密鑰輪替期間會暫時中斷。

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

    前往「憑證」

  2. 選取遭入侵的 OAuth2 用戶端 ID 並進行編輯。

  3. 按一下「Reset Secret」(重設密鑰)

  4. 將新密鑰推送到應用程式。

詳情請參閱「設定 OAuth 2.0」和「使用 OAuth 2.0 存取 Google API」。

以管理員身分移除 Google Cloud CLI 憑證

Google Workspace 管理員可以從已連結應用程式的使用者清單中,移除 Google Cloud CLI 的存取權。詳情請參閱「查看及移除第三方應用程式的存取權」。

使用者再次存取 Google Cloud CLI 時,系統會自動要求他們重新授權應用程式。

以使用者身分移除 Google Cloud CLI 憑證

  1. 開啟有權存取您 Google 帳戶的應用程式清單。

  2. 從已連結的應用程式清單中移除 Google Cloud CLI。

當您再次存取 Google Cloud CLI 時,系統會自動要求您重新授權應用程式。

以管理員身分撤銷應用程式預設憑證

如果懷疑應用程式預設憑證遭盜用,可以撤銷憑證。這個程序可能會導致暫時中斷服務,直到重新建立憑證檔案為止。

Google Workspace 管理員可以從使用者的已連結應用程式清單中,移除 Google Auth Library 的存取權。詳情請參閱「查看及移除第三方應用程式的存取權」。

以使用者身分撤銷應用程式預設憑證

如果您懷疑自己建立的應用程式預設憑證遭到入侵,可以撤銷該憑證。這個程序可能會導致暫時中斷服務,直到重新建立憑證檔案為止。只有遭盜用憑證的擁有者才能完成這項程序。

  1. 安裝並初始化 Google Cloud CLI (如果尚未完成)。

  2. 使用使用者身分授權 gcloud CLI,而非服務帳戶:

     gcloud auth login
    

    詳情請參閱「為 gcloud CLI 提供授權」。

  3. 撤銷憑證:

      gcloud auth application-default revoke
    
  4. 視需要刪除 application_default_credentials.json 檔案。位置會因作業系統而異:

    • Linux、macOS:$HOME/.config/gcloud/
    • Windows:%APPDATA%\gcloud\
  5. 重新建立憑證檔案:

     gcloud auth application-default login
    

以管理員身分撤銷瀏覽器 Cookie

如果懷疑瀏覽器 Cookie 遭到入侵,Google Workspace 管理員可以登出使用者帳戶

此外,請立即強制變更密碼

這些動作會撤銷所有現有的 Cookie,且使用者會被要求再次登入。

以使用者身分撤銷瀏覽器 Cookie

如果懷疑瀏覽器 Cookie 遭駭,請登出 Google 帳戶並立即變更密碼。

這些動作會使所有現有 Cookie 失效。下次存取「Google Cloud」時,必須重新登入。

檢查未經授權的存取行為和資源

撤銷遭盜用的憑證並還原服務後,請檢查 Google Cloud 資源的所有存取記錄。您可以使用 Logging 或 Security Command Center。

在「記錄」中,完成下列步驟:

  1. 在Google Cloud 控制台中查看稽核記錄

    前往記錄檔探索工具

  2. 搜尋所有可能受影響的資源,並確認所有帳戶活動 (尤其是與遭盜用憑證相關的活動) 皆符合預期。

在 Security Command Center 中完成下列步驟:

  1. 前往 Google Cloud 控制台的 Security Command Center「發現項目」頁面。

    前往「發現項目」

  2. 視需要選取 Google Cloud 專案或機構。

  3. 在「快速篩選器」部分中,按一下適當的篩選器,即可在「發現項目查詢結果」表格中顯示所需發現項目。舉例來說,如果您在「來源顯示名稱」子區段中選取「Event Threat Detection」或「Container Threat Detection」,結果中只會顯示所選服務的發現項目。

    表格會填入所選來源的發現項目。

  4. 如要查看特定發現項目的詳細資料,請按一下 Category 下方的發現項目名稱。發現項目詳細資料窗格會展開,顯示發現項目詳細資料的摘要。

  5. 如要顯示因同一位使用者的動作而產生的所有發現項目,請按照下列步驟操作:

    1. 在尋找詳細資料窗格中,複製「主要電子郵件」旁的電子郵件地址。
    2. 關閉窗格。
    3. 在「Query editor」(查詢編輯器) 中輸入以下查詢:

      access.principal_email="USER_EMAIL"
      

      USER_EMAIL 替換為您先前複製的電子郵件地址。

      Security Command Center 會顯示與您指定使用者所採取動作相關的所有發現項目。

刪除所有未經授權的資源

請確認遭盜用的憑證並未存取任何非預期的資源,例如 VM、App Engine 應用程式、服務帳戶、Cloud Storage 值區等。

確定已找出所有未經授權的資源後,您可以選擇立即刪除這些資源。這對 Compute Engine 資源而言特別重要,因為攻擊者可能會利用遭入侵的帳戶竊取資料,或入侵您的實際工作環境系統。

或者,您可以嘗試隔離未經授權的資源,讓您自己的鑑識團隊進行額外分析。

與 Cloud Customer Care 聯絡

如需協助尋找調查和緩解步驟所需的記錄和工具,請與 Google Cloud 客戶服務聯絡,並開啟支援案件

避免憑證遭盜用的最佳做法

本節說明可採取的最佳做法,協助您避免憑證遭盜用。

將憑證與程式碼分開

請將您的憑證和原始碼分開管理及儲存。常常有人不小心將憑證和原始碼一起推送到 GitHub 等原始碼管理網站,導致憑證容易受到攻擊。

如果您使用 GitHub 或其他公開存放區,可以導入「異常偵測」或「機密掃描」等工具,在 GitHub 存放區中發現外洩的機密時收到警告。如要避免將金鑰提交至 GitHub 存放區,建議使用 git-secrets 等工具。

使用 Secret ManagerHashicorp Vault 等密鑰管理解決方案儲存密鑰、定期輪替密鑰,並套用最低權限。

實作服務帳戶最佳做法

為保護服務帳戶,請參閱服務帳戶的最佳做法

限制工作階段長度

如要強制定期重新驗證,請限制 Google 和 Google Cloud 帳戶的連線有效時間。詳情請參閱下列文章:

使用 VPC Service Controls 限制存取權

如要降低遭盜用憑證的影響,請使用 VPC Service Controls 建立服務範圍。設定 VPC Service Controls 後,範圍內的資源只能與範圍內的其他資源通訊。