通过 Powershell 查看互联网访问日志

通过 Powershell 查看互联网访问日志

我刚刚开始使用 Windows 事件查看器查看日志。我不确定在哪里查找与以下活动相关的日志:

(New-Object System.Net.WebClient).DownloadFile("http://www.somesite.com/file.txt", "file.txt")

事件查看器会记录此类事件吗?它会记录成功和失败吗?我查看了应用程序、安全、设置和系统日志,但找不到任何内容。我甚至检查了事件查看器的 Powershell 部分,但同样没有返回任何内容。

答案1

您显示的命令与电源外壳。但是,PowerShell 日志记录:

  • 默认情况下未激活
  • 至少需要安装 PowerShell 4.0 或 5.0
  • 需要手动或通过 GPO 启用 PowerShell 审计功能(见下图):

审核设置功能

在激活审计功能之前,请务必了解现有的 3 种不同的日志记录功能(详情见下表):

  • 模块日志记录
  • 脚本块日志记录
  • 转录

记录功能容量

一旦激活了日志记录,您将在以下位置找到相关日志:Microsoft-Windows-PowerShell/操作事件日志文件夹。

下面还列出了记录过程中产生的不同事件 ID: 事件 ID 列表

简而言之,回答你的问题:

  1. 阅读 FireEye 的这份非常好的文档(来源
  2. 确保您的系统合规
  3. 必要时升级到 PowerShell 4 或 5
  4. 手动或通过 GPO 启用日志记录
  5. 查看日志并搜索适当的事件

答案2

除了 Michel 的精彩回应外,还可以看看这篇博客文章,它详细解释了 PowerShell 事件日志记录,包括缓解方法。

答案3

Windows 事件日志不记录 Web 活动事件。但如果是您自己的 Powershell 脚本,您可以自己简单地记录这些事件(记录到 EventLog 中 - 请参阅 Write-EventLog 或直接记录到文件中)。

或者,您可以使用任何第三方互联网活动跟踪器或在 Windows 防火墙中启用日志记录。但它们通常会记录所有事件(不仅仅是来自 Powershell)。

相关内容