摘 要:網(wǎng)絡(luò)黑客的攻擊令人防不勝防,計(jì)算機(jī)惡意代碼更是計(jì)算機(jī)系統(tǒng)安全中很難根治的主要威脅之一,嚴(yán)重干擾了人們平時(shí)的學(xué)習(xí)和工作。目前,病毒已成為困擾計(jì)算機(jī)系統(tǒng)安全和網(wǎng)絡(luò)發(fā)展的重要問題。只有了解病毒,才能更有效地防范病毒。為了更好地防范計(jì)算機(jī)惡意代碼對(duì)計(jì)算機(jī)系統(tǒng)的入侵,必須對(duì)其進(jìn)行全面深入的研究。本文根據(jù)當(dāng)前計(jì)算機(jī)惡意代碼的情況,詳細(xì)地介紹了常見的惡意代碼的特征與技術(shù)。
關(guān)鍵詞:惡意代碼 特征 技術(shù)
一、計(jì)算機(jī)惡意代碼的概述
第一批計(jì)算機(jī)惡意代碼出現(xiàn)在20世紀(jì)80年代。早期的惡意代碼大部分是實(shí)驗(yàn)性的、相對(duì)簡(jiǎn)單的、可自我復(fù)制的文件,在執(zhí)行時(shí)顯示簡(jiǎn)單的惡作劇,是以游戲的形式出現(xiàn)的。隨著惡意代碼技術(shù)研究的深入開展,惡意代碼的數(shù)量、種類、被攻擊的平臺(tái)數(shù)越來越多,惡意代碼的復(fù)雜性和多樣性顯著提高,破壞性也變得越來越大。
什么是惡意代碼?惡意代碼是運(yùn)行在計(jì)算機(jī)上,使計(jì)算機(jī)系統(tǒng)按照提供者的意愿執(zhí)行任務(wù)的一組指令。它能在兩個(gè)的計(jì)算機(jī)系統(tǒng)和不同地域的網(wǎng)絡(luò)之間傳播,可以在用戶無法察覺的情況下對(duì)計(jì)算機(jī)系統(tǒng)和網(wǎng)絡(luò)進(jìn)行攻擊。
計(jì)算機(jī)惡意代碼的生存周期可以分為:程序設(shè)計(jì)→傳播→潛伏→觸發(fā)、運(yùn)行→實(shí)施攻擊。惡意代碼的一個(gè)主要特征就是其具有針對(duì)性,這種針對(duì)性充分說明了惡意代碼利用系統(tǒng)軟件的脆弱性達(dá)到其破壞和入侵的目的。
惡意代碼主要包括:病毒、蠕蟲、木馬、網(wǎng)頁惡意代碼等惡意可執(zhí)行代碼,雖然病毒和蠕蟲之間有的時(shí)候很難分辨,但每一種惡意代碼都有各自不同的定義和特征,可以幫助加以區(qū)分。
二、計(jì)算機(jī)惡意代碼的特征與技術(shù)
(一)病毒
病毒是可以自我隱藏、自動(dòng)復(fù)制及一定破壞作用的惡意代碼,同時(shí),它們還可以把自己的副本分發(fā)到其他文件、程序或電腦中去。病毒一般鑲嵌在主機(jī)的程序中,當(dāng)被感染文件執(zhí)行操作的時(shí)候,病毒就會(huì)自我繁殖(例如打開一個(gè)文件,運(yùn)行一個(gè)程序,點(diǎn)擊郵件的附件等)。病毒可以分為以下幾類:感染文件病毒、感染引導(dǎo)區(qū)病毒和惡作劇電子郵件。感染文件型病毒將自己寫入宿主文件中,利用宿主文件進(jìn)行傳播。感染文件的方法有覆蓋、附加、共存等。感染型病毒主要包括:覆蓋型病毒、穴居型病毒、附加型病、伴侶型病毒。引導(dǎo)型病毒可以駐留在任何磁盤上,不一定是啟動(dòng)盤。所有用DOS格式化的磁盤都有一個(gè)空間包含錯(cuò)誤信息和其他的程序,無論這個(gè)磁盤是否含有啟動(dòng)所必需的系統(tǒng)文件,引導(dǎo)型病毒都可以隱藏在里面。如果用一張含有引導(dǎo)型病毒的軟盤啟動(dòng)計(jì)算機(jī),那么引導(dǎo)型病毒會(huì)感染硬盤引導(dǎo)區(qū),每次啟動(dòng)計(jì)算機(jī)時(shí)病毒都會(huì)自動(dòng)加入內(nèi)存。當(dāng)再一次把干凈的軟盤放入計(jì)算機(jī)時(shí),干凈的軟盤就會(huì)被感染,病毒隨之傳播開來。
(二)宏病毒
宏病毒是用宏語言編寫的惡意程序,可以自動(dòng)在Office等辦公系統(tǒng)軟件中運(yùn)行,利用宏語言將文件破壞和刪除,并能夠自我復(fù)制和傳播。宏病毒的感染都是通過宏語言自身的功能實(shí)現(xiàn)的,對(duì)字句的增、刪、改等操作,所有的這些都離不開宏語言的運(yùn)行環(huán)境。宏病毒不同于其他病毒,宏病毒可以在任何計(jì)算機(jī)系統(tǒng)下生存。只要該系統(tǒng)可以運(yùn)行Office文字處理等軟件,那么就可能感染宏病毒。
(三)木馬
木馬是一種在遠(yuǎn)程計(jì)算機(jī)之間建立起連接,使遠(yuǎn)程計(jì)算機(jī)能夠通過網(wǎng)絡(luò)控制本地計(jì)算機(jī)的程序。木馬由服務(wù)程序(server)、客戶程序(client)和配置程序組成,配置程序?qū)τ?jì)算機(jī)進(jìn)行設(shè)置,server端感染被攻擊者的計(jì)算機(jī),client端由攻擊者控制向server端發(fā)送操作要求,server端完成要求。木馬的特征包括:有效性、隱蔽性、頑固性、易植入性。木馬常用的攻擊技術(shù)包括:反彈端口技術(shù)、修改注冊(cè)表、利用目錄的優(yōu)先級(jí)。
(四)蠕蟲
蠕蟲是目前危害最大的一種惡意代碼攻擊。蠕蟲是一種可以從一臺(tái)計(jì)算機(jī)移動(dòng)到另一臺(tái)計(jì)算機(jī),并且可以自我復(fù)制的完全獨(dú)立的程序,它的傳播不需要借助被感染主機(jī)中的其他程序。蠕蟲的自我復(fù)制不像其它病毒,它可以自動(dòng)創(chuàng)建與它的功能完全相同的副本,并在沒人干涉的情況下自動(dòng)運(yùn)行。蠕蟲病毒是計(jì)算機(jī)病毒的一種,它的傳染機(jī)理是利用網(wǎng)絡(luò)進(jìn)行復(fù)制和傳播,傳染途徑是通過網(wǎng)絡(luò)和電子郵件。

蠕蟲的特征包括:自動(dòng)攻擊、容易隱藏、反復(fù)感染、造成網(wǎng)絡(luò)擁塞。蠕蟲采用的自動(dòng)入侵技術(shù),由于程序大小的限制,自動(dòng)入侵程序不可能有太強(qiáng)的智能性,所以自動(dòng)入侵一般都采用某種特定的模式。目前蠕蟲使用的入侵模式只有一種,這種模式是就是前面提到的蠕蟲傳播過程采用的模式:掃描漏洞→攻擊并獲得shell→利用shell。
現(xiàn)在流行的蠕蟲采用的傳播技術(shù)目的一般是盡快地傳播到盡量多的電腦中,多采用這樣的掃描策略:隨機(jī)選取某一段IP地址,然后對(duì)這一地址段上的主機(jī)掃描。一般的掃描程序可能會(huì)不斷重復(fù)上面這一過程。這樣,隨著蠕蟲的傳播,新感染的主機(jī)也開始進(jìn)行這種掃描,這些掃描程序不知道哪些地址已經(jīng)被掃描過,它只是簡(jiǎn)單地隨機(jī)掃描互聯(lián)網(wǎng)。于是蠕蟲傳播得越廣,網(wǎng)絡(luò)上的掃描包就越多。即使掃描程序發(fā)出的探測(cè)包很小,但是積少成多,就會(huì)引起嚴(yán)重的網(wǎng)絡(luò)擁塞。可以對(duì)掃描策略進(jìn)行一些改進(jìn),比如在IP地址段的選擇上,可以主要針對(duì)當(dāng)前主機(jī)所在的網(wǎng)段掃描,對(duì)外網(wǎng)段則隨機(jī)選擇幾個(gè)小的IP地址段進(jìn)行掃描;對(duì)掃描次數(shù)進(jìn)行限制,只進(jìn)行幾次掃描;把掃描分散在不同的時(shí)間段進(jìn)行。
(五)網(wǎng)頁惡意代碼
網(wǎng)頁惡意代碼主要是利用軟件或系統(tǒng)平臺(tái)的安全漏洞,通過執(zhí)行嵌入在網(wǎng)頁HTML超文本標(biāo)記語言內(nèi)的Java Applet、ActiveX等應(yīng)用程序,以強(qiáng)行修改用戶操作系統(tǒng)的注冊(cè)表設(shè)置及系統(tǒng)實(shí)用配置程序、盜取文件、刪除文件、格式化硬盤為目標(biāo)的惡意程序。網(wǎng)頁惡意代碼的最大特點(diǎn)是可以自動(dòng)執(zhí)行,不受用戶的控制,當(dāng)瀏覽網(wǎng)頁的時(shí)候不知不覺就會(huì)中毒。其表現(xiàn)特征有以下幾點(diǎn):
(1)IE默認(rèn)鏈接首頁被修改,IE默認(rèn)主頁被修改。
(2)IE的標(biāo)題欄被修改。
(3)IE右鍵菜單被修改。
(4)計(jì)算機(jī)系統(tǒng)自動(dòng)彈出對(duì)話框。
(5)計(jì)算機(jī)的注冊(cè)表被修改。
使用腳本語言可以使HTML變得具有動(dòng)態(tài)性,允許用戶和站點(diǎn)進(jìn)行交互,對(duì)頁面加載、鼠標(biāo)移動(dòng)和單擊進(jìn)行響應(yīng)。但是腳本語言可以調(diào)用其它的程序,包括木馬程序。VBScript和Jscript都是Windows瀏覽器環(huán)境下通用的腳本語言,腳本語言是黑客通過瀏覽器進(jìn)行攻擊最好的工具。為了實(shí)現(xiàn)多類腳本文件在Windows界面或DOS命令提示符下的直接運(yùn)行,就在系統(tǒng)內(nèi)植入了一個(gè)基于32位Windows平臺(tái)、并獨(dú)立于語言的腳本運(yùn)行環(huán)境,并將其命名為“Windows Scripting Host”。利用WSH充分發(fā)揮VBScript及JScript等腳本的強(qiáng)大威力,極大地提高工作效率。
三、計(jì)算機(jī)惡意代碼的發(fā)展趨勢(shì)
計(jì)算機(jī)技術(shù)的不斷發(fā)展,決定了計(jì)算機(jī)惡意代碼不會(huì)局限在現(xiàn)有的傳播模式上,種類也會(huì)不斷地增加。
1. 混合傳播模式。“混合病毒威脅”和“收斂威脅”成為新的病毒術(shù)語,“紅色代碼”利用的是IIS的漏洞,Nimda是Morris病毒的派生物,都是利用漏洞進(jìn)行攻擊。病毒的模式從引導(dǎo)區(qū)方式發(fā)展為多種類病毒蠕蟲方式,時(shí)間不會(huì)很長(zhǎng)。
2. 服務(wù)器和客戶機(jī)同樣受攻擊。對(duì)于惡意代碼來說服務(wù)器和客戶機(jī)的區(qū)別越來越小,越來越模糊,他們都運(yùn)行著同樣的應(yīng)用程序。像IIS服務(wù)是一個(gè)操作系統(tǒng)得缺省服務(wù),所以它的漏洞每個(gè)計(jì)算機(jī)都有。
3. 跨越平臺(tái)的攻擊。跨平臺(tái)攻擊將不會(huì)停留在宏病毒上面,越來越多的惡意代碼都將對(duì)不兼容的平臺(tái)進(jìn)行攻擊,如Windows上的木馬會(huì)攻擊Apache服務(wù)器,Linux的病毒也會(huì)攻擊Windows。
4. 種類更加模糊。病毒、木馬、蠕蟲的功能和傳播特點(diǎn)會(huì)發(fā)生重疊,使人們?cè)絹碓诫y以區(qū)分它們。
5. 更具迷惑性。新的惡意代碼可能不再一味地轉(zhuǎn)播和轉(zhuǎn)發(fā),它將會(huì)加大迷惑性,注重受害用戶對(duì)惡意代碼的進(jìn)一步操作,使病毒更難以清除,并造成更大的損失。
參考文獻(xiàn):
[1]Roger A.Grimes著. 張志斌,賈旺盛譯.惡意傳播代碼:Windows病毒防護(hù).北京:機(jī)械工業(yè)出版社,2004.6.
[2]Ed Skoudis Lenny Zelter著. 陳貴敏,侯曉慧譯.決戰(zhàn)惡意代碼. 北京:電子工業(yè)出版社,2005.4.
[3]劉尊全.計(jì)算機(jī)病毒防范與信息對(duì)抗技術(shù).北京: 清華大學(xué)出版社,1998.8.