查看單個文章
舊 2006-07-15, 02:53 PM   #11 (permalink)
psac
榮譽會員
 
psac 的頭像
榮譽勳章
UID - 3662
在線等級: 級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時
註冊日期: 2002-12-07
住址: 木柵市立動物園
文章: 17381
現金: 5253 金幣
資產: 33853 金幣
預設

全面瞭解系統中 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」後Enter鍵,打開註冊表編輯器,找到「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文件的呼叫路徑可以通過「系統訊息→軟件環境→正在執行任務」來檢視.

此帖於 2006-07-15 03:11 PM 被 psac 編輯.
__________________
http://bbsimg.qianlong.com/upload/01/08/29/68/1082968_1136014649812.gif
psac 目前離線  
送花文章: 3, 收花文章: 1631 篇, 收花: 3205 次