軟體特性,進程信息,用途說明,檔案信息,啟動服務,相關特徵,基礎特徵,深入介紹,實例,病毒解惑,虛假進程,清除辦法,操作指南,調用程式,修複方法,一般修復,下載修復,中毒處理,解決方法,檢查方法,解決方法,
軟體特性
進程信息
進程檔案:svchost.exe
進程名稱:Host Process for Windows Services
位置:C:\Windows\System32\svchost.exe和C:\Windows\SysWow64\svchost.exe(僅64位)
英文描述:svchost.exe (Service Host, or SvcHost) is a system process that can host from one to many Windows services in the Windows NT family of operating systems. Svchost is essential in the implementation of so-called shared service processes, where a number of services can share a process in order to reduce resource consumption. This program is important for the stable and secure running of your computer and should not be terminated.
出品者:Microsoft Corp.
系統進程:是
常見錯誤:沒有
記憶體使用:沒有
病毒:不是
木馬:不是
用途說明
多個svchost.exe進程可以同時存在,在
Windows 2000一般有2個svchost進程,一個是RPCSS(Remote Procedure Call)服務進程,另外一個則是由很多服務共享的一個svchost.exe。而在
Windows XP中,則一般有4個以上的svchost.exe服務進程,之後的系統中則更多(
Windows 7中一般是6個,但所有系統中數目都不是絕對的,有時候多一點少一點也是正常現象,是不是病毒也不能杞人憂天,需要用合理的方法來判斷)。這樣做在一定程度上減少了系統資源的消耗,不過也帶來一定的
不穩定因素,因為任何一個共享進程的服務因為錯誤退出進程就會導致整個進程中的所有服務都退出。
近年來,由於
計算機性能普遍提高,為了提高
系統安全性和穩定性,在最新版本的
Windows 10作業系統中,系統不再使多個服務共享1個svchost.exe進程,而會為每個服務都分配一個獨立的svchost.exe進程。因此在更新到最新版Windows 10後,在任務管理器中可以看到80至90個svchost.exe進程,這是正常現象。
另外,在64位Windows系統中,
系統盤下的Sys
WOW64資料夾(位於Windows資料夾內)內也存在一個svchost.exe檔案,它是svchost.exe的32位版本,用於在64位Windows系統中運行32位服務。在64位
Windows作業系統中,大多數位於System32資料夾中的
系統檔案在SysWOW64資料夾中都擁有1個對應的32位版本,因此無需擔心。
檔案信息
注釋: svchost.exe是一類通用的進程名稱。它是和運行動態程式庫(DLLs)的Windows系統服務相關的。在Windows啟動時,svchost.exe檢查註冊表中的服務,運行並載入它們。經常會有多個svchost.exe同時運行的情況,每一個都表示該計算機上運行的一類基本服務。請不要把它和
scvhost.exe混淆。
詳細分析: svchost.exe 存放在C:\Windows\System32和C:\Windows\SysWOW64(僅64位)目錄中。已知的Windows XP
檔案大小為14336 位元組 (占總出現比率85% ),21504 位元組 及22 種其它情況。
進程沒有可視視窗。 這個檔案是由Microsoft 所簽發。 這個進程打開接口連到區域網路或網際網路。 總結在技術上威脅的
危險度是
9%。
如果svchost.exe 位於在C:\Windows 下的
子目錄下,那么威脅的危險度是
74%。檔案大小是106496 位元組 (占總出現比率5% ),16896 位元組 及121 種其它情況。這個不是Windows
核心檔案。 應用程式沒有可視視窗。 這個程式沒有備註。 這是個不知名的檔案存放於Windows 目錄。svchost.exe 是有能力可以 監控應用程式,記錄輸入,隱藏自身,接到網際網路,操縱其他程式。
如果svchost.exe 位於在目錄C:\Windows下,那么威脅的危險度是67%。檔案大小是36352 位元組 (占總出現比率10% ),49242 位元組 及74 種其它情況。這個不是Windows 系統檔案。 進程是不可見的。 檔案存放於Windows 目錄但並非系統核心檔案。 沒有進程的相關資料。
如果svchost.exe 位於在目錄C:\Windows\System32\drivers下,那么威脅的危險度是87%。檔案大小是30720 位元組 (占總出現比率10% ),49152 位元組 及48 種其它情況。
如果svchost.exe 位於在"C:\
Documents and Settings" 下的子目錄下,那么威脅的危險度是
66%。檔案大小是233472 位元組 (占總出現比率12% ),106496 位元組 及87 種其它情況。
如果svchost.exe 位於在"C:\
Program Files" 下的子目錄下,那么威脅的危險度是
63%。檔案大小是497664 位元組 (占總出現比率19% ),493568 位元組 及66 種其它情況。
如果svchost.exe 位於在of C:\下的子目錄下,那么威脅的危險度是66%。檔案大小是239104 位元組 (占總出現比率23% ),183808 位元組 及25 種其它情況。
如果svchost.exe 位於在C:\Windows\System32 下的子目錄下,那么威脅的危險度是75%。檔案大小是525312 位元組 (占總出現比率12% ),86016 位元組 及53 種其它情況。
如果svchost.exe 位於在目錄"C:\Program Files\
Common Files" 下的子目錄下,那么威脅的危險度是
65%。檔案大小是1429504 位元組 (占總出現比率22% ),289280 位元組 及13 種其它情況。
如果svchost.exe 位於在目錄"C:\Program Files\Common Files"下,那么威脅的危險度是61%。檔案大小是17920 位元組 (占總出現比率56% ),20480 位元組 及4 種其它情況。
如果svchost.exe 位於在C:\Windows\System32\drivers 下的子目錄下,那么威脅的危險度是72%。檔案大小是244484 位元組 (占總出現比率22% ),167936 位元組 及5 種其它情況。
如果svchost.exe 位於在Windows 的臨時目錄下,那么威脅的危險度是52%。檔案大小是109222 位元組 (占總出現比率20% ),241664 位元組,27652 位元組,46154 位元組,655360 位元組。
如果svchost.exe 位於在目錄C:\下,那么威脅的危險度是64%。檔案大小是415232 位元組 (占總出現比率60% ),115712 位元組,15536 位元組。
如果svchost.exe 位於在目錄"C:\Program Files"下,那么威脅的危險度是56%。檔案大小是28672 位元組 (占總出現比率33% ),37376 位元組,25600 位元組。
如果svchost.exe 位於在"My Files" 下的子目錄下,那么威脅的危險度是56%。檔案大小是7168 位元組。
svchost.exe 也可能是
惡意軟體所偽裝,尤其是當它們存在於除C:\Windows\System32和C:\Windows\SysWOW64(僅64位)以外目錄。
啟動服務
以windows XP為例,點擊“開始”/“運行”,輸入“
services.msc”命令,彈出服務對話框,然後打開“remote procedure call”屬性對話框,可以看到rpcss服務的
執行檔的路徑為“c:\windows\system32\svchost.exe -k rpcss”,這說明rpcss服務是依靠svchost調用“rpcss”參數來實現的,而參數的內容則是存放在系統
註冊表中的。
在運行對話框中輸入“
regedit.exe”後回車,打開
註冊表編輯器,找到[HKEY_Local_Machine\System CurrentControlSet\Services\rpcss]項,找到類型為“reg_expand_sz”的鍵“imagepath”,其
鍵值為“%systemroot%\system32\svchost-k rpcss”(這就是在服務視窗中看到的服務啟動命令),另外在“parameters”子項中有個名為“servicedll”的鍵,其值為“%systemroot%\system32\rpcss.dll”,其中“rpcss.dll”就是rpcss服務要使用的
動態程式庫檔案。這樣 svchost進程通過讀取“rpcss”服務註冊表信息,就能啟動該服務了。
相關特徵
基礎特徵
在基於NT核心的windows作業系統家族中,不同版本的windows系統,存在不同數量的“s
vchost”進程,用戶使用“
任務管理器”可查看其進程數目。一般來說,win2000有兩個svchost進程,winxp中則有四個或四個以上的svchost進程(以後看到系統中有多個這種進程,千萬別立即判定系統有
病毒了喲),而
win2003server中則更多。這些svchost進程提供很多
系統服務,如:rpcss服務(remoteprocedurecall)、dmserver服務(logicaldiskmanager)、dhcp服務(dhcpclient)等。到了
Windows Vista 系統時svchost 進程多達12個,這些svchost.exe都是同一個檔案路徑下C :\Windows\
System32\svchost.exe , 它們分別是imgsvc、 NetworkServiceNetworkRestricted、 LocalServiceNoNetwork 、NetworkService 、LocalService 、netsvcs 、LocalSystemNetworkRestricted、 LocalServiceNetworkRestricted 、services 、rpcss、 WerSvcGroup 、DcomLaunch服務組。如果要了解每個svchost進程到底提供了多少
系統服務,可以在win2000的
命令提示符視窗中輸入“tlist-s”命令來查看,該命令是win2000supporttools提供的。在winxp則使用“tasklist/svc”命令。
svchost中可以包含多個服務。
深入介紹
windows系統進程分為獨立進程和共享進程兩種,“svchost.exe”檔案存在於“
%systemroot%system32”目錄下,它屬於共享進程。隨著windows
系統服務不斷增多,為了節省
系統資源,
微軟把很多服務做成共享方式,交由svchost.exe進程來啟動。但svchost進程只作為服務宿主,並不能實現任何服務功能,即它只能提供條件讓其他服務在這裡被啟動,而它自己卻不能給用戶提供任何服務。這些系統服務是以
動態連結庫(dll)形式實現的,它們把
可執行程式指向svchost,由svchost調用相應服務的
動態程式庫來啟動服務。svchost通過系統服務在
註冊表中設定的參數知道
系統服務該調用哪個動態程式庫。下面就以rpcss(remoteprocedurecall)服務為例,進行講解。
從啟動參數中可見服務是靠svchost來啟動的。
實例
以windowsxp為例,點擊“開始”/“運行”,輸入“
services.msc”命令,彈出服務對話框,然後打開“remoteprocedurecall”屬性對話框,可以看到rpcss服務的
執行檔的路徑為“c:\windows\system32\svchost-krpcss”這說明rpcss服務是依靠svchost調用“rpcss”參數來實現的,而參數的內容則是存放在系統註冊表中的。
在運行對話框中輸入“regedit.exe”後回車,打開
註冊表編輯器,找到[
hkey_local_machine\system\currentcontrolset\services\rpcss]項,找到類型為“reg_expand_sz”的鍵“Imagepath”,其鍵值為“%systemroot%system32svchost-krpcss”(這就是在服務視窗中看到的服務啟動命令),另外在“parameters”子項中有個名為“servicedll”的鍵,其值為“%systemroot%system32rpcss.dll”,其中“
rpcss.dll”就是rpcss服務要使用的
動態程式庫檔案。這樣svchost進程通過讀取“rpcss”服務註冊表信息,就能啟動該服務了。
病毒解惑
因為svchost進程啟動各種服務,所以病毒、木馬也想盡辦法來利用它,企圖利用它的特性來迷惑用戶,達到感染、入侵、破壞的目的(如
衝擊波變種病毒“w32.welchia.worm”)。但windows系統存在多個svchost進程是很正常的,在受感染的機器中到底哪個是病毒進程,這裡僅舉一例來說明。
假設windowsXP系統被“w32.welchia.worm”感染了。正常的svchost檔案存在於“c:\windows\system32”目錄下,如果發現該檔案出現在其他目錄下就要小心了。“w32.welchia.worm”病毒存在於“c:\windows\system32\wins”目錄中,因此可以使用
進程管理器->詳細信息->路徑名稱查看svchost進程的執行檔案路徑就很容易發現系統是否感染了病毒。一旦發現其執行路徑為不平常的位置就應該馬上進行檢測和處理。
Svchost.exe說明解疑對Svchost的困惑
---------------
Svchost.exe檔案對那些從
動態連線庫中運行的服務來說是一個普通的主機進程名。Svchost.exe檔案定位在系統的%systemroot%\system32資料夾下。在啟動的時候,Svchost.exe檢查註冊表中的位置(
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\
Windows NT\CurrentVersion\SvcHost)來構建需要載入的服務列表。這就會使多個Svchost.exe在同
一時間運行。每個Svchost.exe的回話期間都包含一組服務,以至於單獨的服務必須依靠Svchost.exe怎樣和在那裡啟動。這樣就更加容易控制和查找錯誤。
Svchost.exe 組是用下面的註冊表值來識別。
每個在這個鍵下的值代表一個獨立的Svchost組,並且當你正在看活動的進程時,它顯示作為一個單獨的例子。每個鍵值都是REG_MULTI_SZ類型的值而且包括運行在Svchost組內的服務。每個Svchost組都包含一個或多個從註冊表值中選取的服務名,這個服務的
參數值包含了一個ServiceDLL值。
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services
簡單的說沒有這個RPC服務,機器幾乎就上不了網了。很多
套用服務都是依賴於這個RPC接口的,如果發現這個進程占了太多的
CPU資源,直接把系統的RPC服務禁用了會是一場災難:因為連恢復這個界面的
系統服務設定界面都無法使用了。恢復的方法需要使用
註冊表編輯器,找到 HKEY_LOCAL_MACHINE >> SYSTEM >> CurrentControlSet >>
Services >> RpcSs,右側找到Start屬性,把它的值改為2再重啟即可
造成svchost占系統CPU 100%的原因並非svchost服務本身:以上的情況是由於
Windows Update服務下載/安裝失敗而導致更新服務反覆重試造成的。而Windows的自動更新也是依賴於svchost服務的一個後台套用,從而表現為svchost.exe負載極高。常發生這類問題的機器一般是上網條件(尤其是去國外網站)不穩定的機器,比如家裡的父母的機器,往往在安裝機器幾個月以後不定期發生,每個月的第二個星期是高發期。(因為最近幾年MS很有規律的在每個月的第二個星期發布
補丁程式)上面的
解決方法並不能保證不重發作,但是為了svchost檔案而每隔幾個月重裝一次作業系統還是太浪費時間了。
虛假進程
常被病毒冒充的進程名有:
svch0st.exe、schvost.exe、
scvhost.exe。隨著Windows系統服務不斷增多,為了節省系統資源,微軟把很多服務做成共享方式,交由svchost.exe進程來啟動。而系統服務是以動態程式庫(DLL)形式實現的,它們把可執行程式指向svchost,由svchost調用相應服務的動態程式庫來啟動服務。我們可以打開“
控制臺”→“
管理工具”→服務,雙擊其中“
ClipBook”服務,在其
屬性面板中可以發現對應的
執行檔路徑為“C:\WINDOWS\system32\
clipsrv.exe”。再雙擊“Alerter”服務,可以發現其執行檔路徑為“C:\WINDOWS\system32\svchost.exe -kLocalService”,而“Server”服務的執行檔路徑為“C:\WINDOWS\system32\svchost.exe -knetsvcs”。正是通過這種調用,可以省下不少系統資源,因此系統中出現多個svchost.exe,其實只是系統的服務而已。 在
Windows2000系統中一般存在2個svchost.exe進程,一個是RPCSS(
RemoteProcedureCall)服務進程,另外一個則是由很多服務共享的一個svchost.exe;而在
WindowsXP中,則一般有4個以上的svchost.exe服務進程。如果svchost.exe進程的數量多於6個,如果不是使用Vista或以上系統,就要小心了,很可能是病毒假冒的,檢測方法也很簡單,使用一些進程管理工具,例如Windows最佳化大師的進程
管理功能,查看svchost.exe的
執行檔路徑,如果在“C:\WINDOWS\system32”目錄外,那么就可以判定是病毒了。
清除辦法
1.用
unlocker刪除類似於C:SysDayN6這樣的資料夾:例如C:Syswm1i、C:SysAd5D等等,這些資料夾有個共同特點,就是名稱為 Sys*** (***是三到五位的隨機字母),這樣的資料夾有幾個就刪幾個。
2.開始——運行——輸入“
regedit”——打開註冊表,展開註冊表到以下位置:
刪除右邊所有用純數字為名的鍵,如
<66><C:SysDayN6svchost.exe>
<333><C:Syswm1isvchost.exe>
<50><C:SysAd5Dsvchost.exe>
<4><C:SysWsj7svchost.exe>
3.重新啟動計算機,病毒清除完畢。
操作指南
為了能看到正在運行在Svchost列表中的服務。
開始-運行-敲入cmd
然後再敲入 tlist -s (tlist 應該是
win2k工具箱裡的東東)
Tlist 顯示一個活動進程的列表。開關 -s 顯示在每個進程中的活動服務列表。如果想知道更多的關於進程的信息,可以敲 tlist pid。
Tlist 顯示Svchost.exe運行的兩個例子。
8.System
208services.exe
Svcs: AppMgmt,Browser,Dhcp,dmserver,Dnscache,Eventlog,lanmanserver,LanmanWorkst
220.lsass.exe Svcs: Netlogon,PolicyAgent,SamSs
404.svchost.exe Svcs: RpcSs
452.spoolsv.exeSvcs: Spooler
556.svchost.exe Svcs: EventSystem,
Netman,NtmsSvc,RasMan,SENS,TapiSrv
1032 OSA.EXE Title: Reminder
1080 MAPISP32.EXE Title: WMS Idle
1144 tlist.exe
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Svchost:
netsvcs: Reg_Multi_SZ: EventSystem Ias Iprip Irmon Netman Nwsapagent RasautoRa
sman Remoteaccess SENS Sharedaccess Tapisrv Ntmssvc
rpcss :Reg_Multi_SZ: RpcSs
調用程式
(第一行為"服務名字",第二行為"服務的說明",第三行為"調用程式")
Application Management
svchost.exe
Windows的自動更新服務。
svchost.exe
Background Intelligent Transfer Service
svchost.exe
svchost.exe
用來瀏覽區域網路電腦的服務,關閉不影響瀏覽。
svchost.exe
Windows更新時用來確認windows檔案指紋的,可以在更新的時候開啟。
svchost.exe
svchost.exe
Distributed Link Tracking Client
用於區域網路更新連線信息,(比如在電腦A有個檔案,在電腦B做了個連線,如果檔案移動了,這個服務將會更新信息。占用4兆記憶體。)
svchost.exe
DNS Client
svchost.exe
Error Reporting Service
svchost.exe
Fast User Switching Compatibility
svchost.exe
Help and Support
Windows的幫助。新手還是要靠他來指點的。
svchost.exe
Human Interface Device Access
支持“
人體工學”的電腦配件,比如鍵盤上調音量的按鈕等等。
svchost.exe
Internet Connection Firewall/Internet Connection Sharing
XP的
防火牆/為多台電腦聯網共享一個撥號網路訪問Internet提供服務。
svchost.exe
svchost.exe
Network Location Awareness (NLA)
svchost.exe
Portable Media Serial Number
svchost.exe
Remote Access Auto Connection Manager
寬頻者/網路共享需要的服務。
svchost.exe
Remote Procedure Call (
RPC)
svchost.exe
Remote Registry Service
遠程註冊表運行/修改。
svchost.exe
減少方式:
你可以把下面這段代碼複製到一個空的記事本中,然後另外儲存為“.bat”格式的
批處理檔案,再運行這個批處理。就可以關閉無用的
系統服務了,你會發現少了很多SVCHOST.EXE。
@echo off
REM 關閉“為 Internet 連線共享和 Windows
防火牆提供第三方協定外掛程式的支持”
REM 關閉“Windows自動更新功能”
sc config clipsrv start= disabled
REM 關閉“Messenger”
sc config Messenger start= disabled
sc config mnmsrvc start= disabled
REM 關閉“列印後台處理程式”
sc config Spooler start= disabled
REM 關閉“遠程修改註冊表”
sc config RemoteRegistry start= disabled
sc config wscsvc start= disabled
sc config srservice start= disabled
sc config Schedule start= disabled
REM 關閉“TCP/IP NetBIOS Helper”
sc configlmhostsstart= disabled
sc config tlntsvr start= disabled
sc config sharedaccess start= disabled
REM 關閉“Computer Browser”
sc config Browser start= disabled
REM 關閉“錯誤報警”
sc config Alerter start= disabled
REM 關閉“錯誤報告”
sc config ERSvc start= disabled
REM 關閉“本地和遠程計算機上檔案的
索引內容和屬性”
sc config cisvc start= disabled
REM 關閉“管理卷影
複製服務拍攝的軟體卷影複製”
sc config SwPrv start= disabled
REM 關閉“支持網路上計算機 pass-through 帳戶登錄
身份驗證事件”
sc config NetLogon start= disabled
sc config NtLmSsp start= disabled
REM 關閉“收集本地或遠程計算機基於預先配置的日程參數的性能數據,然後將此數據寫入日誌或觸發警報”
sc config SysmonLog start= disabled
REM 關閉“通過在線上計算機重新獲取任何音樂播放序號”
sc config WmdmPmSN start= disabled
REM 關閉“管理連線到計算機的
不間斷電源(UPS)”
sc config UPS start= disabled
修複方法
一般修復
svchost.exe出錯,很多是因為系統中了
流氓軟體,如果不了解系統,不知道svchost.exe在電腦中的存放位置,那么建議使用
修復工具對系統進行最全面的掃描和修復。
然後,點擊主界面的快速掃描,進行全面的系統掃描。
最後,按提示重新啟動電腦,svchost.exe下載修復完畢。
下載修復
一、如果您的系統提示“沒有找到svchost.exe”或者“缺少svchost.exe ”等類似
錯誤信息,請把svchost.exe下載到本機
2、Windows NT/2000系統,則複製到C:WINNT\System32目錄下。
三、然後打開“開始-運行-輸入regsvr32 svchost.exe”,回車即可解決錯誤提示。
中毒處理
1.病毒木馬原因導致的 ,因為svchost進程啟動各種服務,所以病毒、木馬也想盡辦法來利用它,企圖利用它的特性來迷惑用戶,使svchost成為病毒的傀儡進程,進行病毒下載操作,從而下載大量木馬,盜取用戶信息。推薦使用
金山衛士對木馬病毒木馬查殺。
2. IE組件在註冊表中註冊信息被破壞 , 重新註冊ie組件信息問題即可解決。
3.如果電腦有印表機,還可能是因為
印表機驅動安裝錯誤,也會造成的錯誤 ,只要重新安裝印表機驅動即可解決
4.某些軟體與Svchost.exe發生衝突導致的,
解決方法就是卸載該軟體或者升級該軟體到最新版本。
5.大多數網民喜歡使用
ghost系統,
破解版系統,但是使用這些系統可能存在不兼容因素 ,很容易導致發生的錯誤 ,最好解決方法就是安裝使用正版作業系統。
解決方法
1.什麼程式都沒打開。 常見svchost.exe這個進程占用
CPU資源高到100%
檢查方法
按(Ctrl+Alt+Del)進入——
任務管理器里。查看svchost.exe進程CPU資源是否占用50%—
100%。(占用CPU資源100%或者記憶體50%)。
解決方法
開始—控制臺—印表機和傳真—MicrosoftXXXXX微軟
虛擬印表機(系統默認有個印表機)—打開印表機—刪除取消所有正在列印中的文檔,或者右鍵刪除系統默認印表機程式,就可以解決CPU占用100%。