王曉平
齊齊哈爾高等師范專科學校,黑龍江齊齊哈爾 161005
自啟動技術是保證惡意代碼傳播和侵害的關鍵技術。該技術保證了惡意代碼能夠在受害主機中存活并正常工作。為保證惡意代碼能夠在計算機系統(tǒng)開機或重新啟動時能夠自動加載運行,惡意代碼利用了很多操作系統(tǒng)的特性。比如修改注冊表,很多惡意代碼通過修改注冊表中run、runservice等的鍵值,實現(xiàn)自啟動;也有的惡意代碼修改系統(tǒng)配置文件達到自動啟動,如win.ini、system.ini文件等。歸納起來,惡意代碼的自啟動方式主要有以下幾種:利用windows啟動菜單啟動、通過服務啟動、通過文件關聯(lián)啟動、通過修改系統(tǒng)配置文件啟動、通過添加注冊表啟動項啟動、作為其他程序插件啟動、通過文件綁定方式啟動等。下面就各種自啟動的方式進行一下分析。
在“開始”→“程序”→“啟動”菜單里面添加應用程序或者應用程序的快捷方式,可以實現(xiàn)應用程序在windows啟動時的自動啟動。這是Windows最方便也是最簡單的啟動方式,一些惡意代碼就是利用了該種啟動方式,實現(xiàn)惡意代碼的自動運行,但是,該種方式容易被用戶發(fā)現(xiàn),因此現(xiàn)在惡意代碼一般都不會采用這種啟動方式。這樣的啟動手法。
Windows服務是隨操作系統(tǒng)啟動的程序,其在后臺運行,一般不與用戶發(fā)生交互。是系統(tǒng)核心的重要組成部分,如DNS客戶端、打印程序、Windows更新服務、計劃任務、Windows時間服務等服務等各種操作都依靠他的支持。其后臺運行以及隨操作系統(tǒng)啟動的特性,經(jīng)常被惡意代碼的制造者用來加載惡意代碼程序。將惡意代碼注冊成服務,惡意代碼就可以達到在每次系統(tǒng)啟動的時候完成自動加載的目的。作為一種有效的惡意代碼的加載方式,目前仍被一些惡意程序利用。如臭名昭著的“灰鴿子”就是采用將自身注冊成Windows服務的方式啟動的。
通過服務來啟動的惡意代碼程序,可以通過查看“服務”來找到。其注冊表的位置是:HKEY_LOCAL_MACHINESystem CurrentControlSetServices,我們也可以通過查看該注冊表項的方式檢查是否有惡意代碼通過該方式啟動。
所謂文件關聯(lián)是指Windows在打開某種類型文件時的默認方式,如默認文本與文本文件關聯(lián)的程序是“記事本”程序,當我們雙擊文本文件時,Windows就會運行“記事本”程序對該文本文件進行編輯。文件關聯(lián)是通過注冊表項實現(xiàn)的,惡意代碼可以利用Windows的這種關聯(lián)機制,通過修改相關的注冊表項實現(xiàn)惡意代碼的啟動。例如,將文本文件的默認關聯(lián)程序“記事本”程序,改為把某個惡意代碼程序,這樣只要用戶打開文本文件,就會啟動該代碼達到惡意加載的目的。該方式的局限性在于,惡意代碼不是隨系統(tǒng)一同啟動,而是需要在用戶運行相應類型的文件時才會被啟動。
利用windows的系統(tǒng)配置文件啟動,也是惡意代碼啟動的一種重要方式。Windows系統(tǒng)配置文件主要就是指幾個擴展名是INI的文件,在Windows系統(tǒng)中,有很多INI文件,其中最主要的是“System.ini”、“System32.ini”和“Win.ini”。這些文件主要用來存放用戶對操作系統(tǒng)或特定程序運行所做的參數(shù)設置。
Windows用戶可以通過修改INI文件,對應用程序和系統(tǒng)進行重新配置。許多惡意代碼就是利用了這幾個文件來加載的,如:在WIN.INI中加入load=A.exe或run=B.exe,該方式因其隱蔽性好、植入方便,曾被廣泛的應用。如今該種方式已被用戶熟知,發(fā)現(xiàn)后查殺難度較低。因此,使用者越來越少。
有些惡意代碼是通過添加注冊表啟動項,實現(xiàn)自動啟動的目的。如在注冊表“HKEY_CURRENT_USERSoftwareMicrosoft WindowsCurrentVersionRun” 和“HKEY_LOCAL_MACHINE SOFTWAREMicrosoftWindowsCurrentVersionRun”這2個分支下添加啟動項,在右邊窗口新建鍵值,輸入要運行的程序名稱及路徑,從而實現(xiàn)惡意代碼的自動啟動。
文件綁定就是把惡意代碼與可執(zhí)行程序合并成一個可執(zhí)行程序,在新程序執(zhí)行時,原來的程序和惡意代碼都被執(zhí)行。如果惡意代碼利用這種方式,把自己和qq.exe綁定在一起取代原來的qq.exe文件,那么每次用戶運行qq.exe的時候都會啟動惡意代碼。
應用程序通過動態(tài)加載的VXD虛擬設備驅動,而取得Windows系統(tǒng)的操控權。可以用來管理例如硬件設備或者已安裝軟件等系統(tǒng)資源的32位可執(zhí)行程序,使得幾個應用程序可以同時使用這些資源。有些惡意代碼將自己偽裝成硬件的驅動程序,從而達到啟動的目的。
這種方式目前已經(jīng)少有病毒見到,但作為一種行之有效的啟動方式,仍被以些病毒采用。這種啟動方式的病毒,我們可以通過“開始→控制面板→管理工具→服務”來查看。一般通過這種方式啟動的病毒服務狀態(tài)都是“自動”和“已啟動”狀態(tài)的,我們可以通過修改其狀態(tài)為“已停止”和“禁用”來停止病毒服務,并且,在該服務的“屬性”中有此病毒程序的路徑及名稱,我們可以在此路徑下刪除病毒文件即可殺滅病毒。
自啟動技術是惡意代碼入侵的重要手段,了解和掌握惡意代碼的啟動與入侵技術,對于保護信息系統(tǒng)安全是十分重要的??梢灶A見,隨著計算機技術的普及,系統(tǒng)被惡意代碼入侵的風險和機會會急劇增多。要完全避免安全事件的發(fā)生并不太現(xiàn)實,網(wǎng)絡安全人員所能做到的只能是盡力發(fā)現(xiàn)和察覺入侵及入侵企圖,以便采取有效的措施來堵塞漏洞和修復系統(tǒng)。因此,及時的了解和掌握惡意代碼的自啟動技術,是發(fā)現(xiàn)和預防信息安全事故發(fā)生的前提和保證。
[1]侯麗波.惡意代碼攻擊原理剖析[J].網(wǎng)絡安全技術與應用,2008(12).
[2]郝向東,王開云.典型惡意代碼及其檢測技術研究[J].計算機工程與設計,2007(19).
[3]張勐,楊大全,辛義忠.計算機病毒變形技術研究[J].沈陽工業(yè)大學學報,2004(3).