二進位漂移偵測 (預覽)
當容器執行不是來自原始映像的可執行檔時,就會發生二進位漂移。 這可以是故意和合法的,也可以表示攻擊。 由於容器映像應該是固定的,因此從原始映像中未包含的二進位檔啟動的任何進程都應該評估為可疑活動。
二進位漂移偵測功能會在來自映像的工作負載與容器中執行的工作負載之間有差異時對您發出警示。 它會偵測容器內未經授權的外部進程,以警示您潛在的安全性威脅。 您可以定義漂移原則來指定應該產生警示的條件,協助您區分合法活動與潛在威脅。
二進位漂移偵測已整合到適用於容器的 Defender 方案中,並可在公開預覽版中取得。 其適用於 Azure (AKS)、Amazon (EKS) 和 Google (GKE) 雲端。
必要條件
- 若要使用二進位漂移偵測,您必須執行適用於容器的 Defender 感測器,其可在 1.29 或更高 版本 的AWS、GCP 和 AKS 中使用。
- 訂用帳戶和連接器上必須啟用適用於容器的 Defender 感測器。
- 若要建立和修改漂移原則,您需要租使用者的安全性系統管理員或更高許可權。 若要檢視漂移原則,您需要租使用者的安全性讀取器或更高許可權。
元件
下列元件是二進位漂移偵測的一部分:
- 增強型感測器,能夠偵測二進位漂移
- 原則設定選項
- 新的二進位漂移警示
設定漂移原則
建立漂移原則,以定義何時應該產生警示。 每個原則都是由規則所組成,這些規則會定義應產生警示的條件。 這可讓您根據特定需求量身打造此功能,減少誤判。 您可以為特定範圍或叢集、映像、Pod、Kubernetes 標籤或命名空間設定較高的優先順序規則,以建立排除項目。
若要建立和設定原則,請遵循下列步驟:
在適用於雲端的 Microsoft Defender 中 - 移至 環境設定。 選取 [容器漂移原則]。
您目前已收到兩個規則:Kube-System 命名空間上的警示 規則和 預設二進位漂移 規則。 預設規則是特殊規則,如果比對之前沒有其他規則,則會套用至所有項目。 您只能修改其動作,無論是 漂移偵測警示,或將它傳回預設 忽略漂移偵測。 Kube-System 命名空間上的警示 規則是現成的建議,可以像任何其他規則一樣進行修改。
選取 [新增規則] 以新增規則。 側邊面板隨即出現,您可以在其中設定規則。
若要設定規則,請定義下列欄位:
- 規則名稱:規則的描述性名稱。
- 動作:如果規則應該產生警示或 忽略漂移偵測 ,請選取 [漂移偵測警示],以將其排除在警示產生中。
- 範圍描述:套用規則的範圍描述。
- 雲端範圍:套用規則的雲端提供者。 您可以選擇 Azure、AWS 或 GCP 的任何組合。 如果您展開雲端提供者,您可以選取特定的訂用帳戶。 如果您未選取整個雲端提供者,則新增至雲端提供者的新訂用帳戶將不會包含在規則中。
- 資源範圍:您可以在這裡根據下列類別新增條件:容器名稱、映像名稱、命名空間、Pod 標籤、Pod 名稱、或 叢集名稱。 然後選擇運算子:Starts with、End with、Equals 或 Contains。 最後,輸入要比對的值。 您可以選取 [+新增條件],視需要新增多個條件。
- 允許進程清單:允許在容器中執行的進程清單。 如果偵測到未在此清單上的進程,就會產生警示。
以下是一個規則範例,可讓
dev1.exe
進程在 Azure 雲端範圍的容器中執行,其映像名稱開頭為 Test123 或 env123:選取 [套用] 來儲存規則。
設定規則之後,請在清單上向上或向下拖曳規則,以變更其優先順序。 優先順序最高的規則會先進行評估。 如果有相符的項目,它會產生警示或忽略它(根據為該規則選擇的項目),而評估會停止。 如果找不到相符的項目,則會評估下一個規則。 如果沒有任何規則的相符項目,則會套用預設規則。
若要編輯現有的規則,請選擇規則,然後選取 [編輯]。 這會開啟側邊面板,您可以在其中變更規則。
您可以選取 [複製規則] 建立規則複本。 如果您想要建立僅進行少量變更的類似規則,這非常有用。
若要刪除規則,請選取 [刪除規則]。
設定規則之後,請選取 [儲存] 以套用變更並建立原則。
在 30 分鐘內,會以新的原則更新受保護叢集上的感測器。
監視及管理警示
設計警示系統的目的是通知您任何出現二進位漂移的情況,協助您維護容器映像的完整性。 如果偵測到未經授權之外部進程符合您定義的原則條件,就會產生嚴重性較高的警示,以供您檢閱。
視需要調整原則
根據您收到的警示和檢閱警示,您可能會發現有必要在二進位漂移原則中調整規則。 這可能涉及精簡條件、新增規則,或移除產生太多誤判的準則。 目標是確保定義的二進位漂移原則與其規則有效平衡安全性需求與作業效率。
二進位漂移偵測的有效性仰賴您主動參與設定、監視和調整原則,以符合您環境的獨特需求。