內核模式檔案複製和偵測複製檔案案例
本文說明 Windows 11 版本 22H2 中引進的受信任內核模式檔案複製功能。 這項功能可讓篩選條件輕鬆地偵測複製案例。 這對於防毒篩選器 (AV) 很有用,可讓他們判斷它們是否可以在複製期間延遲或完全略過掃描來源和目的地檔案。
為確保核心模式讀取和寫入作業安全地標示為複製作業的一部分,已進行下列更新:
已 新增FILE_CONTAINS_EXTENDED_CREATE_INFORMATION 旗標和 EXTENDED_CREATE_INFORMATION 結構。 此旗標和結構可用來透過 NtCreateFile 在建立時發出複製意圖的訊號。 EXTENDED_CREATE_INFORMATION 結構可作為 NtCreateFile 現有 EaBuffer 參數的包裝函式。
指定FILE_CONTAINS_EXTENDED_CREATE_INFORMATION旗標時,I/O 管理員會將EaBuffer和EaLength參數解譯為EXTENDED_CREATE_INFORMATION結構。 然後,I/O 管理員會剖析該結構的欄位,就像直接 提供給 NtCreateFile 一樣。 基礎篩選條件不會變更擴充屬性的行為。
IoCheckFileObjectOpenedAsCopySource 和 IoCheckFileObjectOpenedAsCopyDestination 已新增篩選條件,以檢查檔案是否已開啟複製意圖。
已新增 NtCopyFileChunk 以執行內核模式複製。
來自 NtCopyFileChunk 的所有讀取和寫入作業都有:
- IRP 的要求者模式設定為 KernelMode
- IopCopyInformationType 類型的 IRP 延伸模組。
篩選條件無法直接存取 IRP 延伸模組,但可以藉由呼叫 FltGetCopyInformationFromCallbackData 來檢查此延伸模組是否存在,並從回呼數據取得複製資訊。