打开文件时创build事件日志条目,或从CD / DVD复制

我一直负责configuration组策略/编写一个.NET Windows服务,当用户从任何光学介质(对可移动USB驱动器不感兴趣)打开或复制文件/文件时,这些服务将把条目添加到Windows事件日志中。

我的第一个尝试是使用C#,并获取进程列表,看看他们打开了什么文件,如果path开始与光盘驱动器号。 这不起作用,因为一些程序保持打开文件(例如Acrobat Reader)而其他程序不打开(Internet Explorer,记事本)。 我的第二个尝试是打开对象访问的审计,同时在光盘驱动器上设置文件访问安全审核,这是您不能执行的操作,因为在只读文件系统上没有安全性。 我最后一次尝试是使用可移动存储组策略的审计 ,但是没有为光学介质添加任何日志条目(我testing了一个USB笔式驱动器,并且创build了条目),另外它仅在Windows 8 +和我需要支持Windows 7。

所以,我完全没有想法,并转向这里的专家,看看你是否有任何想法来解决这个问题。

我怀疑这将不得不在较低的驾驶员级别上实施。 我怀疑有这个商业软件可用。

光驱通常使用FAT(32)作为文件系统,正如您已经注意到的那样,它不支持审计。 您当然可以审核本地文件系统,但是这不会让您区分源自光驱的写入访问。

我会从SysInternals安装进程监视器,看它是否报告从光驱的文件传输 – 它应该。 我会给你一个起点。

我个人不认为这是一个简单的努力,因为你需要安装和与驱动程序交互。

也许别人有另一个想法。

由于Windows没有像大多数UNIX那样的文件系统挂钩,但是恶意软件作者知道如何通过挂接到系统调用(又名rootkit)来隐藏自己,所以你可能想看看rootkit是如何工作的。

您可以编写一个库,将其挂接到文件open syscall并在那里生成事件日志条目。 然后编写一个程序自动将这个库加载到系统中。

奖励点如果你可以使整个日志logging机制隐藏,真正的rootkit风格。