windows - Windows 防病毒软件如何挂接到文件访问过程?

标签 windows antivirus

主题说明了一切。普通的防病毒软件必须拦截所有文件访问,扫描文件,然后选择性地拒绝对该文件的访问(甚至可能向用户显示提示)。如何做到这一点?

我知道一种称为 API Hook 的方法,但这是一种非常肮脏的未记录的 hack - 因此并不可靠。这样做的“官方”方式是什么?

或者,我会对拦截可执行模块(.DLL、.EXE 等)的加载感兴趣,而不仅仅是任意文件读取。

最佳答案

在最新版本的 Windows 中(至少从 XP 开始)有一个“过滤器”的概念,可以使用 MS 过滤器管理器(来自命令提示符的 fltmc.exe)查看它

这提供了一个低级别的 I/O Hook ,AV 程序可以访问它并自动注册以将所有 I/O 请求传递到文件系统。这是一个套件,您可以获得驱动程序以开发您自己的过滤器。

http://www.microsoft.com/whdc/driver/filterdrv/default.mspx是获取深入信息的起点。

关于windows - Windows 防病毒软件如何挂接到文件访问过程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1531800/

相关文章:

windows - Delphi XE 和使用 OnKeyDown 捕获箭头键

windows - 如何在 Win32 中自定义选项卡控件的外观?

c++ - 访问任何进程的内存

C# 应用程序被检测为病毒

c - 使用 Windows 10 和 C (Visual Studio 2015) 进行套接字编程

c++ - SetCurrentConsoleFontEx 用于将文本设为粗体

android - 开发工具被感染?

installation - Inno-Setup:安装后打开链接:打开链接时的防病毒警报

c# - 证明我们的程序没有病毒的证书?

android - React-Native Packager 不检测 Windows 上的文件更改