• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            asm, c, c++ are my all
            -- Core In Computer
            posts - 139,  comments - 123,  trackbacks - 0
            揭開SVCHOST.exe進程之謎

            [轉]http://m.shnenglu.com/jerysun0818/archive/2006/06/02/8088.html

            svchost.exe是nt核心系統的非常重要的進程,對于2000、xp來說,不可或缺。很多病毒、木馬也會調用它。所以,深入了解這個程序,是玩電腦的必修課之一。

              大家對windows操作系統一定不陌生,但你是否注意到系統中“svchost.exe”這個文件呢?細心的朋友會發現windows中存在多個 “svchost”進程(通過“ctrl+alt+del”鍵打開任務管理器,這里的“進程”標簽中就可看到了),為什么會這樣呢?下面就來揭開它神秘的面紗。

            發現

              在基于nt內核的windows操作系統家族中,不同版本的windows系統,存在不同數量的“svchost”進程,用戶使用“任務管理器”可查看其進程數目。一般來說,win2000有兩個svchost進程,winxp中則有四個或四個以上的svchost進程(以后看到系統中有多個這種進程,千萬別立即判定系統**毒了喲),而win2003 server中則更多。這些svchost進程提供很多系統服務,如:rpcss服務(remote procedure call)、dmserver服務(logical disk manager)、dhcp服務(dhcp client)等。

              如果要了解每個svchost進程到底提供了多少系統服務,可以在win2000的命令提示符窗口中輸入“tlist -s”命令來查看,該命令是win2000 support tools提供的。在winxp則使用“tasklist /svc”命令。

            svchost中可以包含多個服務

            深入

              windows系統進程分為獨立進程和共享進程兩種,“svchost.exe”文件存在于“%systemroot% system32”目錄下,它屬于共享進程。隨著windows系統服務不斷增多,為了節省系統資源,微軟把很多服務做成共享方式,交由 svchost.exe進程來啟動。但svchost進程只作為服務宿主,并不能實現任何服務功能,即它只能提供條件讓其他服務在這里被啟動,而它自己卻不能給用戶提供任何服務。那這些服務是如何實現的呢?

              原來這些系統服務是以動態鏈接庫(dll)形式實現的,它們把可執行程序指向 svchost,由svchost調用相應服務的動態鏈接庫來啟動服務。那svchost又怎么知道某個系統服務該調用哪個動態鏈接庫呢?這是通過系統服務在注冊表中設置的參數來實現。下面就以rpcss(remote procedure call)服務為例,進行講解。

              從啟動參數中可見服務是靠svchost來啟動的。

            實例

              以windows xp為例,點擊“開始”/“運行”,輸入“services.msc”命令,彈出服務對話框,然后打開“remote procedure call”屬性對話框,可以看到rpcss服務的可執行文件的路徑為“c:\windows\system32\svchost -k rpcss”,這說明rpcss服務是依靠svchost調用“rpcss”參數來實現的,而參數的內容則是存放在系統注冊表中的。

              在運行對話框中輸入“regedit.exe”后回車,打開注冊表編輯器,找到[hkey_local_machine systemcurrentcontrolsetservicesrpcss]項,找到類型為“reg_expand_sz”的鍵“magepath”,其鍵值為“%systemroot%system32svchost -k rpcss”(這就是在服務窗口中看到的服務啟動命令),另外在“parameters”子項中有個名為“servicedll”的鍵,其值為“% systemroot%system32rpcss.dll”,其中“rpcss.dll”就是rpcss服務要使用的動態鏈接庫文件。這樣 svchost進程通過讀取“rpcss”服務注冊表信息,就能啟動該服務了。

            解惑

              因為svchost進程啟動各種服務,所以病毒、木馬也想盡辦法來利用它,企圖利用它的特性來迷惑用戶,達到感染、入侵、破壞的目的(如沖擊波變種病毒“w32.welchia.worm”)。但windows系統存在多個svchost進程是很正常的,在受感染的機器中到底哪個是病毒進程呢?這里僅舉一例來說明。

              假設windows xp系統被“w32.welchia.worm”感染了。正常的svchost文件存在于“c:\windows\system32”目錄下,如果發現該文件出現在其他目錄下就要小心了。“w32.welchia.worm”病毒存在于“c:\windows\system32wins”目錄中,因此使用進程管理器查看svchost進程的執行文件路徑就很容易發現系統是否感染了病毒。windows系統自帶的任務管理器不能夠查看進程的路徑,可以使用第三方進程管理軟件,如“windows優化大師”進程管理器,通過這些工具就可很容易地查看到所有的svchost進程的執行文件路徑,一旦發現其執行路徑為不平常的位置就應該馬上進行檢測和處理。
            posted on 2006-06-02 17:06 Jerry Cat 閱讀(436) 評論(0)  編輯 收藏 引用

            <2006年7月>
            2526272829301
            2345678
            9101112131415
            16171819202122
            23242526272829
            303112345

            常用鏈接

            留言簿(7)

            隨筆檔案

            最新隨筆

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            久久久精品国产Sm最大网站| 久久精品国产亚洲AV久| www亚洲欲色成人久久精品| 品成人欧美大片久久国产欧美 | 伊人久久无码精品中文字幕| 亚洲国产成人精品女人久久久 | 久久精品免费全国观看国产| 久久亚洲国产成人精品性色| 亚洲国产精品久久久久婷婷老年| 日韩AV毛片精品久久久| 久久婷婷国产综合精品 | 日韩电影久久久被窝网| 久久精品国产亚洲77777| 久久一区二区三区免费| 久久精品人人做人人妻人人玩| 中文字幕亚洲综合久久| 精品一二三区久久aaa片| 久久久久国产一级毛片高清板| 国内精品人妻无码久久久影院 | 少妇内射兰兰久久| 久久性精品| 久久国产成人午夜aⅴ影院 | 久久伊人亚洲AV无码网站| 国产精品久久久久久久| 久久笫一福利免费导航| 久久精品女人天堂AV麻| 久久亚洲国产精品一区二区| 午夜天堂精品久久久久| 18禁黄久久久AAA片| 久久久久无码精品国产app| 9久久9久久精品| 69SEX久久精品国产麻豆| 无码AV中文字幕久久专区| 久久国产免费直播| 欧美国产成人久久精品| 欧美日韩精品久久久久| 久久夜色撩人精品国产| 三级片免费观看久久| 亚洲一区精品伊人久久伊人| 性高朝久久久久久久久久| 色妞色综合久久夜夜|