如果我仍然有其PID,如何识别终止的Windows进程?


14

背景:在我的工作中,突然出现了安装“ Microsoft鼠标和键盘中心”的许可协议。我想了解是什么进程启动了该设置,但是使用Process Explorer,我发现它已经消失了,我只能找到它的PID(请参见屏幕截图)。

题:

如果您使用的是Process Explorer,则可能知道该进程的父进程不再存在的情况,并且只能看到其PID:

在此处输入图片说明

是否有一些Windows日志包含PID与正在运行的进程的关联,所以我可以找出在给定PID下正在运行的进程?

最好是,我对没有期望的场景感兴趣,所以我没有使用Process Monitor来捕获系统中的事件。

Answers:


11

是否有一些Windows日志包含PID与正在运行的进程的关联

默认情况下,没有此类日志。但是,您可以在Windows安全事件日志中启用进程跟踪事件。

笔记:


如何在Windows安全日志中使用进程跟踪事件

在Windows 2003 / XP中,您只需启用流程跟踪审核策略即可获取这些事件。

在Windows 7/2008 +中,您需要启用“审核过程创建”以及(可选)“审核过程终止”子类别,您可以在组策略对象的“高级审核策略配置”下找到这些子类别。

这些事件非常有价值,因为它们在每次启动系统上的任何可执行文件时都会提供全面的审核跟踪。您甚至可以使用在两个事件中找到的Process ID,将流程创建事件链接到流程终止事件,来确定流程运行了多长时间。这两个事件的示例如下所示。

在此处输入图片说明

来源如何在Windows安全日志中使用进程跟踪事件


如何启用审核流程创建

  1. 运行gpedit.msc

  2. 选择“ Windows设置”>“安全设置”>“本地策略”>“审核策略”

    在此处输入图片说明

  3. 右键单击“审核过程跟踪”,然后选择“属性”

  4. 选中“成功”,然后单击“确定”

    在此处输入图片说明


什么是审核流程跟踪

此安全设置确定OS是否审核与流程相关的事件,例如流程创建,流程终止,句柄重复和间接对象访问。

如果定义了此策略设置,则管理员可以指定是仅审核成功,仅失败,成功和失败,还是根本不审核这些事件(即既不成功也不失败)。

如果启用了成功审核,则每次操作系统执行这些与流程相关的活动之一时,都会生成一个审核条目。

如果启用了失败审核,则每次操作系统未能执行这些活动之一时,都会生成一个审核条目。

默认值:不审核

重要说明:要更好地控制审核策略,请使用“高级审核策略配置”节点中的设置。有关高级审核策略配置的详细信息,请参阅 http://go.microsoft.com/fwlink/?LinkId=140969


戴夫,也许您可​​以使用“西方最快的枪支”方法。当您编写冗长而详尽的答案时,我在另一个答案中执行了步骤(与您以后添加的答案相同),并且即将接受。所以现在我面临一个难题,那就是答案是否可以接受... :)
miroxlav

1
与第一个答案相比,我更希望得到最好的答案;)如果它们是同一个东西,那么这是一个好处。我确实(在现在的清理评论中)通知您我正在准备答案。而且我通过手机使用了缓慢的网络连接:/
DavidPostill

哦,是的,你做到了。OTOH,也许不要害羞地写“您可以在本地策略中启用审核日志记录”,发布并继续创建具有教育价值的答案。有时,即使是很小的提示也比等待60分钟才能得到更好的回答更好地帮助我(OP):)我的意思是,我知道地方政策在哪里,我只需要一个较小的提示即可。
miroxlav

@DavidPostill:如果您能提到清理这些日志的频率(或应该手动清理的频率),那会很好,因为我想它们会变
得很

1
@Mehrdad如有必要,可以使用从命令行删除事件日志wevtutil。这比使用事件查看器GUI容易。
DavidPostill

3

唯一看到的方法是必须启用审核才能跟踪流程的创建。

从“本地安全策略”程序(secpol.msc如果无法找到它,请从运行屏幕键入),转到“安全设置->本地策略->审核策略”,然后为“成功”启用“审核过程跟踪”。

在此处输入图片说明

完成此操作后,转到事件查看器并检查“安全性”事件日志,在该位置中,每次启动或结束过程时,您都将看到“审计成功”条目。

进程已退出。

学科:
    安全ID:SYSTEM
    帐户名称:SCOTT-PC $
    帐户域:WORKGROUP
    登录ID:0x3E7

处理信息:
    进程ID:0x1338
    进程名称:C:\ Windows \ System32 \ consent.exe
    退出状态:0x0

您需要将所需的进程ID从十进制转换为十六进制(3336变为0xD08)。转换的最简单方法是打开Windows计算器,进入“程序员”模式,在“十进制”模式下输入数字,然后单击“十六进制”模式。显示的数字将为您转换为十六进制。


是的,这是我所期望的答案。简而言之:启用一些日志记录,从而能够检查其结果。
miroxlav

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.