Cloud Run Threat Detection 簡介

Cloud Run Threat Detection 是 Security Command Center 的內建服務,可持續監控支援的 Cloud Run 資源狀態,偵測最常見的執行階段攻擊。如果 Cloud Run Threat Detection 偵測到攻擊,會近乎即時地在 Security Command Center 中產生發現項目。

Cloud Run Threat Detection 執行階段偵測工具會監控 Cloud Run 資源中的可疑二進位檔和程式庫,並使用自然語言處理 (NLP) 技術偵測惡意 Bash 和 Python 程式碼。

此外,您也可以透過 Event Threat Detection 使用控制層偵測器。這些偵測器會監控貴機構或專案的 Cloud Logging 串流,偵測 Cloud Run 資源控制平面是否遭受潛在攻擊。

支援的資源

Cloud Run Threat Detection 會監控下列資源:

支援的執行環境

執行階段偵測器和控制平面偵測器支援的執行環境不同。

執行階段偵測工具支援的執行環境

Cloud Run Threat Detection 執行階段偵測器僅支援在第二代執行環境中執行的 Cloud Run 資源。啟用 Cloud Run Threat Detection 前,請注意下列事項:

  • 啟用 Cloud Run Threat Detection 後,您就無法建立在第一代執行環境中執行的 Cloud Run 服務或服務修訂版本。Cloud Run 服務必須使用第二代執行環境。建議您先在第二代執行環境測試工作負載,再啟用 Cloud Run Threat Detection。

  • 如要為服務啟用執行階段威脅偵測功能,請部署修訂版本,將服務的執行環境設為第二代或預設執行環境。

控制層偵測工具支援的執行環境

控制層偵測器支援第一代和第二代執行環境。

Cloud Run Threat Detection 執行階段威脅偵測的運作方式

啟用 Cloud Run 威脅偵測功能後,系統會從支援的 Cloud Run 資源收集遙測資料,分析可能表示執行階段攻擊的程序、指令碼和程式庫。偵測到事件時的執行路徑如下:

  1. Cloud Run 威脅偵測功能會使用監看程序,在 Cloud Run 工作負載的整個生命週期內收集容器和事件資訊。監控程序最多可能需要 20 秒才會啟動。
  2. Cloud Run Threat Detection 會分析收集到的事件資訊,判斷事件是否代表資安事件。這項工具會使用 NLP 分析 Bash 和 Python 指令碼,找出惡意程式碼。

    • 如果 Cloud Run 威脅偵測功能發現事件,就會將事件回報為 Security Command Center 的發現項目。

    • 如果 Cloud Run Threat Detection 未識別出事件,系統就不會儲存任何資訊。

    • 收集到的所有資料都是暫時性,不會永久儲存。

如要瞭解如何在Google Cloud 控制台中查看 Cloud Run Threat Detection 發現項目,請參閱「查看發現項目」。

已知問題

  • 如果 Cloud Run 服務或工作執行個體存留時間超過七天,就會停止傳送遙測資訊。
  • 如果監控程序在 Cloud Run 服務或工作的執行個體中過早停止,監控程序不會重新啟動。執行個體會停止將遙測資訊傳送至 Cloud Run 威脅偵測。 執行個體記錄中沒有 Cloud Run 威脅偵測記錄。沒有任何指標顯示監看程序已停止。

偵測工具

本節列出可用的執行階段和控制層偵測器。 隨著新的雲端威脅出現,我們會定期新增偵測器。

執行階段偵測器

Cloud Run Threat Detection 包含下列執行階段偵測器:

顯示名稱 API 名稱 說明
執行:已執行新增的惡意二進位檔 CLOUD_RUN_ADDED_MALICIOUS_BINARY_EXECUTED

執行符合下列條件的二進位檔:

  • 根據威脅情報判斷為惡意
  • 不屬於原始容器映像檔

如果執行了新增的惡意二進位檔案,表示攻擊者很可能已掌控工作負載,並正在執行惡意軟體。

執行:已載入新增的惡意資料庫 CLOUD_RUN_ADDED_MALICIOUS_LIBRARY_LOADED

已載入符合下列條件的程式庫:

  • 根據威脅情報判斷為惡意
  • 不屬於原始容器映像檔

如果載入新增的惡意程式庫,表示攻擊者可能已掌控工作負載,並正在執行惡意軟體。

執行:已執行內建的惡意二進位檔 CLOUD_RUN_BUILT_IN_MALICIOUS_BINARY_EXECUTED

執行符合下列條件的二進位檔:

  • 根據威脅情報判斷為惡意
  • 包含在原始容器映像檔中

如果執行內建的惡意二進位檔案,表示攻擊者正在部署惡意容器。他們可能已取得合法映像檔存放區或容器建構管道的控制權,並將惡意二進位檔注入容器映像檔。

執行:容器跳脫 CLOUD_RUN_CONTAINER_ESCAPE

容器中執行的程序嘗試使用已知的逸出技術或二進位檔,突破容器的隔離狀態。這類攻擊可讓攻擊者存取主機系統。根據情報資料,這些程序可能屬於威脅。

如果系統偵測到容器跳脫嘗試,可能表示攻擊者正在利用安全漏洞跳脫容器。因此,攻擊者可能會未經授權存取主機系統或更廣泛的基礎架構,進而入侵整個環境。

執行:Kubernetes 攻擊工具執行作業 CLOUD_RUN_KUBERNETES_ATTACK_TOOL_EXECUTION

環境中執行了 Kubernetes 專屬的攻擊工具,這可能表示攻擊者以 Kubernetes 叢集元件為目標。根據情報資料,這些攻擊工具可能構成威脅。

如果在 Kubernetes 環境中執行攻擊工具,可能表示攻擊者已取得叢集存取權,並使用該工具來利用 Kubernetes 特有的安全漏洞或設定。

執行:本機偵查工具執行作業 CLOUD_RUN_LOCAL_RECONNAISSANCE_TOOL_EXECUTION

執行了通常與容器或環境無關的本機偵查工具,表示有人嘗試收集內部系統資訊。這些偵察工具是根據情報資料,判斷為潛在威脅。

如果執行偵查工具,表示攻擊者可能正在嘗試繪製基礎架構地圖、找出安全漏洞,或收集系統設定資料,以規劃下一步行動。

執行作業:已執行惡意 Python (預先發布版) CLOUD_RUN_MALICIOUS_PYTHON_EXECUTED

機器學習模型將指定的 Python 程式碼判定為惡意程式碼。攻擊者可使用 Python 將工具或其他檔案從外部系統轉移到遭入侵的環境,並執行不含二進位檔的指令。

偵測器會使用 NLP 技術評估執行的 Python 程式碼內容。由於這種方法並非以簽章為依據,因此偵測器可以識別已知和新穎的 Python 程式碼。

執行:已執行修改過的惡意二進位檔 CLOUD_RUN_MODIFIED_MALICIOUS_BINARY_EXECUTED

執行符合下列條件的二進位檔:

  • 根據威脅情報判斷為惡意
  • 包含在原始容器映像檔中
  • 在執行階段從原始容器映像檔修改

如果執行遭修改的惡意二進位檔,表示攻擊者已掌控工作負載,並正在執行惡意軟體。

執行:已載入修改過的惡意資料庫 CLOUD_RUN_MODIFIED_MALICIOUS_LIBRARY_LOADED

已載入符合下列條件的程式庫:

  • 根據威脅情報判斷為惡意
  • 包含在原始容器映像檔中
  • 在執行階段從原始容器映像檔修改

如果載入的是經過修改的惡意程式庫,表示攻擊者很可能已掌控工作負載,並正在執行惡意軟體。

已執行惡意指令碼 CLOUD_RUN_MALICIOUS_SCRIPT_EXECUTED

機器學習模型將指定的 Bash 程式碼判定為惡意程式碼。攻擊者可以使用 Bash 將工具或其他檔案從外部系統轉移到遭入侵的環境,並在沒有二進位檔的情況下執行指令。

偵測器會使用 NLP 技術評估執行的 Bash 程式碼內容。由於這種方法並非以簽章為依據,偵測器可以識別已知和新的惡意 Bash 程式碼。

偵測到惡意網址 CLOUD_RUN_MALICIOUS_URL_OBSERVED

Cloud Run Threat Detection 在執行中程序的引數清單中,偵測到惡意網址。

偵測器會根據 Google 安全瀏覽服務維護的不安全網頁資源清單,檢查執行中程序的引數清單中觀察到的網址。如果網址遭誤判為網路釣魚網站或惡意軟體,請前往「 回報不正確的資料」頁面回報。

反向殼層 CLOUD_RUN_REVERSE_SHELL

程序已啟動,並將串流重新導向至遠端連線的通訊端。偵測器會尋找繫結至遠端通訊端的 stdin

攻擊者可透過反向 Shell,從遭入侵的工作負載與攻擊者控制的機器通訊。攻擊者隨後就能指揮及控制工作負載,例如將其納入殭屍網路。

非預期的子殼層 CLOUD_RUN_UNEXPECTED_CHILD_SHELL

通常不會叫用殼層的程序產生了殼層程序。

偵測器會監控所有程序執行作業。叫用殼層時,如果已知父項程序通常不會叫用殼層,偵測器就會產生發現項目。

控制層偵測工具

您可以透過 Event Threat Detection 使用下列控制層偵測器。 這些偵測器預設為啟用。管理這些偵測器的方式,與管理其他 Event Threat Detection 偵測器相同。詳情請參閱「使用 Event Threat Detection」一文。

顯示名稱 API 名稱 記錄來源類型 說明
影響:加密貨幣挖礦指令 CLOUD_RUN_JOBS_CRYPTOMINING_COMMANDS Cloud 稽核記錄
IAM 系統事件稽核記錄
執行期間,特定加密貨幣挖礦指令會附加至 Cloud Run 工作。發現項目預設會分類為「高」嚴重性。
執行:加密貨幣挖礦 Docker 映像檔 CLOUD_RUN_CRYPTOMINING_DOCKER_IMAGES Cloud 稽核記錄
IAM 系統事件稽核記錄
特定已知不良的 Docker 映像檔已附加至新的或現有的 Cloud Run 服務或工作。發現項目預設會分類為「高」嚴重性。
權限提升:預設 Compute Engine 服務帳戶 SetIAMPolicy CLOUD_RUN_SERVICES_SET_IAM_POLICY Cloud 稽核記錄
管理員活動記錄
預設的 Compute Engine 服務帳戶用於設定 Cloud Run 服務的 IAM 政策。如果無伺服器服務的 Compute Engine 權杖遭到入侵,這項操作可能會在攻擊後執行。發現結果預設會分類為「低」嚴重程度。
如要瞭解已淘汰和停用的規則,請參閱「淘汰項目」。

後續步驟