摘要:隨著網絡技術的發展和普及,我們的生活越來越離不開互聯網。然而隨之而來的惡意軟件在網上橫行的趨勢也愈演愈烈,嚴重威脅廣大用戶的隱私和財產安全,對互聯網安全問題的關注也日趨增強。傳統的防病毒軟件都是采用預先定義好的二進制特征碼對目標程序進行判斷,已經不能滿足系統安全的需要。因此,需要從更深層的行為中提取未知病毒的特征,以便提高系統對病毒的檢測能力。
關鍵詞:惡意軟件;網絡安全;行為分析
中圖分類號:TP393文獻標識碼:A文章編號:1009-3044(2010)21-6089-02
1 惡意軟件的定義
\"惡意軟件\"用作一個集合名詞,來指代故意在計算機系統上執行惡意任務的病毒、蠕蟲和特洛伊木馬。網絡用戶在瀏覽一些惡意網站,或者從不安全的站點下載游戲或其它程序時,往往會連合惡意程序一并帶入自己的電腦,而用戶本人對此絲毫不知情。直到有惡意廣告不斷彈出或色情網站自動出現等現象時,用戶才有可能發覺電腦已“中毒”。在惡意軟件未被發現的這段時間,用戶網上的所有敏感資料都有可能被盜走,比如銀行帳戶信息,信用卡密碼等。
1.1 惡意軟件攻擊方式
現如今,惡意軟件已成為一個嚴重的網絡問題。正所謂,哪里有網絡,哪里就有惡意軟件。惡意軟件的出現像揮之不去的陰魂,嚴重阻礙了網絡社會的的正常發展。但是,既然它出現了,我們就應該采取更加積極主動的態度去應對。所謂知己知彼,百戰不殆。以下我們先介紹下惡意軟件的常見攻擊方式。
1.1.1 常見惡意軟件
木馬、后門與間諜軟件是發展速度最迅猛的惡意軟件。這類惡意軟件的最大用途是使攻擊者能夠越過傳統的系統認證機制,在所有者不知情的情況下獲得計算機系統的訪問權限。通常這些惡意軟件很難被檢測到。因為他們在設計之初就掩蓋了其在系統中的現形,并且執行了原程序的功能,用戶或者系統管理員很難察覺。
1.1.2 混合攻擊
混合攻擊使用多種感染或是攻擊方式。通常可以通過電子郵件、windows共享、網路客戶端以及即時通訊和點對點文件共享傳播。人們很多時候把混合攻擊誤認為蠕蟲,因為它具有蠕蟲的一些特征。由于混合攻擊比單一惡意軟件更加復雜,更難制造,因此變得更加難以應對,對用戶而言也就更加危險。
1.1.3 利用新技術技巧
隨著計算機的發展,出現了許多新型惡意軟件。Fast-flux技術就是一個范例。Fast-flux技術是一種域名服務器切換機制,它結合了P2P網絡,分布式命令和控制,基于Web的負載均衡和代理重定向等技術手段來隱藏實施釣魚攻擊的站點.,隱藏網絡釣魚服務網址。 Fast-flux技術幫助網絡釣魚網站保持更長的時間,吸引更多的受害者。例如,研究人員很難識別惡意Storm域名,因為開發者使用了Fast-flux技術來避免探測。
2 進程行為分析惡意軟件
在了解了目前比較流行的各類惡意軟件之后從系統內進程的角度,對進程的活動方式做出分析。進程活動主要體現在兩種行為特征上:系統行為特征與網絡行為特征。
2.1 系統行為分析方法
2.1.1 系統行為定義
在本文中,將系統行為定義為程序執行過程中產生的能夠對系統造成影響的一系列操作序列。它包括直接影響與間接影響。絕大部分程序在運行過程中,有些對系統地影響不大,如讀取自身內存的操作,這是所有的程序都必須進行的;而有些會對系統產生持久性地影響,比如改寫某個文件,或是創建某個具有權限的用戶。還有一類操作,他們本身并不會對直接地對系統造成影響,但可以通過與另外一些操作組合,完成特殊的功能。這些操作能夠間接地對系統造成影響。本文所關注的是程序運行時對系統環境造成一定影響的操作序列,而不是程序本身的二進制代碼。
2.2.2 系統行為分析方法
基于異常的惡意代碼檢測活動利用被監控系統正常行為的信息作為檢測系統中惡意代碼攻擊行為和異常活動的依據。在異常惡意代碼檢測活動中假定所有惡意代碼攻擊行為都是與正常行為不同的,這樣,如果建立系統正常行為的軌跡,那么理論上是可以把所有與正常軌跡不同的系統狀態視為可疑企圖。對于異常數值與特征的選擇是異常惡意代碼檢測的關鍵。本研究希望通過分析程序對系統造成的影響來判斷程序的分類。而根據軟件開發技術發展到今天的水平,極少有程序會繞過操作系統直接操作硬件,大部分的操作要依賴于API系統調用來完成。所以,通過分析程序的API系統調用,能夠了解程序將會對操作系統及軟件環境造成何種影響。
2.2 網絡行為分析
2.2.1 網絡行為定義
將網絡行為定義為程序使用網絡的統計特性。具體的說,網絡行為就是程序在網絡通信方面,采用數據量、數據包、時間3種屬性全面地描述網絡通信的特征。它是一個包含了多個統計值的向量。本研究希望通過統計特征,來確定網絡特征屬性的主要成分,反映不同類型的程序在網絡使用方式上的差異。
2.2.2 網絡行為分析方法
該技術的重要功能是監控通過網關的所有文件傳輸情況。通過對報文的分析,統計出各種應用層協議傳輸的文件信息。所以,系統的抓包后的協議分析中,所有與目標進程相關的網絡包頭都會被記錄,而包的內容則忽略。通過將進程的所有網絡包按照時間順序捕獲,并按通信對象分成若干個網絡流,便能夠得到程序對網絡的使用方式。
在本方法中,首次提出了按照通信對象分組,各組分別分析,最后再歸整為一個特征向量的網絡行為提取方法。首先,所有與目標進程相關的網絡流量包頭信息都被記錄下來,將各個包按照其通信對象的不同,分為不同的組。然后,將這些分類的統計信息進行整合,計算出研究需要的各個統計特征值,并形成一個特征向量。這個特征向量能夠反映進程在網絡使用方面時間、流量、通信方式上的諸多差別。
本文從現有技術的諸多不足入手,以識別惡意軟件特別是未知惡意軟件的研究為目的,從技術層面上研究了基于進程行為的識別技術。本研究從理論上對于從根本上解決惡意軟件的泛濫問題是一個有益的探索。為了能夠進一步的提高惡意軟件的識別效率,在以后的研究中,還需在實踐中做進一步的研究與改進。
參考文獻:
[1] 李衛,邊江,王盈.動態網絡流分類研究[J].電子科技大學學報,2007,36(6).
[2] 王鑫,蔣華.網絡環境下的計算機病毒及其防范技術[J].計算機與數字工程,2008,(2).
[3] 皮興進.計算機網絡系統安全威脅及其防護策略的研究[J].才智, 2009,(17).
[4] 朱輝生.進程及應用程序間通信的實現技術[J].計算機應用與軟件,2004,21(1).
[5] 王燕,王永波.網絡環境下計算機病毒新特點與防范措施[J].福建電腦,2010,(2).