【发布时间】:2013-01-29 11:06:10
【问题描述】:
我编写了用于防止写入 PE 文件的 minifilter 驱动程序。我在创建后回调中检查文件内容。如果格式匹配,我尝试调用FltCancelFileOpen 并返回STATUS_ACCESS_DENIED。
但这可以通过使用CreateDisposition = FILE_OVERWRITE/FILE_OVERWRITE/FILE_SUPERSEDE 打开文件来劫持。在这种情况下,文件在调用 post-create-callback 时已经被截断。
如何克服这个问题?
【问题讨论】:
-
您不能在让文件系统尝试创建文件之前检查文件是否存在,如果存在,请检查文件格式,如有必要,请立即拒绝请求?
标签: windows driver minifilter