问题标签 [get-winevent]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
433 浏览

powershell - PowerShell Get-WinEvent 和 PSSession

使用域管理员帐户启动 PSSession 并运行以下命令以从事件日志中获取特定事件时,我收到错误消息。

Get-WinEvent : 未找到符合指定选择条件的事件。+ CategoryInfo : ObjectNotFound: (:) [Get-WinEvent], 异常 + FullyQualifiedErrorId : NoMatchingEventsFound,Microsoft.PowerShell.Commands.GetWinEventCommand

在本地运行命令时,它运行良好,或者只有一个 ID 号,它也运行良好。我也有 PSSession 的问题,并尝试使用域管理员凭据将 CSV 导出到 UNC 路径。我收到以下结果:

拒绝访问路径“\\UNCpath\export.csv”。+ CategoryInfo : OpenError: (:) [Export-Csv], UnauthorizedAccessException + FullyQualifiedErrorId : FileOpenFailure,Microsoft.PowerShell.Commands.ExportCsvCommand 该脚本在本地运行时工作正常。

任何帮助将不胜感激。

0 投票
1 回答
4757 浏览

xml - Get-winEvent 到 XML,现在如何获取值

我对 powershell 比较陌生,对 SQL 更熟悉。

我需要从事件日志中获取一些数据。到目前为止,我已经设法确定我需要使用 Get-WinEvent 并使用 xml 元素来获取我想要的实际信息。

到目前为止,我有:

似乎应该很容易将值放入变量或直接放入数据表等。

我一直在寻找解决方案,但没有任何运气。

0 投票
4 回答
1370 浏览

powershell - 使用 PowerShell Get-WinEvent 或 Get-WMIObject 查询 Windows 更新错误

尝试使用 Get-WinEvent 创建一个简单的 Windows 更新错误查询(尽管我更喜欢查询 WMI 对象以与 SCUP 一起使用):

这似乎在大多数情况下都有效。但是,它只返回信息事件而不是错误。这些是否位于其他地方,如果是,我将如何查询它们?对于某些背景,在我的环境中大约 10% 的 Windows 10 机器上发生了特定的更新失败(缺少程序集文件),我想针对它,以便我可以部署解决方案。

使用 Get-WinEvent 的解决方案很好,但如果可能的话,我更喜欢使用 Get-WMIObject。

0 投票
1 回答
523 浏览

powershell - Powershell Get-WinEvent Xpath 查询无效

我会知道我的查询有什么问题?

每次我得到以下异常:

在事件的 XML 代码下方

非常感谢提前问候

0 投票
0 回答
296 浏览

c++ - 32 位和 64 位应用程序的 c++ SetWinEventHook 问题

我正在尝试将 EVENT_SYSTEM_MOVESIZESTART 和 EVENT_SYSTEM_MOVESIZEEND 之类的葡萄酒事件与所有桌面窗口挂钩。为此,我使用了 SetWinEventHook()。这是我的示例代码。

它是 Installed Hook 的一部分。

以上是为了移除 WinEvent Hook。

这就是 HookProc 函数。

以上代码都在DLL中。我用 x86 Debug 方法编译了 DLL。当然,我使用 x86 Debug 方法编译了客户端项目。我的问题是这个 hookproc 监听仅在 x64 位应用程序上引起的事件。(我使用 Win10 x64)。它不能监听 x86 位应用程序的 wineevents。我只知道 32 位 dll 只能注入 32 位项目和 64 位 dll 上的相同内容。但我认为它与wineevent hook无关。我的代码有什么问题?哪些事情我永远不知道?

0 投票
0 回答
486 浏览

windows - 了解 TargetLinkedLogonId 和配对登录会话

希望了解添加到 Windows 10 中的安全审核事件的 TargetLinkedLogonId(以及配对登录会话的相关概念)参考:https ://docs.microsoft.com/en-us/windows/device-security/auditing/event- 4624

使用本地管理员帐户登录到 Windows 10 的控制台(交互式)会产生以下事件:

4648(使用显式凭据登录尝试)

  • SubjectLogonId = 0x3e7

4624(登录成功)

  • SubjectLogonId = 0x327
  • TargetLogonId = 0xbe87a9
  • TargetLinkedLogonId = 0xbe87cc
  • ElevatedToken = 是

4624(登录成功)

  • SubjectLogonId = 0x327
  • TargetLogonId = 0xbe87cc
  • TargetLinkedLogonId = 0xbe87a9
  • ElevatedToken = 否

4672(分配的特殊特权)

  • SubjectLogonId = 0xbe87a9

所以有两个与登录尝试事件匹配的登录成功事件,每个都有不同的会话(不同的 TargetLogonId)。这两个会话相互链接 (TargetLinkedLogonId)。奇怪的是,4672(特殊权限)事件与 ElevatedToken=No 的 4624 事件相关联。使用提升令牌的会话不会是获得特殊特权的会话吗?

同样一般来说,为什么要为本地管理员登录创建两个会话?

0 投票
1 回答
760 浏览

powershell - 按登录类型 2 或登录类型 3 获取 WinEvent 过滤器

我遇到了这个Get-WinEvent 仅获取交互式登录消息并尝试OR在相同的情况下玩弄:

我想知道这不起作用吗?

如果我有两个不同的 eventid 和两个不同的 where 子句,例如4624EventId 和 logontype2或 logontype 3
OR eventid1234和 hostname =会发生什么localhost

我需要做的是仅检查 logontype:2 和 logontype 3 并在 logontype 为 3(远程)时打印 Network-Details。

0 投票
1 回答
3016 浏览

powershell - get-winevent:使用属性

我尝试学习 powershell 来自动化一些日常任务。

我尝试从 get-winevent 函数中找出所有字段名,以了解当我想从具有多个条件的许多 eventid 中过滤结果时需要做什么。

在这个简单的示例中,我想要所有事件 4625 和来自 4624 的事件,但前提是 logontype 为 2。结果表应该只包含给定的字段(现在是所有字段,稍后是选定字段和一个自定义字段)。另外,我想用“本地”或“远程”和网络数据(IP、用户名、主机名)在特定列中标记本地登录和远程登录。

如何获取所有字段的列表?从 ID 到消息字段中的所有属性字段?

顺便说一句:此代码未按预期工作。对此感到抱歉。

0 投票
1 回答
675 浏览

powershell - get-winevent:删除描述性内容部分后用 System.String[] 填充的属性字段

我正在尝试过滤事件日志,除了查询中的消息字段外,它工作正常。消息字段中有很多描述性文本。我只想要它的第一句话,因为这是重要的,其余的都是垃圾。

消息字段的示例内容:

我只想要“一个帐户已成功登录”。

我已经尝试过(但失败了):

结果是:

输出是“System.String[]”,但它应该是第一句话。

0 投票
1 回答
720 浏览

powershell - 无法在 PowerShell 中获取事件数据字段数据

我正在尝试将事件 4625 中的特定数据字段 (FailureReason) 获取到 CSV 字段。

我已经使用以下代码分析了事件模式:

这导致:

通过此输出,我知道数据字段名称是“FailureReason”或$_.properties[9]. 我在以下代码片段中尝试了这两种变体:

结果,CSV 文件中的所有字段都被填充,除了字段“FailureReason”。之后我更改了代码以获取具有相同结果的字段“ProcessId”的值,然后 CSV 字段也为空。

备注:代码通常要复杂得多,我将其简化为所需的部分。