適用於儲存體的 Defender 中的惡意程式碼掃描

已完成

適用於儲存體的 Defender 中的惡意程式碼掃描,以近即時的方式對上傳的內容執行完整惡意程式碼掃描,並且使用 Microsoft Defender 防毒軟體功能,協助 Azure Blob 儲存體抵擋惡意內容。 其設計目的是為了協助滿足處理不受信任內容的安全性與合規性需求。

惡意程式碼掃描功能是無代理程式軟體即服務 (SaaS) 解決方案,可讓您大規模進行簡單的設定,完全不需要維護,並且支援將回應大規模自動化。

此圖顯示惡意程式碼掃描如何以近即時的方式在上傳時偵測惡意檔案。

惡意程式碼上傳是雲端儲存空間最大的威脅

上傳至雲端儲存體的內容可能是惡意程式碼。 儲存體帳戶可以是組織的惡意程式碼進入點和惡意程式碼發佈點。 若要保護組織免受此威脅,雲端儲存體中的內容必須先掃描惡意程式碼,才能存取。

適用於儲存體的 Defender 中的惡意程式碼掃描,可協助保護儲存體帳戶免受惡意內容影響

  • 內建的 SaaS 解決方案,允許零維護大規模啟用簡單功能。
  • 使用 Microsoft Defender 防毒軟體 (MDAV) 的 完整反惡意程式碼功能,攔截多型和變質惡意程式碼。
  • 掃描每個檔案類型 (包括 zip 檔案的封存),並對每次掃描傳回結果。 檔案大小限制為 2 GB。
  • 支援大規模回應 - 根據 blob 索引標籤或事件方格事件,刪除或隔離可疑檔案。
  • 當惡意程式碼掃描識別惡意檔案時,會產生詳細的適用於雲端的 Microsoft Defender 安全性警示。
  • 旨在協助滿足安全性與合規性需求,掃描上傳至儲存體的不受信任內容,包括記錄每次掃描結果的選項。

常見的使用案例

適用於儲存體的 Defender 中惡意程式碼掃描的常見使用案例,包括:

  • Web 應用程式:許多雲端 Web 應用程式允許使用者上傳內容至儲存體。 這讓稅務應用程式、CV 上傳 HR 網站和收據上傳等應用程式,得以低維護且儲存體可調整。
  • 內容保護:影片和相片等資產常常在內部和外部合作對象之間大規模共用與發布。 CDN (內容傳遞網路) 和內容中樞是傳統惡意程式碼發佈機會。
  • 合規性需求:遵守合規性標準的資源,例如國家標準暨技術研究院、環球銀行間金融通訊系統、一般資料保護規定,以及其他需要強固安全性做法的標準,包括惡意程式碼掃描。 這對於在受管制產業或區域中營運的組織而言至關重要。
  • 第三方整合:第三方資料可能來自各種不同的來源,例如企業合作夥伴、開發人員和承包商,且並非所有資料都會有強固的安全性做法。 掃描惡意程式碼有助於確保此資料不會對您的系統帶來安全性風險。
  • 共同作業平台:類似檔案共用,小組使用雲端儲存來進行持續的內容共用,並跨小組與組織共同作業。 掃描惡意程式碼以確保安全的共同作業。
  • 資料管線:資料透過 ETL (擷取、移轉、載入) 流程移動,可能來自各種來源,且包含惡意程式碼。 掃描惡意程式碼有助於確保這些管線的完整性。
  • 機器學習訓練資料:訓練資料的品質與安全性對於有效的機器學習模型來說至關重要。 請務必確保這些資料集是乾淨且安全的,特別是如果包含來自外部來源的使用者產生的內容或資料。

顯示適用於儲存體的 Defender 中惡意程式碼掃描常見使用案例和情節的螢幕擷取畫面。

惡意程式碼掃描是近即時的服務。 掃描時間可能有所不同,端視掃描的檔案大小或檔案類型以及服務或儲存體帳戶的負載而定。 Microsoft 正持續努力減少整體掃描時間,不過,在設計以服務為基礎的使用者體驗時,您應該將掃描時間的變化納入考慮。

必要條件

若要啟用和設定惡意程式碼掃描,您必須為擁有者角色 (例如訂用帳戶擁有者或儲存體帳戶擁有者) 或具有必要資料動作的特定角色。 深入了解必要的權限。

您可以針對您的訂用帳戶大規模啟用和設定惡意程式碼掃描,同時針對個別儲存體帳戶的功能設定維持細微控制。 有數種方式可以啟用和設定惡意程式碼掃描:Azure 內建原則 (建議的方法),以程式設計方式使用基礎結構即程式碼範本 (包括 Terraform、Bicep 和 Azure Resource Manager (ARM) 範本)、使用 Azure 入口網站,或直接搭配 REST API。

惡意程式碼掃描如何運作

上傳時惡意程式碼掃描

上傳時觸發程式

將 Blob 上傳至受保護的儲存體帳戶時,會觸發惡意程式碼掃描。 所有上傳方法都會觸發掃描。 修改 Blob 是上傳作業,因此更新之後會掃描修改的內容。

掃描區域和資料保留

使用 Microsoft Defender 防毒軟體技術的惡意程式碼掃描服務會讀取 Blob。 惡意程式碼掃描在「記憶體內」掃描內容,並在掃描後立即刪除掃描的檔案。 不會保留內容。 掃描會在儲存體帳戶的相同區域內進行。 在某些情況下,檔案可疑且需要更多資料時,惡意程式碼掃描可能搭配適用於端點的 Microsoft Defender,在掃描區域外共用檔案中繼資料,包括分類為客戶資料的中繼資料 (例如安全雜湊演算法 SHA-256 雜湊)。

存取客戶資料

惡意程式碼掃描服務需要存取您的資料,才能掃描您的資料是否存在惡意程式碼。 服務啟用期間會在您的 Azure 訂用帳戶建立名為 StorageDataScanner 的新資料掃描程式資源。 此資源會被授與儲存體 Blob 資料擁有者角色指派,以存取和變更您的資料,以進行惡意程式碼掃描和敏感資料探索。

支援現成的私人端點

適用於儲存體的 Defender 中的惡意程式碼掃描在儲存體帳戶中獲得支援,在使用私人端點的同時,維持資料的隱私權。

私人端點為您的 Azure 儲存體服務提供安全的連線,並排除公用網路暴露,並被視為最佳做法。

惡意程式碼掃描的設定

啟用惡意程式碼掃描時,您的環境會自動執行下列動作:

  • 針對您啟用惡意程式碼掃描的每個儲存體帳戶,會在儲存體帳戶的相同資源群組中建立事件方格系統主題資源,由惡意程式碼掃描服務用來接聽 Blob 上傳觸發程式。 去除此資源會中斷惡意程式碼掃描功能。
  • 若要掃描您的資料,惡意程式碼掃描服務需要存取您的資料。 在服務啟用期間,會在您的 Azure 訂用帳戶中建立名為 StorageDataScanner 的新資料掃描器資源,並使用系統指派的受控識別來指派。 此資源會獲授與儲存體 Blob 資料擁有者角色指派,允許其存取您的資料,以供惡意程式碼掃描和敏感資料探索之用。

如果您的儲存體帳戶 [網路設定] 設為 [啟用所選虛擬網路的公用網路存取] 和 [IP 尋址],StorageDataScanner資源會新增至儲存體帳戶 [網路設定] 底下的 [資源實例] 區段,以允許存取並掃描您的資料。

如果您要在訂用帳戶層級啟用惡意程式碼掃描,則會在您的 Azure 訂用帳戶中建立名為 StorageAccounts/securityOperators/DefenderForStorageSecurityOperator 的新安全性操作員資源,並指派系統管理的身分識別。 此資源可用來在現有的儲存體帳戶上啟用和修復適用於儲存體的 Defender 以及惡意程式碼掃描設定,並檢查建立於啟用之訂用帳戶中的新儲存體帳戶。 此資源具有角色指派,其中包含啟用惡意程式碼掃描所需的特定權限。

惡意程式碼掃描取決於特定資源、身分識別和網路設定,才能正常運作。 如果您修改或刪除其中任何一項,惡意程式碼掃描將會停止運作。 若要還原其正常作業,您可以再次將其關閉並開啟。

提供掃描結果

惡意程式碼掃描的掃描結果可透過四種方法取得。 設定之後,針對儲存體帳戶中每個上傳和掃描的檔案,您會看到掃描結果以 blob 索引標籤顯示,而當檔案識別為惡意時,會以適用於雲端的 Microsoft Defender 安全性警示顯示。

您可以選擇設定額外的掃描結果方法,例如事件方格和 Log Analytics;這些方法需要額外的設定。 在下一節中,您將學習不同的掃描結果方法。

此圖顯示如何檢視及取用掃描結果的範例。

掃描結果

Blob 索引標籤

Blob 索引標籤是 Blob 上的中繼資料欄位。 其使用索引鍵/值標記屬性,將儲存體帳戶中的資料分類。 這些標記會自動編製索引,並公開為可搜尋的多維度索引,以便輕鬆地尋找資料。 掃描結果簡潔,顯示 Blob 中繼資料的惡意程式碼掃描結果,以及惡意程式碼掃描時間國際標準時間 (UTC)。 其他結果類型 (警示事件記錄) 提供有關惡意程式碼類型和檔案上傳作業的詳細資訊。

顯示 Blob 中繼資料惡意程式碼掃描結果和惡意程式碼掃描國際標準時間的螢幕擷取畫面。

應用程式可以使用 Blob 索引標籤來自動化工作流程,但無法防止竄改。

適用於雲端的 Defender 安全性警示

偵測到惡意檔案時,適用於雲端的 Microsoft Defender 會產生適用於雲端的 Microsoft Defender 安全性警示。 若要查看警示,前往適用於雲端的 Microsoft Defender 安全性警示。 安全性警示包含檔案的詳細資料和內容、惡意程式碼類型,以及建議的調查和補救步驟。 若要使用這些警示進行補救,您可以:

  • 瀏覽至 [適用於雲端的 Microsoft Defender] > [安全性警示],即可在 Azure 入口網站檢視安全性警示。
  • 根據這些警示設定自動化。
  • 將安全性警示匯出至安全性資訊管理 (SIEM)。 您可以使用 Microsoft Sentinel 連接器,或您選擇的另一個 SIEM,持續匯出安全性警示 Microsoft Sentinel (Microsoft 的 SIEM)。

事件方格事件

事件方格有助於事件驅動的自動化。 這是以事件形式取得結果且最小延遲的最快方法,您可以將其用於自動化回應。

來自事件方格自訂主題的事件可由多個端點類型取用。 惡意程式碼掃描案例最有用的是:

  • 函數應用程式 (先前稱為 Azure 函式) 使用無伺服器函式來執行自動回應的程式碼,例如行動、刪除或隔離。
  • Webhook-與應用程式連線。
  • 事件中樞和服務匯流排佇列 - 通知下游消費者。

記錄分析

您可能會想要記錄掃描結果,以取得合規性證明或調查掃描結果。 藉由設定 Log Analytics 工作區目的地,您可以將每個掃描結果儲存在易於查詢的集中式記錄存放庫中。 您可以瀏覽至 Log Analytics 目的地工作區並尋找StorageMalwareScanningResults資料表,以檢視結果。

成本控制

惡意程式碼掃描會按每 GB 掃描計費。 為了提供成本可預測性,惡意程式碼掃描支援每個儲存體帳戶在單月掃描的 GB 數量上設定上限。

前 30 天試用版不包含免費使用適用於儲存體的 Defender 中的惡意程式碼掃描,且會根據適用於雲端的 Microsoft Defender 定價頁面提供的定價方案,從第一天收取費用。

上限」機制旨在為每個儲存體帳戶設定每月掃描限制,以 GB 為單位,作為有效的成本控制方式。 如果儲存體帳戶已為單一日曆月份建立了預先定義的掃描限制,則掃描作業會在達到此閾值後自動停止 (最多 20 GB 誤差),不再掃描檔案是否有惡意程式碼。 每個月結束時會在 UTC 午夜重設上限。 更新端點通常需要一小時才會生效。

如果未定義特定的上限機制,則預設為建立 5 TB (5,000 GB) 的限制。

您可以在個別儲存體帳戶或整個訂用帳戶上設定上限機制 (訂用帳戶上的每個儲存體帳戶都會配置訂用帳戶層級上定義的限制)。

惡意程式碼掃描的其他成本

惡意程式碼掃描使用其他 Azure 服務作為其基礎。 這表示當您啟用惡意程式碼掃描時,也會因其所需的 Azure 服務而向您收費。 這些服務包括 Azure 儲存體讀取作業、Azure 儲存體 Blob 索引編製以及 Azure 事件方格通知。

處理可能的誤判為真和誤判為否

如果您懷疑一個檔案可能是惡意程式碼,但未偵測到 (誤判為否) 或未正確偵測 (誤判為真),則您可以透過樣本提交入口網站提交檔案以進行分析。 選取 [適用於儲存體的 Microsoft Defender] 作為來源。

適用於雲端的 Defender 可讓您隱藏誤判為真的警示。 請務必使用惡意程式碼名稱或檔案摘要來限制歸併規則。

惡意程式碼掃描不會自動封鎖對上傳 Blob 的存取或變更權限,即使它是惡意的。

限制

不支援的功能和服務

  • 不支援的儲存體帳戶:惡意程式碼掃描不支援舊版 v1 儲存體帳戶。
  • 不支援的服務:惡意程式碼掃描不支援 Azure 檔案儲存體。
  • 不支持的區域:Jio 印度西部、南韓南部、南非西部。
  • 適用於儲存體的 Defender 所支援的區域,但並非惡意程式碼掃描支援。 深入了解適用於儲存體的 Defender 可用性。
  • 不支援的 Blob 類型:惡意程式碼掃描不支援附加和分頁 Blob。
  • 不支援的加密:由於無法在服務掃描之前進行解密,故不支援用戶端加密的 Blob。 不過,支援由客戶管理密鑰 (CMK) 加密待用的數據。
  • 不支援的索引標籤結果:已啟用階層命名空間的儲存體帳戶不支援索引標籤掃描結果 (Azure Data Lake Storage Gen2)。
  • 事件方格:適用於儲存體的 Defender 中的惡意程式碼掃描,並不支援未啟用公用網路存取 (亦即私人端點連線) 的事件方格主題。

輸送量容量和 Blob 大小限制

  • 掃描輸送量速率限制:每個儲存體帳戶的惡意程式碼掃描每分鐘最多可以處理 2 GB。 如果儲存體帳戶的檔案上傳速率暫時超過這個閾值,系統會嘗試以超過的速率限制來掃描檔案。 如果檔案上傳的速率一直超過此閾值,則不會掃描某些 Blob。
  • Blob 掃描限制:每個儲存體帳戶的惡意程式碼掃描每分鐘最多可處理 2,000 個檔案。 如果儲存體帳戶的檔案上傳速率暫時超過這個閾值,系統會嘗試以超過的速率限制來掃描檔案。 如果檔案上傳的速率一直超過此閾值,則不會掃描某些 Blob。
  • Blob 大小限制:掃描單一 Blob 的大小上限為 2 GB。 不會掃描大於限制的 Blob。

Blob 上傳和索引標籤更新

將 Blob 上傳至儲存體帳戶時,惡意程式碼掃描會啟動額外的讀取作業,並更新索引標記。 在大部分案例中,這些作業不會產生大量負載。

對存取與儲存體每秒輸入/輸出作業 (IOPS) 的影響

儘管有掃描流程,但存取上傳資料仍然不受影響,而且對記憶體 IOPS 的影響微乎其微。