2

好的,首先有一点背景。我已经开始在我的大学从事一个项目,其中一个目标是开发一个模块,该模块将在进程尝试执行以下操作时进行记录:

-创建、删除或修改文件(基本上是文件系统活动) -创建、检测或修改注册表 ID/值

实际上,我们将为此模块指定一个要监视的进程,并且每当该进程尝试执行上面列出的任何活动时,它都会被记录下来。

现在,我正在研究驱动程序开发的基础知识,以及我的 DS 建议的过滤驱动程序。这是我的问题,

实现这一目标的最佳方法是什么,是通过编写某种过滤器驱动程序吗?如果是,那么究竟是什么过滤器驱动程序、文件系统过滤器驱动程序或微过滤器驱动程序或其他什么?或者不知道其他一些技术?

我只需要一点方向,这样我就可以有针对性的研究和实施,因为我没有太多时间做这个项目!

4

1 回答 1

0

文件系统微过滤器驱动程序是执行此操作的方法。

但棘手的部分是如何指定要监控的进程。如果您正在考虑 PID,那么它非常简单,但是如果您正在考虑使用诸如notepad.exe之类的进程/可执行文件名称,那么这就变得有点复杂了。

只是为了给您提示,您可以在迷你过滤器中获取操作的 PID,但不能获取进程名称。因此,您必须在微过滤驱动程序中维护一个 PID 映射来处理名称。您想使用PsSetCreateProcessNotifyRoutineExPsSetLoadImageNotifyRoutine

于 2012-12-26T12:41:45.333 回答