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

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

背景:在我工作期间,突然出现了安装“Microsoft 鼠标和键盘中心”的许可协议。我想了解哪个进程启动了该安装,但使用 Process Explorer 发现它不见了,我只能找到它的 PID(见屏幕截图)。

问题:

如果你正在使用进程探索器,你也许知道这样的情况:进程的父进程不再存在,你只能看到它的PID:

在此处输入图片描述

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

最好是对我没有预料到的场景感兴趣,所以我没有使用进程监控捕获系统中的事件。

答案1

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

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

笔记:


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

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

在 Windows 7/2008+ 中,您需要启用审计进程创建,并可选地启用审计进程终止子类别,您可以在组策略对象中的高级审计策略配置下找到它们。

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

在此处输入图片描述

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


如何启用审计流程跟踪

  1. 运行 gpedit.msc

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

在此处输入图片描述

  1. 右键单击“审计进程跟踪”,并选择“属性”

  2. 勾选“成功”,点击“确定”

在此处输入图片描述


什么是审计流程跟踪

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

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

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

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

默认值:无审计

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

答案2

唯一的查看方式是您必须启用审核来跟踪流程的创建。

从“本地安全策略”程序(secpol.msc如果您找不到它,请从运行屏幕输入)转到“安全设置->本地策略->审计策略”,然后启用“审计过程跟踪”以获得“成功”。

在此处输入图片描述

完成后,转到事件查看器并检查“Secruity”事件日志,在那里您将看到每次启动或结束时进程的“审计成功”条目。

一个进程已经退出。

主题:
    安全 ID:SYSTEM
    账户名称:SCOTT-PC$
    帐户域:WORKGROUP
    登录 ID:0x3E7

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

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

答案3

如果这是一次性的事情,并且你不想总是记录你的进程,我建议使用 Microsoft Process Monitor (https://technet.microsoft.com/en-us/Library/bb896645.aspx)。它需要在流行进程产生之前运行,但即使在父进程死亡之后,它也会捕获您正在寻找的所有信息。

相关内容