来自:zip11 > 馆藏分类
配色: 字号:
ntsd结束进程
2018-01-15 | 阅:  转:  |  分享 
  
有些时候任务管理器是无法结束一些进程的,比如病毒木马,特别是一些以cnnic和网络猪为代表的流氓软件,那么这个时候我们就需要一个功能更强大的
结束进程的工具,其实这样的工具windows本身就有:强制结束进程的命令行Windows操作系统中只有System、SMSS.E
XE和CSRSS.EXE不能杀。前两个是纯内核态的,最后那个是Win32子系统,ntsd本身需要它。ntsd从2000开始就是系统
自带的用户态调试工具。被调试器附着(attach)的进程会随调试器一起退出,所以可以用来在命令行下终止进程。使用ntsd自动就获得
了debug权限,从而能杀掉大部分的进程。ntsd会新开一个调试窗口,本来在纯命令行下无法控制,但如果只是简单的命令,比如退出(q
),用-c参数从命令行传递就行了。Ntsd按照惯例也向软件开发人员提供。只有系统开发人员使用此命令。有关详细信息,请参阅NTSD
中所附的帮助文件。用法:开个cmd.exe窗口,输入:【ntsd-cq-ppid】如果能知道进程的pid,比如expl
orer.exe的pid为196,运行cmd后输入"ntsd-cq-p136"即可杀掉如果你不知道进程的ID,任务管理器-
>进程选项卡->查看->选择列->勾上"PID(进程标识符)",然后就能看见了。或者用下面的方法【ntsd-cq-pn进程
名】比如explorer.exe,运行cmd后输入"ntsd-cq-pnexplorer.exe"即可杀掉。但是,如果同一
个进程(比如iexplorer.exe)开了多个,就会出现错误,所以,ntsd每次只能结束一个单独出现的进程。以为翻译的帮助文件
,仅供参考。【command-line】在dubugger模式下运行【--】默认为执行【-G-g-o-p-1-d-
pd】参数【-aDllName】设置默认的扩展dll【-c】执行后面的dubugger命令【-clines】numberof
linesofoutputhistoryretrievedbyaremoteclient【-failinc】失败时
产生不完全的符号和模型【-d】通过DbgPrint向kernel(核心)发送debugger输出信息注:-d不可与debug
gerremoting同用-d只能在kernel(核心)debugger可以用时才能使用【-g】在debuggee下忽略初始
化断点【-G】忽略程序结束时的最终断点【-hd】规定debug命令集不能用于(dubuggee)创建的程序。该参数只能作用在Win
dowsWhistler(windowsxp的测试版本)系统上【-o】debug所有由debuggee载入的程序【-ppi
d】指定要绑定的进程的十进制ID(就是pid)【-pd】指定debugger自动与绑定的程序分离【-pe】规定任何绑定都要对应
一个存在的debug端口【-pt#】指定中断超时时间【-pv】指定任何绑定都是封闭的,不对外共享【-r】指定0-3等级的中断
(SeeSetErrorLevel)【-robp】允许在只读内存中设置断点【-t】指定显示0-3级的错误(SeeSetError
Level)【-w】指定在一个单独的VDM(DOS虚拟机)中debug16位应用程序【-x】在AV排除项中设置第二个可选断点
-x{e|d|n|i}为指定的事件设置中断状态【-2】为debuggee创建一个单独核心的窗口XP下还有两
个好用的工具tasklist和tskill。tasklist能列出所有的进程,和相应的信息。tskill能查杀进程,语法很简单:tskill程序名!
献花(0)
+1
(本文系zip11首藏)