1、进程管理实验 主要任务:1、 认识 Tasklist 和 Taskkill 命令2、 使用 Tasklist 和 Taskkill 命令 实验环境:Windows 2003 Server 实验报告:总结实例操作与显示结果。实验分析Tasklist 和 Taskkill 就是专门用于查看和终止进程的两个命令。 Tasklist 命令:功能:用于显示运行在本地或远程计算机上的所有任务的应用程序和服务列表,带有过程 ID;可以监控用户的操作。命令格式: Tasklist /S system /U username /P password /M module | /SVC | /V /FI filte
2、r /FO format /NH 参数含义 /S system 指定连接到的远程系统。 /U domainuser 指定使用哪个用户执行这个命令。 /P password 为指定的用户指定密码。 /M module 列出调用指定的 DLL 模块的所有进程。如果没有指定模块名,显示每个进程加载的所有模块。 /SVC 显示每个进程中的服务。 /V 显示详细信息。 /FI filter 显示一系列符合筛选器指定的进程。/FO format 指定输出格式,有效值:TABLE、LIST、CSV。/NH 指定输出中不显示栏目标题。只对 TABLE 和 CSV 格式有效。各参数的说明请参考 Windows
3、的帮助(在系统桌面上按“F1” 键后搜索这个命令即可) 。例 1:要查看某个进程调用的模块,在命令行下输入:tasklist /m 回车后就可以看到当前所有程序所调用的 DLL 文件了,一个程序身后有很多模块在支援。 例 2:查看本机进程在“命令提示符” 中输入 Tasklist 命令,回车即可显示本机的所有进程。显示结果由 5 部分组成:图像名(进程名) 、PID 、会话名、会话#和内存使用。例 3:查看远程系统的进程在命令提示符下输入“Tasklist /s 218.22.123.26 /u jtdd /p 12345678”(不包括引号),回车即可查看到 IP 地址为 218.22.12
4、3.26 的远程系统的进程。其中:/s 参数后的“218.22.123.26”指要查看的远程系统的 IP 地址;/u 后的“jtdd”指 Tasklist 命令使用的用户账号,它必是远程系统上的一个合法账号;/p 后的“12345678”指 jtdd 账号的密码。注意:使用 Tasklist 命令查看远程系统的进程时,需要远程机器的 RPC 服务的支持,否则,该命令不能正常使用。例 4:查看系统进程提供的服务Tasklist 命令可以查看系统进程,还可以查看每个进程提供的服务。例如:查看本机进程 SVCHOST.EXE 提供的服务在命令提示符下输入“Tasklist /svc”命令回车即可。可
5、能会出现 4 个 SVCHOST.EXE 进程,总共有二十几项服务使用这个进程。例如:对远程系统,查看系统服务使用“Tasklist /s 218.22.123.26 /u jtdd /p 12345678 /svc”命令,回车即可查看 IP 地址为 218.22.123.26 的远程系统进程所提供的服务。例 5:查看调用 DLL 模块文件的进程列表要查看本地系统中哪些进程调用了 shell32.dll 模块文件,只需在命令提示符下输入“Tasklist /m shell32.dll”即可显示这些进程的列表。例 6:使用筛选器查找指定的进程在命令提示符下输入“TASKLIST /FI “USE
6、RNAME ne NT AUTHORITYSYSTEM“ /FI “STATUS eq running”,回车即可。结果会列出系统中正在运行的非 SYSTEM 状态的所有进程。其中:“/FI”为筛选器参数, “ne”和“eq”为关系运算符“不相等”和“相等”。实例分析:如果我们只是查看本地主机进程信息,直接输入命令即可。下面的实例是从客户机远程查看内网中某台主机时程信息。 假如我们有一台服务器: 内网地址:192.168.0.1, 管理员帐号:administrator 管理员密码:password 我们需要在 CMD 窗口输入: Tasklist /s 192.168.0.1 /u admi
7、nistrator /p password 这条命令可以使我们方便的查看到远程主机的运行情况,当然前提是保证RPC 服务正常启动。 Taskkill 命令 :功能:用于结束一个或多个任务或进程。可以根据进程 ID 或图像名来结束进程。命令格式: Taskkill processid | processname /SERVER:servername /ID:sessionid | /A /V 参数含义: processid 要结束的进程的 Process ID。 processname 要结束的进程名称。 /SERVER:servername 含有 processID 的服务器(默认值是当前值
8、)。 使用进程名和 /SERVER 时,必须指定 /ID 或 /A /ID:sessionid 结束在指定会话下运行的进程。 /A 结束在所有会话下运行的进程。 /V 显示正在执行的操作的信息。 这个 Tskill 用法很简单,直接输入 Tskill 图象名或 PID 就可以了。 例 1:强行终止 QQ.exe 则输入命令:taskkill /im qq.exe /f。回车后即可结束 QQ进程。 (该例子用于 QQ 开启状态。 )例 2:要关掉本机的 notepad.exe 进程有两种方法:1、先使用 Tasklist 查找它的 PID,假设系统显示本机 notepad.exe 进程的 PID
9、值为 1132,然后运行“Taskkill /pid 1132”命令即可。其中“/pid”参数后面是要终止进程的 PID 值。2、直接运行“Taskkill /IM notepad.exe”命令,其中“/IM”参数后面为进程的图像名。注意:很多进程 Taskkill 是无法关闭的,则可以使用 ntsd 命令。一般除了 WINDOWS 系统自己的管理进程,ntsd 都可以使用(但是 rootkit 级别的超级木马则无法做到) 命令格式:ntsd -c q -pn 进程名 参数含义: -c 是表示执行 debug 命令; q 表示执行结束后退出; -p 表示后面紧跟着是你要结束的进程对应的 PID
10、; -pn 表示后面紧跟着是你要结束的进程名 ;例 1:利用进程的 PID 结束进程命令格式:ntsd -c q -p pid 例: ntsd -c q -p 1332 (结束 explorer.exe 进程)例 2:利用进程名结束进程命令格式:ntsd -c q -pn *.exe (*.exe 为进程名,exe 不能省)例:ntsd -c q -pn explorer.exe用 netstat -ano 查看所有进程Proto Local Address Foreign Address State PIDTCP 0.0.0.0:135 0.0.0.0:0 LISTENING 988TCP
11、0.0.0.0:445 0.0.0.0:0 LISTENING 4TCP 127.0.0.1:1025 0.0.0.0:0 LISTENING 1456TCP 127.0.0.1:1434 0.0.0.0:0 LISTENING 224TCP 127.0.0.1:1872 127.0.0.1:30606 CLOSE_WAIT 3188TCP 127.0.0.1:1876 127.0.0.1:30606 CLOSE_WAIT 3188TCP 127.0.0.1:2715 127.0.0.1:30606 CLOSE_WAIT 3188TCP 127.0.0.1:2759 127.0.0.1:306
12、06 CLOSE_WAIT 3188TCP 127.0.0.1:5152 0.0.0.0:0 LISTENING 124TCP 127.0.0.1:5152 127.0.0.1:1774 CLOSE_WAIT 124TCP 127.0.0.1:30606 0.0.0.0:0 LISTENING 2036TCP 192.168.2.102:139 0.0.0.0:0 LISTENING 4TCP 192.168.2.102:1548 202.109.115.94:3389 ESTABLISHED 3920pid 就是系统进程的 ID,此例终止远程连接 3389 进程 ,那就输入ntsd -c q -p 3920