Process Monitor下载安装使用教程(图文教程)超详细

「作者简介」:2022年北京冬奥会网络安全中国代表队,CSDN Top100,就职奇安信多年,以实战工作为基础对安全知识体系进行总结与归纳,著作适用于快速入门的 《网络安全自学教程》,内容涵盖系统安全、信息收集等12个知识域的一百多个知识点,持续更新。

在这里插入图片描述

Process Monitor 是微软提供的一款系统进程监视软件。常用来检测恶意软件和处理系统故障。

Process Monitor 使用教程

  • 1、下载安装
  • 2、功能使用
    • 2.1、界面字段解释
    • 2.2、筛选事件类型
    • 2.3、自动滚动
    • 2.4、清空列表
    • 2.5、停止监听
    • 2.6、调整显示列
    • 2.7、查看事件属性
    • 2.8、过滤器
    • 2.9、导出PML文件
  • 3、实战案例
    • 3.1、分析浏览器启动过程
    • 3.2、分析压缩包解压过程
    • 3.3、抓取开机启动日志
  • 4、事件操作类型翻译

1、下载安装

官网下载:
https://learn.microsoft.com/zh-cn/sysinternals/downloads/procmon

在这里插入图片描述

绿色版免安装,解压后双击运行Procmon64.exe

在这里插入图片描述
在这里插入图片描述

2、功能使用

2.1、界面字段解释

打开软件后,主界面默认展示字段分别是:

  • Time of Day:事件发生的事件。
  • Process Name:触发该事件的进程名。鼠标悬停在进程名上可以显示进程路径。
  • PID:进程ID。
  • Operation:事件的操作类型。
  • Path:事件操作的文件的路径,非进程路径。
  • Result:事件操作结果。
  • Detail:事件操作的额外信息(没啥用)。

在这里插入图片描述

2.2、筛选事件类型

工具栏右侧的5个图标,分别是注册表读写事件、文件读写事件、网络连接事件、进程和线程的调用事件、配置事件。点击点亮图标后显示对应类型的事件,不亮不显示。

在这里插入图片描述

事件对应的操作解释见文末。

2.3、自动滚动

点工具栏左侧的蓝色图标 或 快捷键 Ctrl + XEdit - Auto Scroll,可以让事件自动往下滚动,方便我们观察最新的事件。

在这里插入图片描述

2.4、清空列表

点工具栏左侧的垃圾桶图标 或 Ctrl + XEdit - Clear Display,可以清空列表中的事件。当捕获的事件太多时,可以清空列表,只看新增的事件。

在这里插入图片描述

2.5、停止监听

点工具栏左侧的定位框图标 或 Ctrl + EFile - Capture Events,可以停止监听事件。当我们找到目标事件后,就可以停止监听,列表就不会动了。

在这里插入图片描述

2.6、调整显示列

鼠标拖动列名,可以调整列的位置。

Options - Select Columns 可以自定义显示列。想看那个字段,就勾选上。

在这里插入图片描述

Application Details 应用程序数据

  • Process Name:生成事件的进程名
  • Image Path:进程的位置(镜像路径)
  • Command Line:启动进程的命令参数
  • Company Name:进程程序文件的注册公司名称
  • Description:进程程序文件的描述
  • Version:进程程序文件的产品版本号
  • Architecture:进程程序文件的架构(32位或64位)

Event Details 事件数据

  • Sequence Number:序号,标明该事件在所有事件中的相对位置(0,1,2,3,...
  • Event Class:事件类别(NetworkProcess 等)
  • Operation:事件的操作类型(CloseFileCreateFile等)
  • Date & Time:事件的操作日期
  • Time of Day:事件的操作事件
  • Category:事件的操作种类(WriteRead Metadata等)
  • Path:事件操作的资源的路径(非进程路径)
  • Detail:事件操作的附加信息
  • Result:事件操作的结果
  • Relative Time:事件操作的发生时间,Process Monitor启动后开始计算。
  • Duration:事件操作的执行时间。
  • Completion Time:事件操作的结束时间。

Process Management 进程管理

  • User Name:执行进程的用户名
  • Session ID:进程的Windows会话ID
  • Authentication ID:进程的登录会话ID
  • Integrity:进程操作的可信级别
  • Process ID:进程ID
  • Thread ID:线程ID
  • Parent PID:父进程ID
  • Virtualized:进程的虚拟化状态

2.7、查看事件属性

双击事件任意位置 或 右键 - Properties 可以查看事件属性。

属性有 Event(事件)、Process(进程)、Stack(堆栈)三个标签。

Event标签记录:开始时间、线程、事件类型、操作类型、操作结果、操作的文件路径、耗时。

在这里插入图片描述

Process标签记录:

  • 进程基础信息:公司名、进程名、版本号、进程路径、进程启动参数。
  • 进程运行信息:进程ID、架构、父进程ID、进程的虚拟化状态、Windows会话ID、可信度、用户、运行的开始结束时间。
  • 进程加载的模块

在这里插入图片描述
Stack标签记录调用的模块名和地址,方便溯源进程链,双击可以查看详细信息。

K开头是内核模式,U开头是用户模式。

在这里插入图片描述

2.8、过滤器

如果已经知道了恶意软件的程序名、进程等信息,可以使用过滤器来筛选。

在这里插入图片描述

点工具栏的漏斗图标 或 快捷键 Ctrl + LFilter - Filter,打开过滤器。

在这里插入图片描述

文章后面的案例会详细介绍使用步骤。

2.9、导出PML文件

有时候遇到问题无法解决,需要抓进程日志,导出PML文件给别人分析。
复现问题后,点 File - Save,弹出的保存界面勾选 ALL events保存所有事件。Path后边是PML文件保存的路径,可按需修改。

在这里插入图片描述

3、实战案例

3.1、分析浏览器启动过程

打开并关闭浏览器,分析浏览器进程的行为。

工具栏开启监听、开启自动滚动、打开所有的事件类型筛选。

在这里插入图片描述

1)清空过滤器

点工具栏的过滤图标,打开过滤器。Reset 清空历史过滤,Apply 应用,OK 关闭窗口。

注意:每次使用前都看一眼这里的过滤规则,是否需要清空或调整。

在这里插入图片描述

2)寻找浏览器的进程。

打开浏览器(这里用Edge)后,点定位框图标停止监听,最后面的部分可以看到浏览器的进程是 msedge.exe

在这里插入图片描述

3)过滤浏览器进程

过滤字段选 Process Name根据进程名过滤,过滤规则选 is,过滤内容填 msedge.exe 只看Medg浏览器的进程,点Add添加到下面的列表中,Apply应用,OK关闭窗口。

在这里插入图片描述

4)捕获浏览器的启动过程。

关掉浏览器后,点定位框图标开启监听,点垃圾桶图标清空列表。

打开浏览器再关闭,就能看到浏览器从启动、运行到关闭都做了什么。

我们可以看到,刚打开时,浏览器的线程开始 Start 启动、Create 创建,开始读注册表、读写文件等。

在这里插入图片描述

关闭浏览器时,线程开始Exit结束,之前打开的文件也都被Close关闭。

在这里插入图片描述

3.2、分析压缩包解压过程

解压压缩包,寻找每个解压后的文件对应的操作。

工具栏开启监听、开启自动滚动、打开所有的事件类型筛选。

在这里插入图片描述

1)清空过滤器(同3.1)

2)解压压缩包

用文章开头下载的安装包,右键解压,点定位框图标停止监听。

事件很多,我们往上滑一些,这里我用的7z解压,所以能看到大量7zG.exe的进程。

在这里插入图片描述

3)过滤解压工具进程

第一个过滤器:过滤字段选 Process Name ,过滤规则选 is,过滤内容填 7zG.exe只看解压工具的进程,点Add添加到下面的列表中,Apply应用,OK关闭窗口

在这里插入图片描述

跟上一个案例一样,也是先 Start 创建进程,中间很多读写注册表、文件的操作,最后Exit退出线程。

在这里插入图片描述

4)过滤文件创建操作

第二个过滤器:过滤字段选 Operation 操作,过滤规则选 is,过滤内容选 CreateFile只看创建文件的操作(点右侧的下拉图标能选),点Add添加到下面的列表中,Apply应用,OK关闭窗口

在这里插入图片描述

可以看到解压后的目录里,每个文件都能找到对应的操作。

在这里插入图片描述

5)排除路径

Create 创建的文件有很多C盘的,这些是压缩工具自带的文件或系统文件,我们不关心,所以把C盘的路径都排除掉。

第三个过滤器:过滤字段选 Path 路径,过滤规则选 Contains包含,过滤内容填 C:\,包含关系选Exclude排除,点Add添加到下面的列表中,Apply应用,OK关闭窗口

在这里插入图片描述

这样再看就清晰多了。能看到它先创建了ProcessMonitor目录,又创建了里面的每个文件。

在这里插入图片描述

6)分析操作详情

从事件属性里看 test 目录 和 ProcessMonitor 目录的操作区别。

test目录是解压前我创建的,所里它们的操作都是 Open 打开资源,而非真正的创建。

在这里插入图片描述

ProcessMonitor目录是工具创建的,所以第一个操作是 Create 创建,后面的操作才是 Open

在这里插入图片描述

后面每个exe文件都有两个操作,也是类似的逻辑,第一个操作创建文件,第二个操作打开文件写内容。

3.3、抓取开机启动日志

顽固病毒在启动项留存等场景,需要在开机过程中就抓取日志,可以使用 Boot Logging 开机记录功能。

  1. 勾选 Options - Ebable Boot Logging,记录下一次启动过程。
  2. 重启电脑后,日志保存到 %Windir% 目录下(记录持续到Process Monitor被打开 或 关机)
  3. 再次运行 Process Monitor,会询问你启动记录保存到哪里(保存后 %Windir% 的日志会删掉 并且取消勾选 Ebable Boot Logging)。
  4. 保存后会自动打开开机记录日志,再次打开可以点 File - Open 打开刚才保存的文件。

1)开启开机记录功能

在这里插入图片描述

2)重启后日志(临时)保存在 %Windir% 目录,很大,1个多G。

在这里插入图片描述

3)再次打开 Process Monitor,询问是否保存开机记录?

在这里插入图片描述

4)保存开机记录到指定位置。

在这里插入图片描述

5)保存后自动打开开机记录文件,分析是否有异常事件。

在这里插入图片描述

4、事件操作类型翻译

最后附上事件操作类型的翻译,不需要单独记忆,用的时候搜即可。

CloseFile 文件-关闭
CreateFile 文件-创建
CreateMailSlot 创建邮件位
CreatePipe 创建管道
DeviceChange 设备改变
DeviceloControl设备输入/输出控制
FileStreamInformation 文件流信息
FileSystemControl文件系统控制
FlushBuffersFile 清空缓冲文件
InternalDeviceloControl 内部设备IO控制
LoadImage 装载映像
LockFile 文件-锁定
NotifyChangeDirectory 提示改变目录
PlugAndPlay 即插即用
Power 电源
Process Create 进程-创建Process Defined 进程-定义
Process Exit 进程-关闭
Profiling interrupt 配置中断?
QueryAllInformationFile 查询所有信息文件
QueryAttribbuteTagFile 查询属性标签文件
QueryAttributelnformationVolume 查询属性信息卷 (容量?)
QueryBasicInformationFile 查询基本信息文件
QueryCompressionInformationFile 查询压缩信息文件
QueryControllnformationVolume 查询控制信息卷
QueryDevicelnformationVolume 查询设备信息卷
QueryDirectory 查询-目录
QueryEAFile ?
QueryEalnformationFile ?
QueryFilelnternallnformationFile 查询文件内部信息文件
QueryFileQuota 查询文件配额
QueryFullSizelnformationVolume 查询全尺寸信息卷
QuerylnformationVolume 查询信息卷
QueryLabellnformationVolume 查询标签信息卷
QueryMinorCode49>查询副编码
QueryMoveClusterlnformationFile 查询移动族信息文件
QueryNamelnformationFile 查询名字信息文件
QueryNetworkOpenlnformationFile 查询网络开启信息文件
QueryObjectldInformationVolume 查询对象ld信息卷
QueryOpen查询-打开
QueryPositionInformationFile 查询位置信息文件
QuerySecurityFile 查询安全文件
QuerySizelnformationVolume 查询尺寸信息卷
QueryStandardInformationFile 查询标准信息文件
QueryStreamInformationFile 查询流信息文件.
ReadFile 文件-读取
RegCloseKey注册表-关闭键
RegCreateKey注册表-创建键
RegDeleteKey 注册表-删除键
RegDeleteValue注册表-删除值
RegEnumKey注册表-枚举键
RegEnumValue注册表-枚举值
RegFlushKey注册表-清空键
RegLoadKey注册表-读取键
RegOpenKey注册表-打开键
RegQueryKey注册表-查询键
RegQueryKeySecurity 注册表-查询键安全性
RegQueryMultipleValueKey 查询多值键
RegQueryValue注册表-查询值
RegRenameKey注册表-重命名键
RegSetInfoKey 设置信息键
RegSetKeySecurity注册表-设置键安全性
RegSetValue注册表-设置值
RegUnloadKey 卸载键://blog
SetAllInformationFile 设置全信息文件
SetBasicInformationFile 设置基本信息文件
SetDispositionlnformationFile 设置部署信息文件
SetEAFile ?
SetEndOfFilelnformationFile 设置文件结尾信息文件
SetFileQuota 设置文件配额
SetLinkInformationFile 设置连接信息文件
SetPipelnformation 设置管道信息
SetPositionInformationFile 设置位置信息文件
SetRenamelnformationFile 设置重命名信息文件
SetSecurityFile 设置安全文件
SetShortNamelnformation 设置短名称信息
SetValidDataLengthInformationFile 设置合法数据长度信息文
SetVolumelnformation 设置卷信息
shutdown 关闭
SystemControl系统控制
Thread Create 线程-创建
Thread Exit 线程-关闭
Thread Profile 线程-Profile
UnlockFileAll 文件解锁全部
WriteFile 文件-写入

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/838846.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

maven的安装与配置(超详细)

在Java开发中,配置Maven环境有几个重要的原因: 依赖管理:Maven 是一个强大的依赖管理工具,它能够帮助开发人员轻松地管理项目所需的各种第三方库和组件。通过在项目的 Maven 配置文件(pom.xml)中定义依赖&…

人工智能改善客户体验的10种方式

什么是人工智能客户体验? 人工智能客户体验是指使用人工智能技术(如机器学习、聊天机器人和对话式用户体验)使每个接触点尽可能高效且无障碍的实践。本质上,客服代表得到了一个虚拟助手帮助他们完成重复性任务。这意味着对于有简…

期权(1):基本概念,权利金,定金,买方,卖方,零和游戏,对赌协议

期权是合约,权利金就是定金! 合约到期时 买方可以选择行权,也可以选择不行权。代价就是定金损失。因此亏损封顶,但盈利无限。卖方赚的就是买方的定金,盈利封顶,但亏损无限。 从这里,我们看出…

C语言例题42、打印金字塔

#include <stdio.h>void main() {int i, j;for (i 0; i < 5; i) {for (j 4; j > i; j--) {//输出空格printf(" ");}for (j 0; j < 2 * i 1; j) {//输出星号printf("* ");}printf("\n");} }运行结果&#xff1a; 本章C语言经…

HTML5实现简洁好看的个人主页,个人小站(多种风格附源码)

文章目录 1.烟灰主题个人主页1.1 个人主页界面1.2 个人信息界面1.3 兴趣爱好界面1.4 个人作品界面 2.紫霞主题个人主页2.1 个人主页界面2.2 个人信息界面2.3 兴趣爱好界面2.4 个人作品界面 3.墨夜主题个人主页3.1 个人主页界面3.2 个人信息界面3.3 兴趣爱好界面3.4 个人作品界面…

优雅谈论大模型5: RAG

RAG 众所周知&#xff0c;大模型以及一些预训练的模型在训练完毕之后会在其参数存储了大量的压缩资讯。但是这样的参数是通过固定的语料库训练而成&#xff0c;训练完毕之后这个模型已经固定了。然而外部资讯瞬息万变&#xff0c;加上大模型本质上为一种概率模型&#xff0c;所…

Nginx读书笔记

Nginx 是高性能的 HTTP 和反向代理的web服务器

ffmpeg使用xfade的转场特效

ffmpeg使用xfade的转场特效 1. 介绍2. ffmpeg里面的xfade3. 使用 1. 介绍 参考文档 ffmpeg是一个音视频编辑工具&#xff0c;具体的。。。。我才搞接触&#xff0c;所以不懂。 xfade是一种视频转场滤镜&#xff0c;用于在两个视频片段之间创建平滑的过渡效果。xfade的转场效果…

软件测试有哪些常用的测试方法?

&#x1f345; 视频学习&#xff1a;文末有免费的配套视频可观看 &#x1f345; 点击文末小卡片 &#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快 软件测试是软件开发过程中重要组成部分&#xff0c;是用来确认一个程序的质量或者性能是否符合开…

visual studio snippet常用注释片段

Visual Studio 2022 添加自定义代码片段_vs2022 代码片段-CSDN博客 dclass.snippet: <?xml version"1.0" encoding"utf-8"?> <CodeSnippets xmlns"http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet"> …

前端JS必用工具【js-tool-big-box】学习,检测当前是否为手机端浏览器,检测某元素是否处于当前可视范围内

这一小节&#xff0c;js-tool-big-box工具库又迎来了两个非常实用功能成员&#xff0c;分别是检测当前浏览器是否为手机端浏览器&#xff0c;还有检测某元素当前是否处于可视范围内。 1 安装引入 通过npm安装&#xff0c;执行以下命令 npm i js-tool-big-box 这两个功能&…

跨域数据流动:数据提取过程中的治理与安全双轮驱动

跨域数据流动&#xff1a;数据提取过程中的治理与安全双轮驱动 随着信息技术的飞速发展&#xff0c;跨域数据流动已成为现代社会的常态。从医疗记录到金融交易&#xff0c;从社交媒体到企业运营&#xff0c;数据在各个领域之间频繁交换&#xff0c;为社会发展带来了极大的便利…

汽车电子笔记之-012:旋变工作原理及软解码硬解码

目录 1、旋变 1.1、激励的产生 1.2、旋变的标定 2、旋变解码 2.1、旋变硬解码 2.2、软解码 1、旋变 旋转变压器&#xff08;旋变&#xff09;&#xff0c;是电机控制中常用的一种位置传感器&#xff0c;用来反应电机的转子位置&#xff0c;提供给软件做电机控制等相关算法…

java基础之对线程的理解

目录 程序、进程、线程 什么是进程&#xff1f; 什么是线程 线程与进程的区别&#xff1f; 二、多线程 实现多线程方式一&#xff1a;继承Thread类 实现多线程方式二&#xff1a;实现Runnable接口 实现多线程方式三: 实现Callable接口 ​ 三种实现方式的对比 设置和获…

【WEEK12】 【DAY3】整合MyBatis框架【中文版】

2024.5.15 Wednesday 目录 13.整合MyBatis框架13.1.整合测试13.1.1.新建springboot-05-mybatis项目13.1.2.导入MyBatis需要的依赖13.1.3.配置数据库连接信息13.1.3.1.修改application.properties13.1.3.2.修改Springboot05MybatisApplicationTests.java并测试 13.1.4.新建pojo文…

InnoDB 事务处理机制

文章目录 前言1. 事务处理挑战1.1 事务机制处理的问题1.2 并发事务带来的问题 2. InnodDB 和 ACID 模型2.1 Innodb Buffer Pool2.2 Redo log2.3 Undo log2.4 应用案例 3. 隔离级别和锁机制3.1 事务隔离级别3.1.1 READ UNCOMMITTED3.1.2 READ COMMITTED3.1.3 REPEATABLE READ3.1…

SpringBoot应用

文章目录 第一章、SpringBoot基础内容一、Spring和SpringBoot1、Spring介绍2、SpringBoot介绍 二、SpringBoot2入门操作1、在线构建2、idea构建 三、浅谈自动装配的原理 第二章、SpringBoot核心功能一、配置文件1、配置文件介绍2、语法规则3、数据类型4、案例使用 二、WEB开发1…

如何管理测试用例?测试用例有什么管理工具?YesDev

3.1 测试用例 测试用例(Test Case) 是指对一项特定的软件产品进行测试任务的描述&#xff0c;体现测试方案、方法、技术和策略。其内容包括测试目标、测试环境、输入数据、测试步骤、预期结果等。简单地认为&#xff0c;测试用例是为某个特殊目标而编制的一组测试输入、执行条…

CPT7数据保存详细步骤

一、连接设备、打开NovAtelConnect 软件 (1)点击1,并在2中输入如下命令: LOG RANGEB ONTIME 1 // 输出原始数据记录在板卡LOG RAWEPHEMB ONTIME 1 // 输出 GPS 原始星历记录在板卡LOG bdsephemerisb ONTIME 1 // 输出

在澳门写代码;技术入股2次融资被踢;现在只想做独立开发

本期我们邀请的程序员是Albert&#xff0c;先后在广州、澳门、珠海、香港工作过&#xff0c;打工上班、合伙创业、远程工作、独立开发&#xff0c;工作经历丰富&#xff0c;如果你想知道哪些程序员踩过的坑&#xff0c;请别错过他的故事。 广州&#xff1a;第一份工作2000块一…