Oph*_*tan 1 winapi driver api-hook minifilter
我需要开发一个应用程序来监视并可能过滤(拒绝调用)文件操作。
看来开发微型过滤器是“标准”解决方案。另一种可能的方法是使用 API 挂钩。
这些是相关的解决方案吗?(我在某些地方读到 API 挂钩可能不合适 - 但没有给出解释)
还有其他选择吗?
微软本质上不支持API挂钩(至少在内核空间)。在 x64(从 Vista 及更高版本开始)上,如果 patchguard 检测到 SSDT 挂钩或系统关键组件发生任何更改,它通常会杀死机器。API 挂钩很难在系统范围内实现,因为 Windows 使用的同步原语不会导出,因此即使您设法挂钩代码,也不能保证机器不会因 EIP 的值而崩溃在给定时刻(当您卸载已挂钩函数的驱动程序时,这尤其有效)。
也许您最好的选择是尝试直接挂钩内存内核对象,而不使用微过滤器驱动程序。您可能想查看每个对象窗口都有的 OBJECT_TYPE_INITIALIZER定义结构(文件、事件、端口等 - 谷歌周围查看它们)作为其成员。您对 *Procedure 函数指针特别感兴趣。
| 归档时间: |
|
| 查看次数: |
4504 次 |
| 最近记录: |