前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >[系统安全] 三十五.Procmon工具基本用法及文件进程、注册表查看

[系统安全] 三十五.Procmon工具基本用法及文件进程、注册表查看

作者头像
Eastmount
发布2022-01-20 14:16:54
6.7K0
发布2022-01-20 14:16:54
举报

该系列文章将系统整理和深入学习系统安全、逆向分析和恶意代码检测,文章会更加聚焦,更加系统,更加深入,也是作者的慢慢成长史。漫漫长征路,偏向虎山行。享受过程,一起加油~

前文尝试了软件来源分析,结合APT攻击中常见的判断方法,利用Python调用扩展包进行溯源,但也存在局限性。本文将分享Procmon软件基本用法及文件进程、注册表查看,这是一款微软推荐的系统监视工具,功能非常强大可用来检测恶意软件。基础性文章,希望对您有所帮助~

作者作为网络安全的小白,分享一些自学基础教程给大家,主要是关于安全工具和实践操作的在线笔记,希望您们喜欢。同时,更希望您能与我一起操作和进步,后续将深入学习网络安全和系统安全知识并分享相关实验。总之,希望该系列文章对博友有所帮助,写文不易,大神们不喜勿喷,谢谢!

文章目录:

  • 一.Process Monitor 1.基本介绍 2.使用场景 3.新闻事件
  • 二.Procmon分析可执行文件 1.常见用法 2.实例分析
  • 三.Promon分析压缩包
  • 四.总结

作者的github资源:

  • 逆向分析: https://github.com/eastmountyxz/ SystemSecurity-ReverseAnalysis
  • 网络安全: https://github.com/eastmountyxz/ NetworkSecuritySelf-study

声明:本人坚决反对利用教学方法进行犯罪的行为,一切犯罪行为必将受到严惩,绿色网络需要我们共同维护,更推荐大家了解它们背后的原理,更好地进行防护。该样本不会分享给大家,分析工具会分享。(参考文献见后)


一.Process Monitor

1.基本介绍

Process Monitor是微软推荐的一款系统监视工具,能够实时显示文件系统、注册表(读写)、网络连接与进程活动的高级工具。它整合了旧的Sysinternals工具、Filemon与Regmon,其中Filemon专门用来监视系统中的任何文件操作过程,Regmon用来监视注册表的读写操作过程。

  • Filemon:文件监视器
  • Regmon:注册表监视器

同时,Process Monitor增加了进程ID、用户、进程可靠度等监视项,可以记录到文件中。它的强大功能足以使Process Monitor成为您系统中的核心组件以及病毒探测工具。

Process Monitor可以帮助使用者对系统中的任何文件、注册表操作进行监视和记录,通过注册表和文件读写的变化,有效帮助诊断系统故障或发现恶意软件、病毒及木马。

Github下载地址:

  • https://github.com/eastmountyxz/Security-Software-Based

2.使用场景

运行Process Monitor建议使用管理员模式,当你启动Process Monitor后,它就开始监听三类操作,包括:文件系统、注册表、进程。

  • 文件系统 Process Monitor显示所有的Windows文件系统活动,包括本地磁盘和远程文件系统。它会自动探测到新的文件系统设备并监听它们。所有的系统路径都会被显示为相对于在用户会话中的一个文件系统操作的执行。想在列表中清除文件系统的操作,在Process Monitor工具栏上反选“文件系统”按钮,再按下可以增加对文件系统的监听。
  • 注册表 Process Monitor记录所有的注册表操作并显示使用常见的注册表根键缩写来显示注册表路径(如HEKY_LOCAL_MACHINE 缩写为HKLM)。想在列表中清除注册表的操作,在Process Monitor工具栏上反选“注册表”按钮,再次按下可以增加对注册表的监听。
  • 进程 在Process Monitor的进程/线程监听子系统中,它将跟踪所有进程/线程的创建和退出操作,包括DLL和设备驱动程序的加载操作。想在列表中清除进程的操作,在Process Monitor工具栏上反选“进程”按钮,再次按下可以增加对进程的监听。
  • 网络 Process Monitor使用“Windows事件跟踪(ETW)”来跟踪并记录TCP和UDP活动。每个网络操作包括源地址和目标地址,还有发送和接受到的一些数量的数据,但不包括真实的数据。想在列表中清除网络的操作,在Process Monitor工具栏上反选“网络”按钮,再次按下可以增加对网络的监听。
  • 性能分析 这个事件类可以在“选项”菜单中启用。当处于“启用”状态,Process Monitor扫描系统中所有活动的线程并为每个线程生成一个性能分析事件,记录了内核模式和用户模式的CPU时间消耗,还有许多在上个性能分析事件后已被线程执行的环境开关。

二.Procmon分析可执行文件

1.常见用法

下载Procmon.exe软件后,直接双击启动,Procmon会自动扫描分析系统当前程序的运行情况。其中,下图框出来的4个常用按钮作用分别为:捕获开关、清屏、设置过滤条件、查找。最后5个并排的按钮,是用来设置捕获哪些类型的事件,分别表示注册表的读写、文件的读写、网络的连接、进程和线程的调用和配置事件。一般选择前面2个,分别为注册表和文件操作。

输出结果中包括序号、时间点、进程名称、PID、操作、路径、结果、描述等,监控项通常包括:

  • 文件系统
  • 注册表
  • 进程:跟踪所有进程和线程的创建和退出操作
  • 剖析事件:扫描系统中所有活动线程,为每个线程创建一个剖析事件,记录它耗费的核心和用户CPU时间,以及该线程自上次剖析事件以来执行了多少次上下文转换

为了更好地定制选择,可以在过滤器中进行设置(见上图),也可以在Options菜单中选择Select Columns选项,然后通过弹出的列选择对话框来定制列的显示。常用列的选择包括:

  • Application Details – Process Name:产生事件的那个进程的名字 – Image Path:进程镜像的完整路径 – Command Line:命令行,用于启动进程 – Company Name:进程镜像文件中的企业名称。这个文本是由应用程序的开发者来定义的 – Description:进程镜像文件中的产品描述信息。这个文本是由应用程序的开发者定义的 – Version:进程镜像文件中的产品版本号。这个文本是由应用程序的开发者定义的
  • Event Details – Sequence Number:操作在全体事件中的相对位置,也包括当前的过滤 – Event Class:事件的类别(文件,注册表,进程) – Operation:特殊事件操作,比如Read、RegQueryValue等 – Date & Time:操作的日期和时间 – Time of Day:只是操作的时间 – Path:一个事件引用资源的路径 – Detail:事件的附加信息 – Result:一个完成了的操作的状态码 – Relative Time:一个操作相对于Process Monitor的启动后的时间,或者相对于Process Monitor的信息清除后的时间 – Duration:一个已经完成了的操作所持续的时间
  • Process Management – User Name:正在执行操作的进程的用户账户名 – Session ID:正在执行操作的进程的Windows会话ID – Authentication ID:正在执行操作的进程的登录会话ID – Process ID:执行了操作的进程的进程ID – Thread ID:执行了操作的线程的线程ID – Integrity Level:正在运行的进程执行操作时的可信级别(仅支持Vista以上系统) – Virtualized:执行了操作的进程的虚拟化状态

2.实例分析

下面我们采用分析开机自启动的某个“hi.exe”程序。注意,作者之前第36篇文章CVE漏洞复现文章中,将“hi.exe”恶意加载至自启动目录,这里分析它。

C:\Users\xxxx\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

第一步,设置过滤器。 打开软件Process Moniter,并点击filter->filter。

在弹出的对话框中Architecture下拉框,选择Process Name填写要分析的应用程序名字,点击Add添加,最后点击右下角的Apply。

第二步,执行被分析的应用。 双击应用程序会弹出“计算器”。

可以看到Process Mointor监控到应用的行为。

第三步,查看可执行文件的位置。 点击查找按钮,然后输入“CreateFile”。

找到该选项之后,我们右键点击“Jump To”。

我们可以去到该文件所在的文件夹下,即:

Win 7/10: C:\Users\xxxx\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup Win XP: C:\Documents and Settings\Administrator\「开始」菜单\程序\启动

第四步,查看注册表选项。 查寻文件“RegSetValue”。

右键选择jump to跳转到注册表。

可以看到注册表的内容,如果自启动还能看到相关键对的设置。

Windows自动重启运行的程序可以注册在下列任一注册表的位置。

  • HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
  • HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce
  • HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run
  • HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce

三.Promon分析压缩包

接着我们分析该压缩包。

第一步,过滤器设置。 打开软件Process Moniter,并点击filter->filter。在弹出的对话框中Architecture下拉框,选择Process Name填写要分析的应用程序名字,点击Add添加、Apply应用。注意,也可以增加其他过滤规则。

第二步,打开压缩包及某个文件。 未打开压缩包前运行结果如下图所示:

打开该压缩包中的“2020-02-22-china.csv”文件,这是作者Python大数据分析武汉疫情的开源代码,也推荐感兴趣的读者阅读。

Procmon显示了与WinRAR相关的操作,如下图所示。我们可以查看运行的进程、注册表等信息。

第三步,查询“china.csv”相关的文件。

可以看到临时文件,其路径为:

C:\Users\xxxx\AppData\Local\Temp\Rar$DIa14092.24700

第四步,右键点击“Jump To”跳转查看文件。

跟踪这个目录,在C盘对应目录下找到了这个文件,打开之后和本来打开的文件内容相同。

AppData\Local\Temp 它是电脑Windows系统临时存储的文件夹,会把浏览者浏览过的网站或者其它记录保存在这里。如果下次打开相应的地址,电脑会更快提取文件,甚至在没有网络时也能查看到。这是不安全的,你保密的文件文件也可能存在该位置,建议及时删除。

第五步,WinRAR压缩包内文件直接打开后,有两种关闭方式:先关闭打开的文件,再关闭打开的压缩包。另外一种方式是先关闭打开的压缩包,再关闭打开的文件。建议大家利用Process Moniter分析上述两种方式的不同点。

打开压缩包时加载的文件个数如下图所示。

先关闭word文件,再关闭winrar。注意,关闭word文件后,Process Monitor监测到了事件;再关闭winrar,Process Monitor也监测到了事件。

这仅是一篇基础性用法文章,更多实例作者希望深入学习后分享出来。比如监控某个目录下文件的创建、修改、删除、访问操作,从而保存日志为文件,以便日后分析。

  • WriteFile:写操作,依照文件大小可能产生多条
  • ReadFile:读操作,一次读会产生很多条
  • SetAllocationInformationFile:改写文件时触发
  • SetEndOfFileInformationFile:改写文件时触发
  • SetRenameInformationFile:重命名时触发
  • SetDispositionInformationFile:删除文件时触发

四.总结

写到这里,这篇文章就介绍完毕,主要包括三部分内容:

  • Procmon软件介绍
  • Procmon分析可执行文件
  • Procmon分析压缩包文件加载项,包括进程和注册表

接下来,作者将采用该工具在虚拟机中分析恶意样本,涉及知识点包括:

  • 文件活动行为分析:Procmon监控木马客户端的文件行为
  • 注册表活动行为分析:Procmon监控木马客户端的注册表设置值行为
  • 网络活动行为分析:Wireshark监控网络行为、TCP三次握手连接、被控端与控制端之间的通信过程

希望这系列文章对您有所帮助,真的感觉自己技术好菜,要学的知识好多。从网络安全到系统安全,从木马病毒到后门劫持,从恶意代码到溯源分析,从渗透工具到二进制工具,还有Python安全、顶会论文、黑客比赛和漏洞分享。未知攻焉知防,人生漫漫其路远兮,作为初学者,自己真是爬着前行,感谢很多人的帮助,继续爬着,继续加油!

学安全一年,认识了很多安全大佬和朋友,希望大家一起进步。这篇文章中如果存在一些不足,还请海涵。作者作为网络安全初学者的慢慢成长路吧!希望未来能更透彻撰写相关文章。同时非常感谢参考文献中的安全大佬们的文章分享,深知自己很菜,得努力前行。

《珈国情》 明月千里两相思, 清风缕缕寄离愁。 燕归珞珈花已谢, 情满景逸映深秋。

最感恩的永远是家人的支持,知道为啥而来,知道要做啥,知道努力才能回去。夜已深,虽然笨,但还得奋斗。

(By:Eastmount 2022-01-13 夜于武汉 )


参考文献:

  • [1] 《软件安全》实验之恶意样本行为分析
  • [2] https://github.com/eastmountyxz/Security-Software-Based
  • [3] Process Monitor分析某个应用行为 - cui0x01
  • [4] https://docs.microsoft.com/en-us/sysinternals/downloads/procmon
  • [5] https://wenku.baidu.com/view/aaf324150b4e767f5acfcec4.html
  • [6] Process Monitor中文手册 - D_R_L_T
  • [7] ProcessMonitor文件以及注册表监视器的使用 - Amrecs
  • [8] Process Monitor监控目录 - 监控文件被哪个进程操作了 - kendyhj9999

前文回顾(下面的超链接可以点击喔):

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-01-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 娜璋AI安全之家 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一.Process Monitor
    • 1.基本介绍
      • 2.使用场景
      • 二.Procmon分析可执行文件
        • 1.常见用法
          • 2.实例分析
          • 三.Promon分析压缩包
          • 四.总结
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档