COPY_INFORMATION 结构 (ntifs.h)
COPY_INFORMATION 结构将读取和写入调用关联到 NtCopyFileChunk 中的复制操作。
语法
typedef struct _COPY_INFORMATION {
PFILE_OBJECT SourceFileObject;
LONGLONG SourceFileOffset;
} COPY_INFORMATION, *PCOPY_INFORMATION;
成员
SourceFileObject
副本的源文件对象。
SourceFileOffset
副本源文件的文件偏移量。 此值可以与写入期间的目标文件偏移量进行比较,以确保复制完整且忠实。
注解
副本的读取和写入操作在其各自的 IRP 扩展中包含相同的信息,因此,对于具有 IopCopyInformationType IRP 扩展的所有写入,可以使用COPY_INFORMATION来完成关联。
如果读取和写入操作是相关的,并且已验证复制的数据,则可以将写入的目标文件视为源的完整且忠实的副本。 这意味着信任可以从源文件传递到目标。
复制通常以区块形式发生。 验证整个文件副本:
每个区块 (每次调用 NtCopyFileChunk) 都必须将其写入操作与以前的读取操作相关联。
一起复制的所有区块应涵盖文件的整个范围。
筛选器可以使用写入的 IRP 扩展中提供的源信息验证复制数据的正确性,如下所示:
- 验证 SourceFileObject 上是否发生了匹配的读取。
- 验证 SourceFileOffset 是否与写入操作的文件偏移量匹配。
有关详细信息 ,请参阅内核模式文件复制和检测复制文件方案 。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 11 版本 22H2 |
标头 | ntifs.h |
另请参阅
FltGetCopyInformationFromCallbackData
IoCheckFileObjectOpenedAsCopySource