一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

剖析SVCHOST進(jìn)程的作用和原理 - 豬豬和乖乖的小窩 - 藍(lán)色御風(fēng) - 和訊博客

 fondofbeyond 2007-03-15
剖析SVCHOST進(jìn)程的作用和原理 [轉(zhuǎn)貼 2005-08-22 09:56:06 ] 發(fā)表者: 藍(lán)色御風(fēng)   

走進(jìn)SVCHOST

SVCHOST進(jìn)程現(xiàn)在是聲名狼藉,本來Windows用它來啟動各種服務(wù),可是偏偏病毒、木馬也想盡辦法來利用它,企圖利用它的特性來迷惑用戶,達(dá)到 感染、入侵、破壞的目的(如沖擊波變種病毒“W32.Welchia.Worm”),弄的大家草木皆兵一見有SVCHOST就懷疑自己是否已經(jīng)中招,其實(shí) Windows系統(tǒng)存在多個SVCHOST進(jìn)程是很正常的,在受感染的機(jī)器中到底哪個是病毒進(jìn)程呢?這里僅舉一例來說明。

    假設(shè) Windows XP系統(tǒng)被“W32.Welchia.Worm”感染了。正常的SVCHOST文件存在于“C:\Windows\system32”目錄下,如果發(fā)現(xiàn)該 文件出現(xiàn)在其他目錄下就要小心了。“W32.Welchia.Worm”病毒存在于“C:\Windows\system32\wins”目錄中,因此使 用進(jìn)程管理器查看SVCHOST進(jìn)程的執(zhí)行文件路徑就很容易發(fā)現(xiàn)系統(tǒng)是否感染了病毒。Windows系統(tǒng)自帶的任務(wù)管理器不能夠查看進(jìn)程的路徑,可以使用 第三方進(jìn)程管理軟件,如“Windows優(yōu)化大師”進(jìn)程管理器,通過這些工具就可很容易地查看到所有的SVCHOST進(jìn)程的執(zhí)行文件路徑,一旦發(fā)現(xiàn)其執(zhí)行 路徑為不平常的位置就應(yīng)該馬上進(jìn)行檢測和處理。

    在基于NT內(nèi)核的Windows操作系統(tǒng)家族中,不同版本的Windows系 統(tǒng),存在不同數(shù)量的“SVCHOST”進(jìn)程,用戶使用“任務(wù)管理器”可查看其進(jìn)程數(shù)目。一般來說,Win2000有兩個SVCHOST進(jìn)程,WinXP中 則有四個或四個以上的SVCHOST進(jìn)程(以后看到系統(tǒng)中有多個這種進(jìn)程,千萬別立即判定系統(tǒng)有病毒了喲),而Win2003 server中則更多。這些SVCHOST進(jìn)程提供很多系統(tǒng)服務(wù),如:RpcSs服務(wù)(Remote Procedure Call)、dmserver服務(wù)(Logical Disk Manager)、Dhcp服務(wù)(DHCP Client)等。

    如果要了解每個SVCHOST進(jìn)程到底提供了多少系統(tǒng)服務(wù),可以在Win2000的命令提示符窗口中輸入“Tlist -S”命令來查看,該命令是Win2000 Support Tools提供的。在WinXP則使用“tasklist /svc”命令。

    深入分析SVCHOST

    Windows 系統(tǒng)進(jìn)程分為獨(dú)立進(jìn)程和共享進(jìn)程兩種,“SVCHOST.EXE”文件存在于“%SystemRoot%\system32\”目錄下,它屬于共享進(jìn)程。 隨著Windows系統(tǒng)服務(wù)不斷增多,為了節(jié)省系統(tǒng)資源,微軟把很多服務(wù)做成共享方式,交由SVCHOST.EXE進(jìn)程來啟動。但SVCHOST進(jìn)程只作 為服務(wù)宿主,并不能實(shí)現(xiàn)任何服務(wù)功能,即它只能提供條件讓其他服務(wù)在這里被啟動,而它自己卻不能給用戶提供任何服務(wù)。那這些服務(wù)是如何實(shí)現(xiàn)的呢?

  Svchost組是由注冊表[HKEY_LOCAL_MACHINE\ Software\Microsoft\Windows NT\CurrentVersion\Svchost]項來識別的。在這個注冊表項下的每個值都代表單獨(dú)的Svchost組,并在我們查看活動進(jìn)程時作為 單獨(dú)的實(shí)例顯示。這里的鍵值均為REG_MULTI_SZ類型的值,并且包含該Svchost組里運(yùn)行的服務(wù)名稱(如圖1)。

0 && image.height>0){if(image.width>=510){this.width=510;this.height=image.height*510/image.width;}}" src="http://www.pconline.com.cn/pcedu/soft/st/winxp/0409/pic/040907svchost01.gif" src_cetemp="http://www.pconline.com.cn/pcedu/soft/st/winxp/0409/pic/040907svchost01.gif">

圖1 注冊表中的Svchost


  實(shí)際上,Svchost只是作為服務(wù)的宿主,本身并不實(shí)現(xiàn)什么功能。如果需要使用Svchost來啟動某個DLL形式實(shí)現(xiàn)的服務(wù),該 DLL的載體Loader指向Svchost,在啟動服務(wù)的時候由Svchost調(diào)用該服務(wù)的DLL來實(shí)現(xiàn)啟動的目的。使用Svchost啟動某個服務(wù)的 DLL文件是由注冊表中的參數(shù)來決定的,在需要啟動服務(wù)的注冊表項下都有一個“Parameters”子項,其中的“ServiceDll”鍵值表明該服 務(wù)由哪個DLL文件負(fù)責(zé),并且這個DLL文件必須導(dǎo)出一個ServiceMain()函數(shù),為處理服務(wù)任務(wù)提供支持。


    那 SVCHOST又怎么知道某個系統(tǒng)服務(wù)該調(diào)用哪個動態(tài)鏈接庫呢?這是通過系統(tǒng)服務(wù)在注冊表中設(shè)置的參數(shù)來實(shí)現(xiàn)。下面就以RpcSs(Remote Procedure Call)服務(wù)為例,進(jìn)行講解。實(shí)例:筆者以Windows XP為例,點(diǎn)擊“開始”/“運(yùn)行”,輸入“services.msc”命令,彈出服務(wù)對話框,然后打開“Remote Procedure Call”屬性對話框,可以看到RpcSs服務(wù)的可執(zhí)行文件的路徑為“C:\WINDOWS\system32\svchost -k rpcss”,這說明RpcSs服務(wù)是依靠SVCHOST調(diào)用“rpcss”參數(shù)來實(shí)現(xiàn)的,而參數(shù)的內(nèi)容則是存放在系統(tǒng)注冊表中的。

     在運(yùn)行對話框中輸入“regedit.exe”后回車,打開注冊表編輯器,找到[HKEY_LOCAL_MACHINESYSTEM\CurrentControlSet\Services\RpcSs]項,找到類型為“REG_EXPAND_SZ”的鍵 “magePath”,其鍵值為“%SystemRoot%\system32\svchost -k rpcss”(這就是在服務(wù)窗口中看到的服務(wù)啟動命令),另外在“Parameters”子項中有個名為“ServiceDll”的鍵,其值為“% SystemRoot%\system32\rpcss.dll”,其中“rpcss.dll”就是rpcss服務(wù)要使用的動態(tài)鏈接庫文件。這樣 SVCHOST進(jìn)程通過讀取“RpcSs”服務(wù)注冊表信息,就能啟動該服務(wù)了。

  Svchost進(jìn)程木馬淺析

  從前面的介紹我們 已經(jīng)知道,在注冊表[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\Current- Version\Svchost]分支中,存放著Svchost啟動的組和組內(nèi)的各項服務(wù),很多木馬和病毒正是利用這一點(diǎn)來實(shí)現(xiàn)自動加載的。它們通常的方 法有:

  · 添加一個新的組,在組里添加服務(wù)名;

  · 在現(xiàn)有的組里添加服務(wù)名或者利用現(xiàn)有組一個未安裝的服務(wù);

  · 修改現(xiàn)有組里的服務(wù),將它的ServiceDll指向自己的DLL文件。

例如PortLess BackDoor就是一款典型的利用Svchost進(jìn)程加載的后門工具。那么對于像PortLess BackDoor這樣的木馬、病毒,該如何檢測并清除呢?以Windows XP為例,首先我們可以利用“進(jìn)程間諜”這樣的進(jìn)程工具查看Svchost進(jìn)程中的模塊信息(如圖3),并與之前的模塊信息比較,可以發(fā)現(xiàn)Svchost 進(jìn)程中有一個可疑的DLL文件“SvchostDLL.dll”。同時,在“管理工具→服務(wù)”列表中會看到一項新的服務(wù)“Intranet Services”(顯示名稱),此服務(wù)名稱為:Iprip,由Svchost啟動,“-k netsvcs”表示此服務(wù)包含在Netsvcs服務(wù)組中。

0 && image.height>0){if(image.width>=510){this.width=510;this.height=image.height*510/image.width;}}" src="http://www.pconline.com.cn/pcedu/soft/st/winxp/0409/pic/040907svchost03.gif" src_cetemp="http://www.pconline.com.cn/pcedu/soft/st/winxp/0409/pic/040907svchost03.gif">

圖3 Svchost進(jìn)程中的模塊信息


  提示:在Windows 2000中,系統(tǒng)的Iprip服務(wù)偵聽由使用Routing Information協(xié)議版本1(RIPv1)的路由器發(fā)送的路由更新信息,在服務(wù)列表中顯示的名稱為“RIP Listener”。

  運(yùn)行Regedit,打開注冊表編輯器,展開[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\

Services\IPRIP]分支,查看其“Parameters”子項,其中“ServiceDll”鍵值指向調(diào)用的DLL文件路徑和全稱,這正是 后門的DLL文件。知道了這些,就可以動手清除了:在服務(wù)列表用右鍵單擊“Intranet Services”服務(wù),從菜單中選擇“停止”,然后在上述注冊表分支中刪除“Iprip”項。重新啟動計算機(jī),再按照“ServiceDll”鍵值提示 的位置刪除后門程序主文件即可。最后需要提醒讀者的是,對注冊表進(jìn)行修改前,應(yīng)做好備份工作,以便出現(xiàn)錯誤時能夠及時還原。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    久久婷婷综合色拍亚洲| 国产午夜福利在线观看精品| 欧美高潮喷吹一区二区| 国产精品一区二区三区欧美| 午夜精品一区免费视频| 加勒比系列一区二区在线观看| 少妇激情在线免费观看| 欧美一级特黄特色大色大片| 国内精品一区二区欧美| 91插插插外国一区二区| 日韩性生活片免费观看| 99日韩在线视频精品免费| 国产又粗又长又大的视频| 亚洲免费视频中文字幕在线观看| 五月的丁香婷婷综合网| 中文字幕av诱惑一区二区| 久久精品中文字幕人妻中文| 日韩1区二区三区麻豆| 国产精品美女午夜福利| 欧美日韩欧美国产另类| 国产一级片内射视频免费播放| 欧洲亚洲精品自拍偷拍| 丁香七月啪啪激情综合| 成年女人午夜在线视频| 美国黑人一级黄色大片| 日韩国产亚洲欧美另类| 年轻女房东2中文字幕| 日本在线视频播放91| 日本人妻免费一区二区三区| 国产一区欧美午夜福利| 久久精品久久精品中文字幕| 亚洲欧美日产综合在线网| 大香蕉大香蕉手机在线视频| 国产一区欧美午夜福利| 女人高潮被爽到呻吟在线观看| 欧美日韩国产精品第五页| 欧美精品二区中文乱码字幕高清| 日韩人妻中文字幕精品| 日本免费一区二区三女| 国产一区在线免费国产一区| 国产精品日韩欧美第一页|