登录类型上的Windows安全事件搜索

时间:2014-07-10 15:18:03

标签: xml regex events vbscript

我需要编写代码来搜索符合特定条件的Windows安全事件并返回事件。我有一个约束,我需要使用VBscript,我不能使用PowerShell。问题是需要搜索的字段之一是“登录类型”(在消息字段中)。这是安全事件中登录类型的示例:

Example

我已经在互联网上查找了一种方法来做到这一点,我唯一能想到的就是使用正则表达式和InStr函数在Messages字段内搜索,但是方法将是非常复杂和麻烦的,其他搜索值也是一个因素。作为一个FYI,我需要搜索的另一个值是时间。

或者,有没有办法将所有安全事件从一台机器导出到XML?我没有找到用VBscript做到这一点的方法。

有没有人对如何根据使用VBscript的登录类型最好地过滤邮件有任何建议?

1 个答案:

答案 0 :(得分:0)

我不知道如何检查特定登录类型的消息字段会如此复杂。这样的事情就足够了:

Set wmi = GetObject("winmgmts://./root/cimv2")

Set re = New RegExp
re.Pattern = "LogonType:\s+7"

qry = "SELECT * FROM Win32_NTLogEvent WHERE Logfile='Security' AND EventCode=4624"
For Each evt In wmi.ExecQuery(qry)
  If re.Test(evt.Message) Then
    'do stuff
  End If
Next