如何从基于 Windows 的 Azure VM 收集安全事件日志并在其上创建警报?

如何从基于 Windows 的 Azure VM 收集安全事件日志并在其上创建警报?

以下更像是一个学术问题。我认为它没有太多实际价值,因为有更好的现成解决方案。

问题

如何从基于 Windows 的 Azure 虚拟机收集安全事件并在此基础上创建警报。这样,如果每分钟发生超过 30 个安全事件,就会发送电子邮件?

采取 1

  • 创建 Log Analytics 工作区Create a Log Analytics working
  • 添加虚拟机作为数据源(工作区数据源 > 虚拟机)
  • 配置应收集的数据(高级设置 > 数据 > Windows 事件日志)

但是,这不允许我添加安全事件(仅限应用程序和系统事件)。

此情报包无法收集“安全”事件日志,因为当前不支持审核成功和审核失败事件类型。

第二次

  • 从虚拟机本身启用诊断设置,并从“日志”中确保选择“审计成功”和“审计失败”。
  • 在数据接收器下启用“Azure Monitor”

现在查询类似Event或的内容时Event | where ComputerName == "vm1",不会返回任何结果。似乎这种方法只会向 Azure Monitor 发送指标,而不会发送日志


编辑

好的,这就是我目前所发现的。

通过使用 VM 诊断设置,可以将安全事件写入存储帐户表,然后使用Log Analytics Workspace并添加存储帐户作为源。

但是,这仍然无法查询事件。至少对我来说,表格Events始终是空的。似乎数据需要先通过 进行转换Azure Solution。但是,我找不到转换窗口事件。

要收集并响应来自 Windows 的安全事件日志,首选解决方案是Azure Security Center。但仍然不知道如何基于此创建警报... 太令人困惑了。

答案1

我想你已经找到了答案,但对于那些不知道的人来说:

(是的,我同意这很令人困惑,因为微软提供了可以执行此操作的多个位置的链接,并且他们已经移动了配置菜单。在我看来,他们应该隐藏非典型设置或将其标记为“高级”)

转到您的 Log Analytics 工作区。
打开“代理管理”。
下载并安装 Windows 代理。
就这样,现在您正在收集所有与安全相关的 Windows 事件。

提示:您不需要进入日志分析高级部分并为 Windows 配置任何其他事件日志类型,除非您正在执行与事件 ID 相关日志的典型收集之外的操作。

要查看事件,请运行此查询:

安全事件

或者如果你想要一些与时间相关的内容:
SecurityEvent
| where TimeGenerated > ago(24h)
| limit 10

相关内容