目录
Sysinternals的故事要从1996年说起。当时Mark Russinovich和Bryce Cogswell这两位技术专家创立了Winternals公司,专门开发用于解决Windows系统底层问题的工具。他们开发的Process Explorer、FileMon、RegMon等工具在技术圈内迅速走红,因为这些东西能做的事情远超Windows自带的任务管理器。
2006年微软把这套工具连同它的创始人一起收购了。Mark Russinovich就是那个用自己开发的RootkitRevealer工具发现索尼CD采用Rootkit程序的人,这件事当年在安全圈炸开了锅。微软收购之后兑现了一个承诺——所有Sysinternals工具继续免费,并且持续更新适配新系统。
到今天为止,Sysinternals Suite已经包含70多个独立工具,覆盖进程管理、磁盘文件、网络诊断、安全分析、系统信息、调试开发等多个领域。这些工具的共同特点是能深入到Windows内核层,把系统正在做的一切摊在你面前。很多工具已经维护了20年以上,在微软官网持续更新,版本迭代非常活跃。
为什么说它是终极工具箱?因为当你遇到任务管理器看不到的进程、删不掉的文件、查不清的启动项时,Sysinternals里总有一款工具能解决问题。而且微软还提供了一个叫Sysinternals Live的服务,你甚至不用下载,直接在资源管理器地址栏输入live.sysinternals.com就能运行工具。
官网入口地址
https://learn.microsoft.com/zh-cn/sysinternals/
下载地址
https://learn.microsoft.com/zh-cn/sysinternals/downloads/sysinternals-suite
整套工具打包为一个Zip文件下载,解压后即可使用,无需安装。
功能介绍
一、进程与资源管理类
Process Explorer是这套工具里最出名的之一。它比Windows自带的任务管理器强大太多。打开之后你能看到每个进程的详细树形结构,父子关系一目了然。选中一个进程,它能告诉你这个进程打开了哪些文件、加载了哪些DLL、占用了哪些句柄。最实用的功能是查找某个DLL或文件被哪个进程占用了——比如你删不掉一个文件,用Process Explorer搜一下就知道谁在搞鬼。
Process Monitor则是另一款重量级工具,它实时监控文件系统、注册表和进程活动。你可以把它理解成一个系统活动的摄像机,把每一笔读写操作都记录下来。排查软件安装问题、注册表权限错误、文件访问被拒这类问题时特别好用。
二、启动项与自动运行管理类
Autoruns是检查电脑启动项的优选工具。Windows自带的msconfig只能看个大概,Autoruns能把几十个启动位置全部列出来——登录项、计划任务、服务、驱动、浏览器插件、资源管理器扩展,一个不落。怀疑电脑有开机自启的恶意软件?用Autoruns扫一遍,没有签名验证的条目全都能揪出来。
三、磁盘与文件工具类
Disk2vhd可以把正在运行的物理硬盘直接转换成虚拟硬盘文件,不用关机不用重启。做物理机迁移到虚拟机时这个工具能省不少事。SDelete是安全删除工具,普通删除的文件还能被恢复软件找回来,用SDelete覆盖几次之后基本没戏。
四、网络诊断工具类
TCPView列出电脑上所有TCP和UDP连接,哪个进程连了哪个IP、用了哪个端口清清楚楚。发现电脑在偷偷往外传数据?用TCPView看看是谁在搞事情。PsPing比系统自带的ping命令强,能测试TCP端口的连通性和延迟。
五、安全与权限分析类
AccessChk用来检查用户或用户组对文件、注册表、服务等对象的访问权限。做权限审计时特别有用,命令行输出也很适合写脚本批量检查。Sysmon是高级安全监控组件,安装后以驱动形式运行,能记录进程创建、网络连接、文件写入等详细日志,是安全应急响应的标配工具。
六、系统信息与调试类
RAMMap展示物理内存的使用情况,不是任务管理器那种简单的百分比,而是把内存按用途分类——正在使用的、备用缓存、空闲的、驱动占用的。排查内存泄漏问题时,RAMMap能帮你搞清楚内存到底去哪了。BlueScreenView虽然不是Sysinternals原生工具,但在微软官方推荐的工具列表里,用来分析蓝屏dump文件很方便。
WinObj让你像浏览文件一样浏览Windows内核对象命名空间。Device、Driver、BaseNamedObjects这些平时看不到的东西全都能翻出来。做驱动开发或者内核研究的人离不开它。
七、实用小工具类
ZoomIt是屏幕放大和标注工具,做演示或录屏时特别好用。按快捷键就能放大屏幕、画线画框、打字标注,支持录制MP4和GIF。Desktops提供虚拟桌面功能,最多能创建四个桌面,在不同桌面之间快速切换。
应用场景
场景一:电脑突然卡顿或CPU占用高
打开任务管理器发现有个进程占用很高但不知道它在干嘛。用Process Explorer看这个进程的线程详情、加载的模块、打开的文件句柄,判断是不是正常行为。如果是恶意软件,用TCPView看它有没有连接可疑IP。
场景二:怀疑电脑有病毒但又查不出来
普通杀毒软件靠特征库,新出的变种查不到。用Autoruns查启动项找异常条目,用Process Explorer看有没有伪装成系统进程的恶意程序,用TCPView看有没有异常外联,用Process Monitor跟踪可疑进程的文件和注册表操作。
场景三:文件或文件夹删不掉
Windows提示文件被占用,但不知道被谁占用。用Process Explorer的查找功能,输入文件名,马上定位到占用该文件的进程,结束进程或卸载模块后就能删了。
场景四:某软件安装失败或报错
安装程序写到一半报错退出,不知道问题出在哪。用Process Monitor提前开启监控,设置好过滤条件只记录该安装程序的活动,安装失败后看日志里哪个注册表项或哪个文件返回了Access Denied或路径不存在。
场景五:服务器做安全加固和权限审计
用AccessChk批量检查关键目录和注册表权限,找出Everyone或Authenticated Users有写入权限的风险路径。用ShareEnum扫描所有网络共享的权限设置,生成报告供整改。
定价说明
Sysinternals Suite免费。微软从收购至今一直保持免费策略,所有工具无任何付费限制或功能。你可以在商业环境、个人电脑、服务器上随意使用。
| 源码反馈/咨询 (共有 条反馈) |
Sysinternals常见问题
这套工具最初由Mark Russinovich和Bryce Cogswell创立的Winternals公司在1996年开始开发。2006年微软收购了Winternals,之后就一直由微软官方维护和更新到现在。Mark Russinovich本人也加入了微软,目前担任首席技术官,仍然参与这些工具的开发工作。
可以把它理解成一堆Windows高级工具的,总数超过70个。这些工具能做到的事情比Windows自带的强太多了。比如任务管理器只能看个大概的进程列表,Process Explorer能显示进程树、看DLL、查句柄、找文件占用。再比如msconfig只能看几个简单的启动项,Autoruns能列出几十个启动位置。总的来说就是给懂电脑的人准备的深度诊断工具箱。
用法取决于具体哪个工具。大部分工具下载下来是个exe文件,双击就能打开,不需要安装。有些工具比如Process Explorer、Autoruns打开后界面比较直观,菜单和列表都能点。命令行工具像PsPing、AccessChk需要在命令提示符里运行,后面跟上参数。微软官方文档里有每个工具的使用说明。新手建议先从Process Explorer和Autoruns这两个图形界面工具入手,熟悉之后再玩Process Monitor和Sysmon这些更复杂的。
免费,微软收购之后就一直免费,没有任何收费项目。不管是个人用还是公司用,都不需要付钱。不像有些专业工具免费版功能受限,Sysinternals所有功能全开放。你从微软官网下载的就是完整版。
工具本身是安全的,微软官方出品,数字签名都是微软的。但是要注意一点--正因为这些工具太强大了,有些杀毒软件会把它们的行为误判为风险。比如PsExec远程执行程序,很多企业版杀毒软件会报警。另外从网上下载的时候要认准微软官网learn.microsoft.com,别去第三方下载站。下载后右键文件属性,如果能看到微软的数字签名就是正品。
有几个小技巧挺实用。第一,把整个套件解压到一个固定文件夹,然后把这个文件夹路径加到系统环境变量PATH里,这样在命令行任何位置都能直接输工具名运行。第二,用Sysinternals Live服务,在资源管理器地址栏输入live.sysinternals.com就能直接运行工具不用下载。第三,Process Explorer的VirusTotal集成功能很香,打开后它会自动把进程提交到VirusTotal扫描,几十个杀毒引擎帮你判断有没有恶意软件。第四,Process Monitor的过滤功能一定要学会用,不然日志刷屏刷到你怀疑人生。
特色的地方是能访问Windows内核层,这是普通软件做不到的。比如WinObj能浏览内核对象管理器命名空间,能看到Device、Driver这些内核层面的东西。Sysmon以驱动形式运行,能记录进程创建、网络连接这些高级安全日志。具体用途大概分几块:排查进程和性能问题用Process Explorer和Process Monitor;查启动项和恶意软件用Autoruns;做网络诊断用TCPView和PsPing;做权限审计用AccessChk和ShareEnum;搞内存分析用RAMMap和VMMap。
这些工具是本地运行的,默认情况下不会把数据上传到任何服务器。只有一个例外--Process Explorer的VirusTotal功能会上传进程信息到VirusTotal网站做扫描,如果你介意的话可以在设置里关掉这个功能。他工具比如Process Monitor记录的日志文件也只保存在你自己电脑上。不过要注意一点,有些工具需要管理员权限才能完整运行,运行时不会修改你的个人数据。
对于普通用户来说会觉得有点复杂,界面不像普通软件那么傻瓜式。但是对于IT运维、系统管理员、安全研究人员、软件开发人员来说,这东西就是神器。遇到棘手问题的时候,Windows自带工具搞不定,Sysinternals总有一款工具能派上用场。学习曲线确实存在,但只要会用那么三五个核心工具,解决问题的能力就能提升一大截。
大部分工具都很轻量,单个exe文件就几百KB到几MB不等。运行的时候占用的内存和CPU也很少,因为它不是常驻后台的服务,你打开的时候才运行,关掉就彻底退出了。不过Process Monitor在开启监控的时候会记录大量事件,如果过滤条件没设好,日志文件会变得很大,这时候会吃点内存和硬盘空间。正常使用情况下不影响电脑性能。
主要是Windows平台,从Windows XP一直到Windows 11都支持,还包括Windows Server各版本。部分工具同时支持x86、x64和ARM64架构。最近几年微软也开始推出Linux和macOS版本的工具,比如Sysmon for Linux、listent for macOS。但核心的70多个工具主要还是为Windows系统服务的。
可以。虽然Sysinternals套件里没有专门的蓝屏分析工具,但有两个方法可以帮到你。第一,用Procdump或Process Explorer可以配置当程序崩溃时自动生成dump文件。第二,微软官方推荐的蓝屏分析工具是WinDbg,你可以在微软网站下载。Sysinternals里的NotMyFault工具倒是挺有意思的,它能手动触发蓝屏,用来测试你的系统在崩溃时能不能正确生成dump文件,或者测试恢复流程是否正常。
建议先从Process Explorer开始。这个工具有图形界面,用起来直观,而且能直接替代你平时用的任务管理器。先学会看进程树、看CPU和内存占用、查一个文件被哪个进程占用,这些基本操作不难。上手之后再看Autoruns,看看你电脑开机到底启动了哪些东西,会发现不少意想不到的程序。这两个工具用熟了再玩Process Monitor,那个功能更强大但也更复杂,需要学过滤规则和事件分析。
有两个办法。一是把所有工具下载下来解压到一个文件夹里,把这个文件夹加到系统环境变量PATH中,以后在命令行里直接打工具名就能运行。二是用Sysinternals Live服务,在Windows资源管理器地址栏输入live.sysinternals.com,就能看到所有工具的列表,直接双击运行,不用下载到本地。或者在命令提示符里输入\live.sysinternals.com\tools\procexp.exe这样也能直接运行,前提是你网络通畅。
这个问题挺常见的,多半是Windows的安全机制在拦截。因为你从网上下载的exe文件,系统会加一个Zone.Identifier标记。解决办法很简单--右键点击文件选属性,在常规选项卡最下面勾选解除锁定,点确定就行了。如果还不行是杀毒软件误报了,需要把工具添加到排除列表里。另外有些工具比如Autoruns、Process Monitor需要管理员权限才能完整运行,记得右键选以管理员身份运行。