本文介绍: Minifilter 是一种文件过滤驱动,该驱动简称为微过滤驱动,相对于传统的`sfilter`文件过滤驱动来说,微过滤驱动编写时更简单,其不需要考虑底层RIP如何派发且无需要考虑兼容性问题,微过滤驱动使用过滤管理器`FilterManager`提供接口,由于提供了管理结构以及一系列管理API函数,所以枚举过滤驱动将变得十分容易。
Minifilter 是一种文件过滤驱动,该驱动简称为微过滤驱动,相对于传统的sfilter
文件过滤驱动来说,微过滤驱动编写时更简单,其不需要考虑底层RIP如何派发且无需要考虑兼容性问题,微过滤驱动使用过滤管理器FilterManager
提供接口,由于提供了管理结构以及一系列管理API函数,所以枚举过滤驱动将变得十分容易。
通常文件驱动过滤是ARK重要功能之一,如下是一款闭源ARK工具的输出效果图。
由于MiniFilter
提供了FltEnumerateFilters
函数,所以只需要调用这些函数即可获取到所有的过滤器地址,我们看下微软公开的信息。
此函数需要注意,如果用户将FilterList
设置为NULL
则默认是输出当前系统中存在的过滤器数量,而如果传入的是一个内存地址,则将会枚举系统中所有的过滤器信息。
使用FltEnumerateFilters
这个API,它会返回过滤器对象FLT_FILTER
的地址,然后根据过滤器对象的地址,加上一个偏移,获得记录过滤器PreCall、PostCall、IRP
等信息的PFLT_OPERATION_REGISTRATION
结构体指针。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。