前言

一般,我们会使用任务管理器查看系统中有哪些进程在运行,强制杀掉某个进程。可是系统自带的任务管理器功能有限,process explorer是一个功能更强大的工具。它可以让我们查看更多更详细的信息( 比如查看某个进程的父进程,进程加载了哪些dll,打开了哪些文件,线程的cpu使用情况,线程的调用栈,哪些文件被哪些进程占用了,等等 …… )。有没有办法让process explorer替换系统自带的任务管理器呢?????

功能介绍

这个功能,process explorer的作者Mark Russinovich已经帮我们想到了。process explorer提供了一个很酷的功能——替换任务管理器(taskmgr.exe),这样当我们运行任务管理器的时候,就会自动打开功能更强大的process explorer了。

replace task manager

说明:此操作需要以管理员权限运行process explorer

这么厉害的操作,是怎么实现的呢?????

实现原理

原来windows中有个注册表项HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options。如果程序AImage File Execution Options下有对应的注册表项, 当我们启动程序A的时候,系统会启动Debugger子项中的值对应的程序,并把程序A的路径当作参数传递过去。

taskmgr.exe为例,设置如下图:

taskmgr.exe启动的时候,系统检测到taskmgr.exeImage File Execution Options下有对应的设置项,系统会启动Debugger子项中的值对应的程序C:\My\tools\sysinternals\procexp.exe,并把taskmgr.exe的路径(我机器上是C:\WINDOWS\SYSTEM32\TASKMGR.EXE)当作参数传递给procexp.exe

验证

process explorer到底是不是通过这种方法实现的呢?让我们用process monitor来观察一下整个过程吧。具体步骤我就省略了,请参考下面的动图。

replace taskmanager screen record

注意:  process monitor默认会过滤掉process explorer相关的事件,如果想看到相关事件,需要手动取消过滤。自己验证的时候,一定不要忘了这一点。为了引起大家的重视,我特地把相关设置截图贴到下方!

轻松一下

既然我们知道了原理,我们可以尝试尝试其它玩法。用notepad.exe替换taskmgr.exe怎么样?当启动taskmgr.exe的时候,启动的将会是notepad.exe。何不用这项技术娱乐下周围的同事?替换掉大家常用的vs(对应的进程名为devenv.exe),这样当同事打开vs准备写代码的时候,会是什么表情呢?????

脚本

把下列代码保存成taskmgr.reg,双击即可导入到注册表。

Windows Registry Editor Version 5.00[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\taskmgr.exe]"Debugger"="\"C:\\My\\tools\\sysinternals\\procexp.exe\""

注意: Debugger的值要替换成你自己机器上的路径。

你知道吗?

可以使用Ctrl + Alt + Esc或者Ctrl + Alt + Delete来打开任务管理器。你喜欢用哪种方式打开呢?还知道其它打开任务管理器的方法吗?

总结

  • 利用process monitorProcess Tree功能,可以方便的让我们查找到指定的进程,并进行过滤。

  • Image File Execution Options注册表项很好很强大。镜像劫持。

  • process explorerprocess monitor只是sysinternals工具集中的两个常用的工具。心动了吗?请认准官方下载地址:https://docs.microsoft.com/en-us/sysinternals/downloads/

参考资料

  • Image File Execution Options[1]

  • 《Windows Sysinternals 实战指南》

References

[1]  Image File Execution Options:

https://blogs.msdn.microsoft.com/junfeng/2004/04/28/image-file-execution-options/

欢迎留言交流

[原]排错实战——使用process explorer替换任务管理器相关推荐

  1. vba vbscript.regexp加载dll错误_[原]排错实战——拯救加载调试符号失败的IDA

    本文之前发表的时候有些问题,作为强迫症患者的我又重新编辑后再次发表.如果您已经看过,请忽略.望见谅. 缘起 最近想借助IDA逆向一个函数.在windows下,调试器(比如vs, windbg)可以通过 ...

  2. [原]排错实战——拯救加载调试符号失败的IDA

    本文之前发表的时候有些问题,作为强迫症患者的我又重新编辑后再次发表.如果您已经看过,请忽略.望见谅. 缘起 最近想借助IDA逆向一个函数.在windows下,调试器(比如vs, windbg)可以通过 ...

  3. [原]排错实战——通过对比分析sysinternals事件修复程序功能异常

    缘起 最近,我们程序的某个功能在一台机器上不正常,但是在另外一台机器上却是正常的.代码是同一份,vs版本也一样(打的补丁也一样).编译出来的程序在两台电脑上运行的结果就是不一样.惊不惊喜,意不意外?如 ...

  4. [原]排错实战——解决Tekla通过.tsep安装插件失败的问题

    原总结调试排错troubleshootteklaprocess monitorsysinternals 缘起 最近同事使用.tsep安装Tekla插件的时候,Tekla提示该插件已经存在了,需要卸载后 ...

  5. [原]排错实战——VS清空最近打开的工程记录

    原脚本how-toprocess monitorsysinternalsvsvisual studiovs2017vs2019注册表 缘起 vs有一个功能 -- 在起始页会显示最近打开的工程列表,方便 ...

  6. [原]调试实战——程序CPU占用率飙升,你知道如何快速定位吗?

    前言 如果我们自己的程序的CPU Usage(CPU占用率)飙升,并且居高不下,很有可能陷入了死循环.你知道怎么快速定位并解决吗?今天跟大家分享几种定位方法,希望对你有所帮助. 如何判断是否有死循环? ...

  7. 排错实战——解决c++编译错误:error C2059: illegal token on right side of '::'

    缘起 最近,项目里出现了一个奇怪的编译错误.乍看错误提示,真有丈二的和尚,摸不着头脑的感觉.解决之后,又是这么的合情合理.具体是什么样的问题呢?一起来看看吧. 说明: 实际项目中的错误隐藏的更深,完全 ...

  8. Windows 任务管理器被Process Explorer 取代后如何恢复

    最近使用到了Windows下的 Process Explorer 程序,Process Explorer 可以轻松地一键取代系统自带的任务管理器.如下: 使用快捷键 ctrl+shift+esc之后, ...

  9. Process Explorer 15.2:微软增强型任务管理器

    Process Explorer 是一款免费的增强型任务管理器,同时也是微软著名工具包Sysinternals下的组件之一. Process Explorer 能让使用者了解看不到的在后台执行的处理程 ...

最新文章

  1. 安装的 Python 版本太多互相干扰?pyenv 建议了解一下。
  2. OpenStack环境下nova resize报ssh连接错误
  3. 再获绿色等级5A称号!揭开腾讯数据中心节能环保黑科技
  4. 嵌入式软件设计第11次实验报告
  5. linux配置https站点
  6. android 动态表情包,动图GIF表情包下载
  7. guid主分区表损坏如何处理_磁盘管理之磁盘分区,主引导分区表修复
  8. 点播和播放器下载需要的参数的区别(VideoId、AccessKeyId、AccessKeySecret、playKey、playauth)...
  9. 上百种Python炫酷可视化案例珍藏版——看完掌握~一键三连~老板都想要给你升职加薪哟!
  10. 有关USGS下载landsat 8影像的方法
  11. 解决每次打开office都提示windows正在配置visio的问题以及office2013闪退问题
  12. Illegal mix of collations
  13. python动态规划爬楼梯_Python走楼梯问题解决方法示例
  14. python三维建模可视化_用Python三维可视化-一个神奇的函数
  15. 利用jpedal进行pdf转换成jpeg,jpg,png,tiff,tif等格式的图片
  16. 携手红帽拥抱开源,微软助力企业客
  17. 可以下载查看国家自然科学基金的申请文本
  18. 教师资格证查询成绩网站服务器,教师资格证成绩查询入口|面试报名入口
  19. VS2019+QGIS开发库二次开发环境搭建
  20. you appear to be running an x server please exit x before installing

热门文章

  1. 美味奇缘_轻松访问和管理您的美味书签
  2. python应用POP3、IMAP、SMTP 协议,获取邮箱验证码
  3. python测试框架数据生成工具最全资源汇总
  4. github的使用教程
  5. 微信公众号开发之文本消息自动回复,以及系统关注自动回复,php代码
  6. Oracle错误:ORA-27121: unable to determine size of shared memory segment
  7. 基于Redis的MQ中间件实现-目录
  8. jquery实现多行滚动效果
  9. AutoRest - 具有 C# 和 Razor 模板的 Swagger 规范代码生成器。
  10. 如何使用 abp 创建 module 并应用单独的数据库迁移