返回列表 发帖

Rundll32.exe、svchost.exe 文件详解

[这个贴子最后由久木在 2005/05/20 00:45am 第 1 次编辑]

winexec(Pchar(';StrCommand';),sw_Show);
其中"StrCommand"代表以下命令之一(使用Windows中的运行不要加引号):
"rundll32 shell32,Control_RunDLL" - 运行控制面板
"rundll32 shell32,OpenAs_RunDLL" - 打开"打开方式"窗口
"rundll32 shell32,ShellAboutA Info-Box" - 打开"关于"窗口
"rundll32 shell32,Control_RunDLL desk.cpl" - 打开"显示属性"窗口
"rundll32 user,cascadechildwindows" - 层叠全部窗口
"rundll32 user,tilechildwindows" - 最小化所有的子窗口
"rundll32 user,repaintscreen" - 刷新桌面
"rundll32 shell,shellexecute Explorer" - 重新运行Windows Explorer
"rundll32 keyboard,disable" - 锁写键盘
"rundll32 mouse,disable" - 让鼠标失效
"rundll32 user,swapmousebutton" - 交换鼠标按钮
"rundll32 user,setcursorpos" - 设置鼠标位置为(0,0)
"rundll32 user,wnetconnectdialog" - 打开"映射网络驱动器"窗口
"rundll32 user,wnetdisconnectdialog" - 打开"断开网络驱动器"窗口
"rundll32 user,disableoemlayer" - 显示BSOD窗口, (BSOD) = Blue Screen Of Death, 即蓝屏
"rundll32 diskcopy,DiskCopyRunDll" - 打开磁盘复制窗口
"rundll32 rnaui.dll,RnaWizard" - 运行"Internet连接向导", 如果加上参数"/1"则为silent模式
"rundll32 shell32,SHFormatDrive" - 打开"格式化磁盘(A)"窗口
"rundll32 shell32,SHExitWindowsEx -1" - 冷启动Windows Explorer
"rundll32 shell32,SHExitWindowsEx 1" - 关机
"rundll32 shell32,SHExitWindowsEx 0" - 退当前用户
"rundll32 shell32,SHExitWindowsEx 2" Windows9x 快速重启
"rundll32 krnl386.exe,exitkernel" - 强行退出Windows 9x(无确认)
"rundll rnaui.dll,RnaDial "MyConnect" - 运行"网络连接"对话框
"rundll32 msprint2.dll,RUNDLL_PrintTestPage" - 选择打印机和打印测试页
"rundll32 user,setcaretblinktime" - 设置光标闪烁速度
"rundll32 user, setdoubleclicktime" - 测试鼠标双击速度
"rundll32 sysdm.cpl,InstallDevice_Rundll" - 搜索非PnP设备
 控制面板中的各项功能
  
 winexec(';rundll32.exe shell32.dll, Control_RunDLL';, 9);
 {辅助选项 属性-键盘}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL access.cpl, 1';, 9);
 {辅助选项 属性-声音}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL access.cpl, 2';, 9);
 {辅助选项 属性-显示}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL access.cpl, 3';, 9);
 {辅助选项 属性-鼠标}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL access.cpl, 4';, 9);
 {辅助选项 属性-常规}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL access.cpl, 5';, 9);
 {添加/删除程序 属性-安装/卸载}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL Appwiz.cpl, 1';, 9);
 {添加/删除程序 属性-Windows安装程序}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL Appwiz.cpl, 2';, 9);
 {添加/删除程序 属性-启动盘}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL Appwiz.cpl, 3';, 9);
 {显示 属性-背景}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL desk.cpl, 0';, 9); 
 {显示 属性-屏幕保护程序}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL desk.cpl, 1';, 9);
 {显示 属性-外观}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL desk.cpl, 2';, 9);
 {显示 属性-设置}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL desk.cpl, 3';, 9);
 {Internet 属性-常规}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL Inetcpl.cpl, 0';, 9);
 {Internet 属性-安全}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL Inetcpl.cpl, 1';, 9);
 {Internet 属性-内容}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL Inetcpl.cpl, 2';, 9);
 {Internet 属性-连接}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL Inetcpl.cpl, 3';, 9);
 {Internet 属性-程序}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL Inetcpl.cpl, 4';, 9);
 {Internet 属性-高级}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL Inetcpl.cpl, 5';, 9);
 {区域设置 属性-区域设置}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL Intl.cpl, 0';, 9);
 {区域设置 属性-数字}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL Intl.cpl, 1';, 9);
 {区域设置 属性-货币}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL Intl.cpl, 2';, 9);
 {区域设置 属性-时间}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL Intl.cpl, 3';, 9);
 {区域设置 属性-日期}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL Intl.cpl, 4';, 9);
 
 winexec(';rundll32.exe shell32.dll, Control_RunDLL Joy.cpl, 0';, 9);
 
 winexec(';rundll32.exe shell32.dll, Control_RunDLL Joy.cpl, 1';, 9);
 {鼠标 属性}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL Main.cpl';, 9);
 {多媒体 属性-音频}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL Mmsys.cpl, 0';, 9);
 {多媒体 属性-视频}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL Mmsys.cpl, 1';, 9);
 {多媒体 属性-MIDI}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL Mmsys.cpl, 2';, 9);
 {多媒体 属性-CD音乐}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL Mmsys.cpl, 3';, 9);
 {多媒体 属性-设备}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL Mmsys.cpl, 4';, 9);
 {调制解调器 属性}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL Modem.cpl';, 9);
 
 winexec(';rundll32.exe shell32.dll, Control_RunDLL Netcpl.cpl';, 9);
 {密码 属性}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL Password.cpl';, 9);
 {扫描仪与数字相机 属性}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL Sticpl.cpl';, 9);
 {系统 属性-常规}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL Sysdm.cpl, 0';, 9);
 {系统 属性-设备管理器}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL Sysdm.cpl, 1';, 9);
 {系统 属性-硬件配置文件}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL Sysdm.cpl, 2';, 9);
 {系统 属性-性能}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL Sysdm.cpl, 3';, 9);
 {日期/时间 属性}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL timedate.cpl';, 9);
 {电源管理 属性}
 winexec(';rundll32.exe shell32.dll, Control_RunDLL Powercfg.cpl';, 9);
 
 winexec(';rundll32.exe shell32.dll, Control_RunDLL Telephon.cpl';, 9);
关于调用后的判断处理建议:
先声明一个cardinal类型的变量RtnCardinal获取返回值进行判断如:  
RtnCardinal := winexec(';rundll32.exe shell32.dll, Control_RunDLL Telephon.cpl';, 9);
 返回值                     可能原因
 0                        程序超出内存 
ERROR_BAD_FORMAT          程序为一个非法的Win32.EXE程序
ERROR_FILE_NOT_FOUND       指定文件没找到 
ERROR_PATH_NOT_FOUND      指定路径没找到
使用方法:
点击“开始-程式-Ms-Dos方式”,进入Dos视窗,然後键入"rundll32.exe user.exe,restartwindows",再按下回车键,这时你将看到,机器被重启了!怎么样,是不是很有趣?
  当然,Rundll的功能绝不仅仅是重启你的机器。其实,Rundll者,顾名思义,执行Dll也,它的功能就是以命令列的方式呼叫Windows的动态链结库,Rundll32.exe与Rundll.exe的区别就在於前者是呼叫32位的链结库,而後者是运用於16位的链结库,它们的命令格式是:
  RUNDLL.EXE ,,
  这里要注意三点:1.Dll档案名中不能含有空格,比如该档案位於c:\Program Files\目录,你要把这个路径改成c:\Progra~1\;2.Dll档案名与Dll入口点间的逗号不能少,否则程式将出错并且不会给出任何资讯!3.这是最重要的一点:Rundll不能用来呼叫含返回值参数的Dll,例如Win32API中的GetUserName(),GetTextFace()等。在Visual Basic中,提供了一条执行外部程式的指令Shell,格式为:
  Shell “命令列”
  如果能配合Rundll32.exe用好Shell指令,会使您的VB程式拥有用其他方法难以甚至无法实现的效果:仍以重启为例,传统的方法需要你在VB工程中先建立一个模组,然後写入WinAPI的声明,最後才能在程式中呼叫。而现在只需一句:
  Shell “rundll32.exe user.exe,restartwindows”就搞定了!是不是方便多了?
  实际上,Rundll32.exe在呼叫各种Windows控制面板和系统选项方面有著独特的优势。下面,我就将本人在因特网上收集的有关Rundll的指令列举如下(很有用的,能省去你很多呼叫Windows API的时间!!),供大家在程式设计中引用:
  命令列: rundll32.exe shell32.dll,Control_RunDLL
  功能: 显示控制面板
  命令列: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,1
  功能: 显示“控制面板-辅助选项-键盘”选项视窗
  命令列: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,2
  功能: 显示“控制面板-辅助选项-声音”选项视窗
  命令列: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,3
  功能: 显示“控制面板-辅助选项-显示”选项视窗
  命令列: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,4
  功能: 显示“控制面板-辅助选项-滑鼠”选项视窗
  命令列: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,5
  功能: 显示“控制面板-辅助选项-传统”选项视窗
  命令列: rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl @1
  功能: 执行“控制面板-添加新硬体”向导。
  命令列: rundll32.exe shell32.dll,SHHelpShortcuts_RunDLL AddPrinter
  功能: 执行“控制面板-添加新印表机”向导。
  命令列: rundll32.exe shell32.dll,Control_RunDLL appwiz.cpl,,1
  功能: 显示 “控制面板-添加/删除程式-安装/卸载” 面板。
  命令列: rundll32.exe shell32.dll,Control_RunDLL appwiz.cpl,,2
  功能: 显示 “控制面板-添加/删除程式-安装Windows” 面板。
  命令列: rundll32.exe shell32.dll,Control_RunDLL appwiz.cpl,,3
  功能: 显示 “控制面板-添加/删除程式-启动盘” 面板。
  命令列: rundll32.exe syncui.dll,Briefcase_Create
  功能: 在桌面上建立一个新的“我的公文包”。
  命令列: rundll32.exe diskcopy.dll,DiskCopyRunDll
  功能: 显示复制软碟视窗
  命令列: rundll32.exe apwiz.cpl,NewLinkHere %1
  功能: 显示“建立快捷方式”的对话框,所建立的快捷方式的位置由%1参数决定。
  命令列: rundll32.exe shell32.dll,Control_RunDLL timedate.cpl,,0
  功能: 显示“日期与时间”选项视窗。
  命令列: rundll32.exe shell32.dll,Control_RunDLL timedate.cpl,,1
  功能: 显示“时区”选项视窗。
  命令列: rundll32.exe rnaui.dll,RnaDial [某个拨号连接的名称]
  功能: 显示某个拨号连接的拨号视窗。如果已经拨号连接,则显示目前的连接状态的视窗。
  命令列: rundll32.exe rnaui.dll,RnaWizard
  功能: 显示“新建拨号连接”向导的视窗。
  命令列: rundll32.exe shell32.dll,Control_RunDLL desk.cpl,,0
  功能: 显示“显示属性-背景”选项视窗。
  命令列: rundll32.exe shell32.dll,Control_RunDLL desk.cpl,,1
  功能: 显示“显示属性-萤屏保护”选项视窗。
  命令列: rundll32.exe shell32.dll,Control_RunDLL desk.cpl,,2
  功能: 显示“显示属性-外观”选项视窗。
  命令列: rundll32.exe shell32.dll,Control_RunDLL desk.cpl,,3
  功能: 显示显示“显示属性-属性”选项视窗。
  命令列: rundll32.exe shell32.dll,SHHelpShortcuts_RunDLL FontsFolder
  功能: 显示Windows的“字体”档案夹。
  命令列: rundll32.exe shell32.dll,Control_RunDLL main.cpl @3
  功能: 同样是显示Windows的“字体”档案夹。
  命令列: rundll32.exe shell32.dll,SHformatDrive
  功能: 显示格式化软碟对话框。
  命令列: rundll32.exe shell32.dll,Control_RunDLL joy.cpl,,0
  功能: 显示“控制面板-游戏控制器-一般”选项视窗。
  命令列: rundll32.exe shell32.dll,Control_RunDLL joy.cpl,,1
  功能: 显示“控制面板-游戏控制器-进阶”选项视窗。
  命令列: rundll32.exe mshtml.dll,PrintHTML (HTML文档)
  功能: 列印HTML文档。
  命令列: rundll32.exe shell32.dll,Control_RunDLL mlcfg32.cpl
  功能: 显示Microsoft Exchange一般选项视窗。
  命令列: rundll32.exe shell32.dll,Control_RunDLL main.cpl @0
  功能: 显示“控制面板-滑鼠” 选项 。
  命令列: rundll32.exe shell32.dll,Control_RunDLL main.cpl @1
  功能: 显示 “控制面板-键盘属性-速度”选项视窗。
  命令列: rundll32.exe shell32.dll,Control_RunDLL main.cpl @1,,1
  功能: 显示 “控制面板-键盘属性-语言”选项视窗。
  命令列: rundll32.exe shell32.dll,Control_RunDLL main.cpl @2
  功能: 显示Windows“印表机”档案夹。
  命令列: rundll32.exe shell32.dll,Control_RunDLL main.cpl @3
  功能: 显示Windows“字体”档案夹。
  命令列: rundll32.exe shell32.dll,Control_RunDLL main.cpl @4
  功能: 显示“控制面板-输入法属性-输入法”选项视窗。
  命令列: rundll32.exe shell32.dll,Control_RunDLL modem.cpl,,add
  功能: 执行“添加新调制解调器”向导。
  命令列: rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl,,0
  功能: 显示“控制面板-多媒体属性-音频”属性页。
  命令列: rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl,,1
  功能: 显示“控制面板-多媒体属性-视频”属性页。
  命令列: rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl,,2
  功能: 显示“控制面板-多媒体属性-MIDI”属性页。
  命令列: rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl,,3
  功能: 显示“控制面板-多媒体属性-CD音乐”属性页。
  命令列: rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl,,4
  功能: 显示“控制面板-多媒体属性-设备”属性页。
  命令列: rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl @1
  功能: 显示“控制面板-声音”选项视窗。
  命令列: rundll32.exe shell32.dll,Control_RunDLL netcpl.cpl
  功能: 显示“控制面板-网路”选项视窗。
  命令列: rundll32.exe shell32.dll,Control_RunDLL odbccp32.cpl
  功能: 显示ODBC32资料管理选项视窗。
  命令列: rundll32.exe shell32.dll,OpenAs_RunDLL
功能: 显示指定档案(drive:\path\filename)的“打开方式”对话框。
  命令列: rundll32.exe shell32.dll,Control_RunDLL password.cpl
  功能: 显示“控制面板-密码”选项视窗。
  命令列: rundll32.exe shell32.dll,Control_RunDLL powercfg.cpl
  功能: 显示“控制面板-电源管理属性”选项视窗。
  命令列: rundll32.exe shell32.dll,SHHelpShortcuts_RunDLL PrintersFolder
  功能: 显示Windows“印表机”档案夹。(同rundll32.exe shell32.dll,Control_RunDLL main.cpl @2)
  命令列: rundll32.exe shell32.dll,Control_RunDLL intl.cpl,,0
  功能: 显示“控制面板-区域设置属性-区域设置”选项视窗。
  命令列: rundll32.exe shell32.dll,Control_RunDLL intl.cpl,,1
  功能: 显示“控制面板-区域设置属性-数字”选项视窗。
  命令列: rundll32.exe shell32.dll,Control_RunDLL intl.cpl,,2
  功能: 显示“控制面板-区域设置属性-货币”选项视窗。
  命令列: rundll32.exe shell32.dll,Control_RunDLL intl.cpl,,3
  功能: 显示“控制面板-区域设置属性-时间”选项视窗。
  命令列: rundll32.exe shell32.dll,Control_RunDLL intl.cpl,,4
  功能: 显示“控制面板-区域设置属性-日期”选项视窗。
  命令列: rundll32.exe desk.cpl,InstallScreenSaver [萤屏保护档案名]
  功能: 将指定的萤屏保护档案设置为Windows的屏保,并显示萤屏保护属性视窗。
  命令列: rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl,,0
  功能: 显示“控制面板-系统属性-传统”属性视窗。
  命令列: rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl,,1
  功能: 显示“控制面板-系统属性-设备管理器”属性视窗。
  命令列: rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl,,2
  功能: 显示“控制面板-系统属性-硬体配置档案”属性视窗。
  命令列: rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl,,3
  功能: 显示“控制面板-系统属性-性能”属性视窗。
  命令列: rundll32.exe user.exe,restartwindows
  功能: 强行关闭所有程式并重启机器。
  命令列: rundll32.exe user.exe,exitwindows
  功能: 强行关闭所有程式并关机。
  命令列: rundll32.exe shell32.dll,Control_RunDLL telephon.cpl
  功能: 显示“拨号属性”选项视窗
  命令列: rundll32.exe shell32.dll,Control_RunDLL themes.cpl
  功能: 显示“桌面主旨”选项面板
  当然,不止是VisualBasic,象Delphi.VisualC++等其他程式设计语言也可以通过呼叫外部命令的方法来使用Rundll的这些功能,具体方法这里就不再详细叙述了。灵活的使用Rundll,一定会使你的程式设计轻轻松松,达到事半功倍的效果!   



Rundll32.exe、svchost.exe 文件详解

windows 2000 server进程详解
svchost.exe 文件对那些从动态链接库中运行的服务来说是一个普通的主机进程名;最基本的系统进程(也就是说,这些进程是系统运行的基本条件,有了这些进程,系统就能正常运行):
smss.exe Session Manager
csrss.exe 子系统服务器进程
winlogon.exe 管理用户登录
services.exe 包含很多系统服务
lsass.exe 管理 IP 安全策略以及启动 ISAKMP/Oakley (IKE) 和 IP 安全驱动程序。(系统服务)
产生会话密钥以及授予用于交互式客户/服务器验证的服务凭据(ticket)。(系统服务)
svchost.exe 包含很多系统服务
svchost.exe
SPOOLSV.EXE 将文件加载到内存中以便迟后打印。(系统服务)
explorer.exe 资源管理器
internat.exe 托盘区的拼音图标
附加的系统进程(这些进程不是必要的,你可以根据需要通过服务管理器来增加或减少):
mstask.exe 允许程序在指定时间运行。(系统服务)
regsvc.exe 允许远程注册表操作。(系统服务)
winmgmt.exe 提供系统管理信息(系统服务)。
inetinfo.exe 通过 Internet 信息服务的管理单元提供 FTP 连接和管理。(系统服务)
tlntsvr.exe 允许远程用户登录到系统并且使用命令行运行控制台程序。(系统服务)
允许通过 Internet 信息服务的管理单元管理 Web 和 FTP 服务。(系统服务)
tftpd.exe 实现 TFTP Internet 标准。该标准不要求用户名和密码。远程安装服务的一部分。(系统服务)
termsrv.exe 提供多会话环境允许客户端设备访问虚拟的 Windows 2000 Professional 桌面会话以及运行在服务器上的基
于 Windows 的程序。(系统服务)
dns.exe 应答对域名系统(DNS)名称的查询和更新请求。(系统服务)
以下服务很少会用到,上面的服务都对安全有害,如果不是必要的应该关掉
tcpsvcs.exe 提供在 PXE 可远程启动客户计算机上远程安装 Windows 2000 Professional 的能力。(系统服务)
支持以下 TCP/IP 服务:Character Generator, Daytime, Discard, Echo, 以及 Quote of the Day。(系统服务)
ismserv.exe 允许在 Windows Advanced Server 站点间发送和接收消息。(系统服务)
ups.exe 管理连接到计算机的不间断电源(UPS)。(系统服务)
wins.exe 为注册和解析 NetBIOS 型名称的 TCP/IP 客户提供 NetBIOS 名称服务。(系统服务)
llssrv.exe License Logging Service(system service)
ntfrs.exe 在多个服务器间维护文件目录内容的文件同步。(系统服务)
RsSub.exe 控制用来远程储存数据的媒体。(系统服务)
locator.exe 管理 RPC 名称服务数据库。(系统服务)
lserver.exe 注册客户端许可证。(系统服务)
dfssvc.exe 管理分布于局域网或广域网的逻辑卷。(系统服务)
clipsrv.exe 支持“剪贴簿查看器”,以便可以从远程剪贴簿查阅剪贴页面。(系统服务)
msdtc.exe 并列事务,是分布于两个以上的数据库,消息队列,文件系统,或其它事务保护资源管理器。(系统服务)
faxsvc.exe 帮助您发送和接收传真。(系统服务)
cisvc.exe Indexing Service(system service)
dmadmin.exe 磁盘管理请求的系统管理服务。(系统服务)
mnmsrvc.exe 允许有权限的用户使用 NetMeeting 远程访问 Windows 桌面。(系统服务)
netdde.exe 提供动态数据交换 (DDE) 的网络传输和安全特性。(系统服务)
smlogsvc.exe 配置性能日志和警报。(系统服务)
rsvp.exe 为依赖质量服务(QoS)的程序和控制应用程序提供网络信号和本地通信控制安装功能。(系统服务)
RsEng.exe 协调用来储存不常用数据的服务和管理工具。(系统服务)
RsFsa.exe 管理远程储存的文件的操作。(系统服务)
grovel.exe 扫描零备份存储(SIS)卷上的重复文件,并且将重复文件指向一个数据存储点,以节省磁盘空间。(系统服务)
SCardSvr.exe 对插入在计算机智能卡阅读器中的智能卡进行管理和访问控制。(系统服务)
snmp.exe 包含代理程序可以监视网络设备的活动并且向网络控制台工作站汇报。(系统服务)
snmptrap.exe 接收由本地或远程 SNMP 代理程序产生的陷阱消息,然后将消息传递到运行在这台计算机上 SNMP 管理程序
。(系统服务)
UtilMan.exe 从一个窗口中启动和配置辅助工具。(系统服务)
msiexec.exe 依据 .MSI 文件中包含的命令来安装、修复以及删除软件。(系统服务)

详细说明:
win2k运行进程
Svchost.exe
Svchost.exe文件对那些从动态连接库中运行的服务来说是一个普通的主机进程名。Svhost.exe文件定位
在系统的%systemroot%\system32文件夹下。在启动的时候,Svchost.exe检查注册表中的位置来构建需要
加载的服务列表。这就会使多个Svchost.exe在同一时间运行。每个Svchost.exe的回话期间都包含一组服务,
以至于单独的服务必须依靠Svchost.exe怎样和在那里启动。这样就更加容易控制和查找错误。
Svchost.exe 组是用下面的注册表值来识别。
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Svchost
每个在这个键下的值代表一个独立的Svchost组,并且当你正在看活动的进程时,它显示作为一个单独的
例子。每个键值都是REG_MULTI_SZ类型的值而且包括运行在Svchost组内的服务。每个Svchost组都包含一个
或多个从注册表值中选取的服务名,这个服务的参数值包含了一个ServiceDLL值。
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Service
更多的信息
为了能看到正在运行在Svchost列表中的服务。
开始-运行-敲入cmd
然后在敲入 tlist -s (tlist 应该是win2k工具箱里的冬冬)
Tlist 显示一个活动进程的列表。开关 -s 显示在每个进程中的活动服务列表。如果想知道更多的关于
进程的信息,可以敲 tlist pid。
Tlist 显示Svchost.exe运行的两个例子。
0 System Process
8 System
132 smss.exe
160 csrss.exe Title:
180 winlogon.exe Title: NetDDE Agent
208services.exe
Svcs: AppMgmt,Browser,Dhcp,dmserver,Dnscache,Eventlog,lanmanserver,
LanmanWorkstation,LmHosts,Messenger,PlugPlay,ProtectedStorage,seclogon,TrkWks,W32Time,Wmi
220 lsass.exe Svcs: Netlogon,PolicyAgent,SamSs
404 svchost.exe Svcs: RpcSs
452 spoolsv.exe Svcs: Spooler
544 cisvc.exe Svcs: cisvc
556 svchost.exe Svcs: EventSystem,Netman,NtmsSvc,RasMan,SENS,TapiSrv
580 regsvc.exe Svcs: RemoteRegistry
596 mstask.exe Svcs: Schedule
660 snmp.exe Svcs: SNMP
728 winmgmt.exe Svcs: WinMgmt
852 cidaemon.exe Title: OleMainThreadWndName
812 explorer.exe Title: Program Manager
1032 OSA.EXE Title: Reminder
1300 cmd.exe Title: D:\WINNT5\System32\cmd.exe - tlist -s
1080 MAPISP32.EXE Title: WMS Idle
12XX rundll32.exe Title:
1000 mmc.exe Title: Device Manager
1144 tlist.exe
在这个例子中注册表设置了两个组。
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Svchost:
netsvcs: Reg_Multi_SZ: EventSystem Ias Iprip Irmon Netman Nwsapagent Rasauto Rasman Remoteaccess SENS Sharedaccess Tapisrv Ntmssvc
rpcss :Reg_Multi_SZ: RpcSs
smss.exe
csrss.exe
这个是用户模式Win32子系统的一部分。csrss代表客户/服务器运行子系统而且是一个基本的子系统
必须一直运行。csrss 负责控制windows,创建或者删除线程和一些16位的虚拟MS-DOS环境。
explorer.exe
这是一个用户的shell(我实在是不知道怎么翻译shell),在我们看起来就像任务条,桌面等等。这个
进程并不是像你想象的那样是作为一个重要的进程运行在windows中,你可以从任务管理器中停掉它,或者重新启动。
通常不会对系统产生什么负面影响。
internat.exe
这个进程是可以从任务管理器中关掉的。
internat.exe在启动的时候开始运行。它加载由用户指定的不同的输入点。输入点是从注册表的这个位置
HKEY_USERS\.DEFAULT\Keyboard Layout\Preload 加载内容的。
internat.exe 加载“EN”图标进入系统的图标区,允许使用者可以很容易的转换不同的输入点。
当进程停掉的时候,图标就会消失,但是输入点仍然可以通过控制面板来改变。
lsass.exe
这个进程是不可以从任务管理器中关掉的。
这是一个本地的安全授权服务,并且它会为使用winlogon服务的授权用户生成一个进程。这个进程是
通过使用授权的包,例如默认的msgina.dll来执行的。如果授权是成功的,lsass就会产生用户的进入
令牌,令牌别使用启动初始的shell。其他的由用户初始化的进程会继承这个令牌的。
mstask.exe
这个进程是不可以从任务管理器中关掉的。
这是一个任务调度服务,负责用户事先决定在某一时间运行的任务的运行。
smss.exe
这个进程是不可以从任务管理器中关掉的。
这是一个会话管理子系统,负责启动用户会话。这个进程是通过系统进程初始化的并且对许多活动的,
包括已经正在运行的Winlogon,Win32(Csrss.exe)线程和设定的系统变量作出反映。在它启动这些
进程后,它等待Winlogon或者Csrss结束。如果这些过程时正常的,系统就关掉了。如果发生了什么
不可预料的事情,smss.exe就会让系统停止响应(就是挂起)。
spoolsv.exe
这个进程是不可以从任务管理器中关掉的。
缓冲(spooler)服务是管理缓冲池中的打印和传真作业。
service.exe
这个进程是不可以从任务管理器中关掉的。
大多数的系统核心模式进程是作为系统进程在运行。
System Idle Process
这个进程是不可以从任务管理器中关掉的。
这个进程是作为单线程运行在每个处理器上,并在系统不处理其他线程的时候分派处理器的时间。
taskmagr.exe
这个进程是可以在任务管理器中关掉的。
这个进程就是任务管理器。
winlogon.exe
这个进程是管理用户登录和推出的。而且winlogon在用户按下CTRL+ALT+DEL时就激活了,显示安全对话框。
winmgmt.exe
winmgmt是win2000客户端管理的核心组件。当客户端应用程序连接或当管理程序需要他本身的服务时这个进程初始化

TOP

Rundll32.exe、svchost.exe 文件详解

了解系统进程中 svchost.exe 文件
笔者经常在一些反病毒论坛上浏览时,发现一些朋友对任务管理器中的svchost进程不甚了解,看见存在许多svchost进程就以为自己中了病毒,其实不然。
svchost.exe是NT核心系统非常重要的文件,对于Win2000/XP来说,不可或缺。这些svchost进程提供很多系统服务,如:rpcss服务(remote procedure call)、dmserver服务(logical disk manager)、dhcp服务(dhcp client)等等。
如果要了解每个svchost进程到底提供了多少系统服务,可以在WinXP的命令提示符窗口中输入“tasklist /svc”命令来查看。
工作原理
一般来说,Windows系统进程分为独立进程和共享进程两种。svchost.exe文件存在于%systemroot%\system32目录下,属于共享进程。
随着Windows系统服务不断增多,为了节省系统资源,微软把很多服务都做成共享方式,交由svchost进程来启动。但svchost进程只作为服务宿主,并不能实现任何服务功能,即它只能提供条件让其他服务在这里被启动,而它自己却不能给用户提供任何服务。
这些服务是如何实现的呢?原来这些系统服务是以动态链接库(dll)形式实现的,它们把可执行程序指向svchost,由svchost调用相应服务的动态链接库来启动服务。
那svchost又怎么知道某个系统服务该调用哪个动态链接库呢?这是通过系统服务在注册表中设置的参数来实现的。
具体实例
下面以Remote Registry服务为例,来看看svchost进程是如何调用DLL文件的。在WinXP中,点击“开始→运行”,输入“services.msc”命令,会弹出服务对话框,然后打开“Remote Registry”属性对话框,可以看到Remote Registry服务的可执行文件的路径为“C:\Windows\System32\svchost -k LocalService”(图1),这说明Remote Registry服务是依靠svchost调用“LocalService”参数来实现的,而参数的内容则是存放在系统注册表中的。
在运行对话框中输入“regedit.exe”后回车,打开注册表编辑器,找到“HKEY_LOCAL_MACHINE\System\currentcontrolset\services\Remote Registry”项,再找到类型为“reg_expand_sz”的“Imagepath”项,其键值为“%systemroot%\system32\svchost -k LocalService”(这就是在服务窗口中看到的服务启动命令),另外在“parameters”子项中有个名为“ServiceDll”的键,其值为“% systemroot%\system32\regsvc.dll”,其中“regsvc.dll”就是Remote Registry服务要使用的动态链接库文件。这样svchost进程通过读取“Remote Registry”服务注册表信息,就能启动该服务了。
也正是因为svchost的重要性,所以病毒、木马也想尽办法来利用它,企图利用它的特性来迷惑用户,达到感染、入侵、破坏的目的。那么应该如何判断到底哪个是病毒进程呢?正常的svchost.exe文件应该存在于“C:\Windows\system32”目录下,如果发现该文件出现在其他目录下就要小心了。
提示:svchost.exe文件的调用路径可以通过“系统信息→软件环境→正在运行任务”来查看

TOP

返回列表 回复 发帖