Share via


Copia file in modalità kernel e rilevamento di scenari di file di copia

La possibilità di eseguire la copia di file attendibili in modalità kernel è stata introdotta in Windows 11 versione 22H2, inclusa la possibilità di rilevare facilmente gli scenari di copia dei filtri. Questa funzionalità è particolarmente utile per i filtri antivirus (AV), consentendo loro di determinare se possono rinviare o ignorare completamente l'analisi dei file di origine e di destinazione durante la copia.

Per garantire che le operazioni di lettura e scrittura in modalità kernel siano contrassegnate in modo sicuro come parte di un'operazione di copia:

  • Il flag FILE_CONTAINS_EXTENDED_CREATE_INFORMATION e la struttura EXTENDED_CREATE_INFORMATION sono stati aggiunti per segnalare la finalità di copia in fase di creazione tramite NtCreateFile. La struttura EXTENDED_CREATE_INFORMATION funge da wrapper intorno al parametro EaBuffer esistente di NtCreateFile.

    Quando viene specificato il flag FILE_CONTAINS_EXTENDED_CREATE_INFORMATION , il gestore di I/O interpreta i parametri EaBuffer e EaLength come struttura EXTENDED_CREATE_INFORMATION e analizzerà i campi della struttura come se fossero stati forniti direttamente a NtCreateFile. I filtri sottostanti non avranno alcuna modifica nel comportamento degli attributi estesi.

  • IoCheckFileObjectOpenedAsCopySource e IoCheckFileObjectOpenedAsCopyDestination sono stati aggiunti per i filtri per verificare se un file è stato aperto per la finalità di copia.

  • NtCopyFileChunk è stato aggiunto per eseguire la copia in modalità kernel.

Tutte le operazioni di lettura e scrittura da NtCopyFileChunk avranno:

  • La modalità richiedente di IRP impostata su KernelMode
  • Estensione IRP di tipo IopCopyInformationType.

I filtri non hanno accesso direttamente alle estensioni IRP, ma possono controllare la presenza di questa estensione e ottenere informazioni di copia dai dati di callback chiamando FltGetCopyInformationFromCallbackData.