我已根据此article启用了文件共享访问审核.简而言之:添加了一个组策略条目,允许将某些访问写入所有访问类型的文件夹级别的启用事件日志的审核.
结果,我在事件日志中获得了这样的条目:
Subject:
Security ID: Domain\Username
Account Name: Username
Account Domain: Domain
logon ID: 0x329558
Object:
Object Server: Security
Object Type: File
Object Name: E:\share\filename.xml
Handle ID: 0xfc4
Resource Attributes: S:AI
Process information:
Process ID: 0x4
Process Name:
Access Request information:
Accesses: WriteAttributes
Access Mask: 0x100
用户设置的确切属性是什么?它是资源属性中列出的内容吗?它们看起来不像是“隐藏”,而且我没有在WriteAttributes类型的事件日志中获得任何其他条目(我通过PowerShell彻底搜索).有些过程肯定会设置这个隐藏的标志.
问题:
>此事件日志条目是否包含有关应用程序实际设置的属性的信息?
>我还能如何跟踪此活动? Process Monitor没有捕获单个SetBasicinformationFile事件,但该文件仍然被隐藏!
当您运行此命令时,如果没有找到任何隐藏文件,它将返回ERRORLEVEL为1,这是您想要的.如果一个文件被隐藏,那么它将返回一个你不想要的ERRORLEVEL,然后你可以触发一些东西.
现在,这不会告诉你谁隐藏了文件,但如果你经常打电话(比如说每30秒)那么你至少会有一个关于它何时发生的时间框架,然后你应该能够将它关联起来当时发生了4663次事件.我假设您已经在此文件夹中进行了审核?
您可以使用任何调度程序调用此脚本,但这实际上是EventSentry Light实用程序的一个好方案,该实用程序具有内置调度程序,可以根据您运行的任何脚本的错误级别触发电子邮件警报.它甚至包括脚本的输出.该功能称为“应用程序调度程序”.当然,您也可以编写自己的脚本并使用PowerShell,VBScript或类似blat.exe之类的东西触发电子邮件.
如果Windows审核不够精细,无法捕获隐藏文件的人,那么审核部分可能是最棘手的.但即便如此,对父文件夹的审核也应显示一些活动,例如目录列表.