ntsd.exe 是从Windows 2000开始就是系统自带的进程调试工具,在system32目录下。ntsd的功能非常的强大,用法也比较复杂。
本文主要介绍用ntsd来结束进程,也说明使用ntsd调试程序的简单用法。
被调试器附着(attach)的进程会随调试器一起退出,所以可以用来在命令行下终止进程。使用ntsd自动就获得了debug权限,从而能杀掉大部分的进程(理论上只有System、SMSS.EXE和CSRSS.EXE三个进程不能结束,前两个是纯内核态的,最后那个是Win32子系统,ntsd本身需要它)。
结束进程
ntsd -c q -p PID 或者
ntsd -c q pn ImageName
-c是表示执行debug命令,
q表示执行结束后退出(quit),
-p 表示后面紧跟着是你要结束的进程对应的PID,
-pn 表示后面紧跟着是你要结束的进程名(process_name.exe 比如:QQ.exe,explorer.exe 等等,值得注意的是后缀名.exe是不可省略的,否则系统会告诉你“不支持此接口”)。
查看pid及进程名,我们可以在任务管理器看,在特殊情况下,也可以使用tasklist命令。
比如我们要结束pid为3212的进程maxthon.exe 那么我们可以在命令提示符中输入:
ntsd -c q -p 3212 或
ntsd -c q -pn maxthon.exe。
调试程序
ntsd调试程序在启动时要求用户指定一个要连接的进程。ntsd 命令行使用如下的句法:
ntsd [options] imagefile
其中,imagefile 是要调试的映像名称。
option:
-2,打开一个用于调试字符模式的应用程序的新窗口
-d,将输出重定向到调试终端-g 使执行自动通过第一个断点
-G,使 NTSD 在子程序终止时立即退出o启用多个进程的调试,默认值为由调试程序衍生的一个进程
-p,指定调试由进程 ID 标识的进程
-v,产生详细的输出。
例如,假设 inetinfo.exe 的进程 ID 为 104。
键入命令“ntsd -p 104”将 NTSD 调试程序连接到 inetinfo 进程 (IIS)。
也可使用 ntsd 启动一个新进程来进行调试。
例如,ntsd notepad.exe 将启动一个新的 notepad.exe 进程,并与它建立连接。
一旦连接到某个进程,您就可以用各种命令来查看堆栈、设置断点、转储内存,等等。 如:
~,显示所有线程的一个列表;
KB,显示当前线程的堆栈轨迹;
~*KB,显示所有线程的堆栈轨迹
R,显示当前帧的寄存器输出
U,反汇编代码并显示过程名和偏移量
D[type][< range>],转储内存BP设置断点
BC[],清除一个或多个断点
BD[],禁用一个或多个断点
BE[< bp>],启用一个或多个断点
BL[]列出一个或多个断点。
我们可以利用-v发现一个进程下面挂接了哪些连接库文件。有很多病毒,木马,或者恶意软件,都喜欢把自己做成动态库,然后注册到系统正常程序的加载库列表中,达到隐藏自己的目的。
首先我们需要设置一下ntsd的输出重定向,最好是重定向到一个文本文件,方便我们分析研究。
c:\>set _NT_DEBUG_LOG_FILE_APPEND=c:\pdw.txt
注意,虽然输出重定向了,但是我们的输出依然会继续显示在屏幕上,而且会进入到debug模式,我们使用-c q参数,就可以避免这个问题。
c:\>ntsd -c q -v notepad.exe
现在我们的pdw.txt文件中,就可以看见notepad.exe文件的调试信息。
更详细的ntsd信息请参考其帮助。
分享到:
相关推荐
win7 下可以用的 ntsd.exe 今天有个进程无响应,想要调用NTSD命令才发现,windows7里没有ntsd.exe 于是发一个ntsd.7z 上来,让大家使用。 可用于强制结束进程,将此文件解压在win7中,C盘windows文件夹下即可 64...
NTSD.exe 是Windows操作系统中的一款命令行工具,主要用于调试进程。在Windows XP系统中,它作为系统调试器的一部分被引入,允许用户以管理员权限终止任何正在运行的进程。这款工具对于系统管理员和开发者来说非常...
ntsd.exe x64 ntsd.exe x64 ntsd.exe x64
win7 x64 下可以用的 ntsd.exe 今天有个进程无响应,想要调用NTSD命令才发现,windows7里没有ntsd.exe 于是发一个ntsd.zip 上来,让大家使用。 可用于强制结束进程,将此文件解压在win7中,C盘windows文件夹下即可...
ntsd.exe 是Windows操作系统中的一个命令行调试工具,主要用于系统级调试。在“win7 32位 下可以用的 ntsd.exe”这个主题中,我们主要探讨的是如何在32位版本的Windows 7系统上正确使用这个工具。 1. **ntsd.exe 的...
ntsd.exe 文件是Windows操作系统中的一个调试工具,主要用于系统级调试。它属于Windows调试工具集的一部分,由微软提供,主要用于开发者和系统管理员诊断和解决系统或应用程序的问题。这个工具允许用户以另一个进程...
ntsd是一个用户态进程调试...它能够结束除System、smss.exe、csrss.exe、lsass.exe及各种rootkit程序外所有的程序。但在Windows Vista及以上版本的Windows中不含ntsd, 必须手动下载至电脑中才可使用。(来自360百科)
在Windows 7中,ntsd.exe可能因为安全策略或者默认配置而不被包含在系统文件中,因此用户可能需要从互联网上下载这个工具。本文将深入探讨ntsd及其在Windows 7中的使用。 ntsd是微软提供的一个强大的调试器,它基于...
**微软NTSD.EXE详解** NTSD(NT Service Debugger)是微软Windows操作系统中的一款命令行调试工具,主要用于调试系统服务和应用程序。它属于Windows Debugging Tools(WinDbg)的一部分,是一个强大的系统级调试器...
通过AVG杀毒,不放心的话就跳过吧。 NTSD的功能非常的强大,用它强行结束某个比较顽固的进程还是很...ntsd -c q -pn ***.exe (***.exe 为进程名,exe不能省) ntsd -c q -p PID 命令范例:ntsd -c q -pn explorer.exe
使用方法:将ntsd.exe解压到system32目录下,然后以管理员身份打开cmd命令提示窗口,输入ntsd -c q -p PID【PID即你要终止的进程的ID,进程ID的正确查看姿势:任务管理器->进程选项卡->查看->选择列->勾上"PID(进程...
Windows 进程终结者 ntsd.exe 详解 Windows 操作系统中,存在一些顽固的进程无法终止,使得无法卸载一些不需要的程序,或者是一些病毒进程无法杀干净。为了解决这个问题,Windows 提供了一个自带的进程调试工具 ...
ntsd,全称为NT System Debugger,是Windows操作系统中内建的一个命令行调试工具。它属于Windows Debugging Tools的一部分,主要用于调试系统级进程和应用程序。在本文中,我们将深入探讨ntsd的功能、用法以及它在64...
ntsd.exe 是Windows操作系统内建的一个调试工具,主要用于调试应用程序,尤其在系统级调试和问题排查时非常有用。在“win7下ntsd命令”这个主题中,我们要深入理解ntsd命令的功能、用法以及如何在Windows 7系统中...
"ntsd.exe"是一个内置于Windows操作系统中的命令行调试工具,主要用于调试目的。它允许管理员级别的用户以调试模式启动或控制进程,甚至可以强制结束进程。ntsd.exe具有很高的权限,因此它可以结束大多数其他进程,...
ntsd,全称为NT System Debugger,是Windows操作系统内建的一个命令行调试工具,主要用于系统级调试,特别是针对系统进程和驱动程序。它属于WinDbg工具集的一部分,但功能更为简单,适合初级或中级的调试任务。在...
但没过多久老师就发现了,在还原卡中删除了ntsd.exe,NTSD命令用不了了,捉摸了一段时间发现只要下载一个ntsd.exe拷回System32就好了。作为一个强迫症患者是不是很不爽?于是我把它写成了BAT脚本,只要保证解压后两...
NTSD.exe是NTSD的主要执行文件,它是Windows Debugging Tools的一部分。这个工具集包括了一系列用于调试和分析的命令行工具,如CDB(Console Debugger)、KD(Kernel Debugger)以及我们的主角NTSD。这些工具可以...
结合以上信息,我们可以推测“fu*kteacher工具”的工作原理可能是这样的:当用户运行“FuckTeacher.exe”,工具会启动一系列的步骤,可能包括调用“ntsd.exe”来结束极域电子教室的进程,或者利用其他方法干扰极域...
除了 drwtsn32.exe 之外,Windows 还提供了其他一些调试工具,如 Windbg、CDB 和 NTSD。Windbg 是一款强大的图形界面调试器,适用于高级调试任务;CDB 和 NTSD 是命令行工具,适合自动化脚本和远程调试。这些工具各...