前言:想要寫出一篇引人入勝的文章?我們特意為您整理了病毒防御系統開發中數據挖掘技術應用范文,希望能給你帶來靈感和參考,敬請閱讀。
摘要:利用數據挖掘技術開發計算機網絡病毒防御系統,實現對網絡病毒在線檢測與控制。將傳統防火墻技術與入侵檢測技術融合,通過系統管理員了解在線網絡病毒入侵情況,采用數據挖掘技術對網絡病毒特征進行搜集并存儲到數據庫中,從而有效控制防御網絡病毒。實踐表明,采用數據挖掘技術設計的計算機網絡病毒防御系統比傳統防火墻病毒防御方法的防御能力提高了80%,對網絡病毒種類掌握更全面,能夠更好地抵御病毒侵害。
關鍵詞:數據挖掘;網絡病毒防御系統;在線監控
0引言
計算機網絡病毒蔓延迅速,嚴重影響網絡安全,危害巨大。目前主流反病毒技術是特征碼技術,該技術最大缺陷在于代碼固定,面對變化多端的病毒需不斷更新版本才可保證上網安全,用戶往往處于被動防御狀態。因此網絡病毒查殺的未來發展趨勢是智能化主動防御系統。國內知名反病毒軟件有金山毒霸、瑞星、360等,使用特征碼掃描技術;針對國外病毒—反病毒領域的病毒主動防御系統,有學者提出使用數據挖掘技術的決策樹算法對未知病毒進行檢測[1]。對國內外病毒主動防御技術的研究現狀進行分析,發現并沒有在檢測新型病毒種類方面取得較大成果。因此本文設計一款基于數據挖掘技術的計算機網絡病毒防御系統,將普通防火墻技術與智能技術結合,設計一種網絡病毒監控技術,以便對計算機網絡病毒進行在線病毒檢測。該技術具有較強先進性與實用性。
1網絡病毒分類
1.1計算機病毒狹義定義
計算機病毒狹義上指破壞計算機功能、影響計算機正常使用的惡意代碼[2]。它是一種人為編寫的程序,通過文件的形式載入到計算機中,并將其它程序作為轉播載體,用戶運行程序后病毒才會開啟。
1.2木馬
木馬是一種遠程控制軟件,具有一定的隱蔽性,通常偽裝成正常軟件,混淆用戶視線,使用戶在沒有防備的情況下下載安裝。一旦電腦感染木馬,計算機端口將被打開,黑客可從打開的端口將惡意程序載入計算機中,竊取電腦中重要信息,還可獲得電腦使用權限,隨意操控計算機,往往給受害者帶來較大經濟損失。
1.3蠕蟲
蠕蟲具有一定的傳播性,可以在不同系統之間傳播,通過自我復制對計算機信息造成損害。蠕蟲不需要通過載體即可傳播,已成為廣義病毒中較為流行的一種傳播方式,且病毒程序執行方式越加復雜,出現了多程序防護運行的蠕蟲,普通用戶消除蠕蟲的難度增加,最好方法是提前進行病毒防御。
1.4間諜軟件
間諜軟件不需要經過授權即可安裝在用戶計算機中,搜集、竊取用戶個人信息,如用戶網上購物時輸入的銀行卡信息,而且還常駐在用戶電腦中,消耗內存,造成計算機藍屏,影響用戶使用。
1.5瀏覽器劫持
隨著C/S模式的流行,出現一些軟件對瀏覽器進行惡意攻擊,并篡改瀏覽器主頁,或在瀏覽器主頁引入惡意鏈接,破壞瀏覽器信任站點,通過窗口漏洞完成瀏覽器劫持,因為瀏覽器沒有遵守同源策略,導致劫持請求的事件頻繁發生,瀏覽器劫持已成為網上用戶瀏覽網頁時最大病毒威脅之一。
2數據挖掘技術
2.1數據挖掘原理
計算機網絡的高速發展,使數據庫信息不斷累加,在信息爆炸的時代,有效信息越來越少,如何實現有效的文本挖掘成為首要問題。數據挖掘指從大量信息中挖掘出潛在信息,這是一個知識發現的過程,其系統結構[3-4]。從原有數據中選出一組數據作為目標集,對數據進行選取、預處理與變換,搜集與事例相關的數據信息,提取挖掘出的數據后,通過預處理消除噪聲、重復記錄,通過數據變換的方式降低維度,找出挖掘目標相關特點,并清除不相關特征。數據挖掘階段主要是從目標數據中搜索其它模式,比如線性方程、聚類、決策樹等。數據挖掘階段需要對最終目標進行確認,對算法進行選擇,明確挖掘任務是數據挖掘的第一步,雖然挖掘結果位置不可預知,但挖掘目標是已知的。根據挖掘目標選擇對應的數據挖掘算法,針對同一個目標任務可以利用不同的算法加以實現。在選擇算法時,可以根據不同的數據特點,選擇與之關聯的算法進行數據挖掘,或者按照用戶需求設計。利用數據挖掘中的數據預處理[5]、聚類分析[6-7]進行分類時需要按照特定規則并根據對象指定的特征進行類別劃分,對象與類型之間的關系被稱之為映射關系。隨著技術的不斷發展,分類技術不斷吸收信息,使技術變得更加完整。
2.2數據挖掘常見分類算法
2.2.1支撐向量機
分類過程是一個學習的過程,對于一個樣本點,可以使用線性分類器將其分離,支撐向量機的宗旨是超平面最近的向量與超平面之間的距離為最大化樣本,超平面即為線性分類器。支撐向量機的核心是函數,向量機將低維空間的數據放到高維空間中,通過核函數解決問題。支撐向量機的關鍵是對不可線性進行劃分,將低維空間中的線性樣本投入到高維空間中,然后在數據空間中構造出最佳超平面,最后求得最優解。
2.2.2K-近鄰分類器
K-近鄰分類器指按照未知樣本與已知樣本之間的相似程度,對最相似的K個樣本中出現的未知樣本進行分類。K-NN分類器的改進方式具有一定的距離性,沒有建立規則,雖然省去了復雜數據的分類過程,但是速度較慢。對于給定的待測樣本,需要計算樣本相似度,并找出待測樣本與相似K的最近鄰,然后根據樣本類決定待測樣本類型。
2.2.3決策樹
決策樹指利用數據結構中的樹,將數據構成一個決策模型的方法,決策樹的節點代表可能出現的結果,而樹枝代表結果可能帶來的風險。決策樹作為一個決策系統,在數據挖掘中最為常見。
3數據挖掘技術在計算機網絡病毒防御系統中的具體應用
3.1計算機網絡病毒與數據挖掘之間的關系
計算機網絡病毒具有一定的傳播性,一旦進入用戶電腦,將迅速傳播,對電腦數據造成非常嚴重的破壞,甚至會侵入計算機操作系統。操作系統是計算機的核心,一旦進入將對計算機中的數據進行有針對性的破壞,造成系統癱瘓。當發現有病毒入侵時,數據挖掘技術可以快速獲取病毒重要信息,對網絡運行中的數據進行分析,并對數據進行有效處理,以更好地抵御計算機病毒給操作系統帶來的傷害,從而保證計算機正常運行。
3.2數據挖掘技術組成
數據挖掘技術綜合多種技術,在實際應用中可以根據不同的功能進行分析,不同的功能構成不同的數據模塊。比如數據源模塊,主要數據來源是抓包程序,通過抓包程序截取數據包,將最原始的數據存到數據源模塊中,并且根據某一個特定的數據庫結構,將截取到的數據包轉移到下一個模塊中進行處理;預處理模塊是數據挖掘中非常重要的一個模塊,預處理模塊功能較多,可以對數據進行交換和處理,并將數據轉換成可被計算機識別的信息,從而縮短數據挖掘時間;規則庫模塊中有一個規則集,該規則集通過特定的聚類分析,能夠檢測出各種網絡病毒的特點,是數據挖掘技術中的一個關鍵模塊[8]。
3.3數據挖掘技術在計算機病毒防御系統中的具體應用
(1)關聯規則。在關聯規則分析中,為了能找到與數據庫相關的關系網絡,需要根據兩個或者兩個以上變量進行規律查找,如果變量之間存在一定關系,說明具有關聯性,通過關聯網絡可以挖掘數據庫中的關系,從而快速獲得病毒傳播路徑[9]。(2)分類規則。分類規則的主要目的是對數據進行歸類,通過特定的學習方法構建模型,以完成數據分類。(3)聚類規則。聚類規則的主要作用是對不同的數據進行進行分組,將相同數據歸類在一個組中,然后通過聚類識別出不同類型的特征,排除類型不同的數據,從而得到不同數據的屬性關系[10-11]。(4)異類規則。異類規則主要是尋找數據中存在的偏差點,或者根據數據的不同規律和數據特征,得到各自孤立點,從而挖掘出更多有用的數據,為系統后續工作提供更多數據參考。(5)序列分析規則。序列分析規則是指使用隨機處理的方式,對計算機中存在的某種病毒進行規律查找,并建立相應的序列模型,通過數據挖掘的方式,找到經常出現的數據信息,并分析數據信息之間的關聯性,從而判斷病毒序列。簡單來說,序列分析規則實際上是一種統計方式。
4數據挖掘下的計算機網絡病毒防御系統
4.1檢測模塊設計
計算機網絡病毒防御系統基于數據挖掘技術對海量數據進行有效篩選,通過構建的模型尋找病毒入侵特點,再將挖掘出的數據存入到數據庫中。該系統以數據為中心,對大量數據進行記錄、分析與處理,通過數據挖掘技術對系統日志審計信息進行記錄,并發現入侵行為,通過數據挖掘技術解決病毒入侵問題。數據挖掘技術作為一種常用技術,涉及的知識領域非常廣泛。因為數據挖掘耗時較長,因此將重點放在入侵檢測模型上,利用數據挖掘系統對網絡病毒的特征進行提取。采用數據挖掘技術構建入侵檢測模型。
4.2控制防御模塊設計
不同的防火墻防御功能不同,大多數網絡設備集成有防火墻系統,混合式防火墻居多,目的均是防御惡意數據入侵,為計算機數據提供保護。本系統設計的計算機網絡病毒防御系統采用的是Linux[12],而Iptables是Linux自帶的防火墻功能,下面將從兩個方面介紹Iptables在網絡病毒防御系統中的應用。
4.2.1非法字符控制
網絡病毒最常見形式為混亂的字符串,在sql的輸入指令中如果含有“or1=1”,需要利用Iptables[13]控制非法字符的功能,將數據包攔截,防止數據庫被損壞。Iptables主要通過string模塊實現非法字符控制,該模塊與Iptables字符串匹配,對網絡中的數據報文進行匹配,如果通過瀏覽器的方式在sql注入,語句來源則是url[14]。因此Iptables的string需要對數據進行匹配,才能夠對非法字符進行控制。使用Iptables對字符串進行匹配還可攔截域名,對域名進行限制,阻止域名訪問,通過禁止訪問的方式減少惡意木馬入侵次數,保證內網計算機安全。
4.2.2非法IP地址控制
采用Iptables對非法IP地址進行控制[15],對惡意IP數據進行攔截,保證內網網絡安全,如果經常出現已經檢測出的惡意IP,需要采用過濾功能丟棄IP的數據報文,同時截斷惡意IP地址與現有網絡的連接,阻止惡意IP地址向計算機發送惡意數據包,破壞網絡安全。另外還可限制目的地址,禁止網絡用戶訪問,限制其發送數據。因此,采用Iptables控制非法IP地址的功能可提高用戶訪問控制安全級別,降低病毒感染風險。
4.3后續處理模塊設計
檢測模塊與控制防御模塊設計完成后,需要對入侵到內網的病毒進行檢測,檢測完成后進行防御處理,但僅有以上設計模塊還不足以完成網絡病毒防御系統,需要對網絡病毒入侵進行后續處理,將網絡入侵反饋給用戶,并采取相應行動。網絡病毒入侵反饋具有監控的作用,可記錄監控數據,便于管理人員處理。該模塊除了對日志進行監督記錄外,還具有通知功能,網絡病毒防御系統不僅應具有防御控制功能,還需有網絡病毒入侵監控功能。一旦發現有病毒入侵立即通知管理員,向管理員主機發送郵件,通知網絡病毒入侵,以報告的形式通知管理員,將病毒類型、等級、時間反饋給管理員,以便管理人員針對病毒類型采取相應處理措施。數據反饋完畢后對病毒類型進行研究,分析病毒原理與表現特征,使用OllyDebug工具對網絡病毒進行分析。分析完成之后要及時更新病毒規則庫,通過后續處理模塊搜集新的病毒特征,將新型病毒增添至病毒庫中,時刻更新病毒類型,提高管理人員的病毒防御警戒性與控制性。
4.4后臺處理模塊設計
后臺處理數據實際上是對數據包進行處理,通過接收、發送兩種方式對數據進行重組,再對數據包進行協議解析,最后對數據進行處理。網絡病毒防御系統后臺數據處理實際上是對數據報文進行檢測,對病毒進行檢測時,需先提取數據包,然后進行重組,最后進行解析及保存,將病毒入侵的結果記錄到數據庫中。數據處理流程。
4.5數據存儲模塊設計
數據存儲方式有多種。系統后臺程序處理實際上是對二進制數據包文進行重組,然后才能得到相關數據。數據存儲主要分為數據包存儲與報文信息存儲兩部分。數據文件存儲主要是從數據鏈路層中提取數據,大端和小端通過兩種不同的字節,對數據流進行傳送與存儲。數據庫存儲后臺數據記錄,并利用前臺界面顯示數據庫存儲的數據。數據庫作為交互媒介,能為系統提供精準的數據。
4.6前臺界面模塊設計
網絡防御系統界面是用戶進行操作的重要載體,通過界面的形式展現功能。界面設計作為用戶交互的重要媒介,實現的功能包括網絡病毒檢測、網絡病毒檢測、實時監控及后續處理等。通常采用UI設計界面,UI設計可展現系統功能,其采用B/S架構,用戶可通過網頁瀏覽工作界面。網頁設計需利用多種技術,如Photoshop、Dreamweaver等,靜態網頁一般使用HTML語言、DIV、CSS設計網頁樣式。網頁服務器腳本采用PHP動態語言進行設計,PHP作為一種開源腳本語言,可以將其嵌入到HTML文檔中,執行效率高。網頁病毒檢測主要通過數據挖掘技術實現,采用數據挖掘的關聯規則,保證病毒特征的完整性,從而使病毒庫處于最新狀態。
5結語
本文對網絡病毒進行在線檢測與控制,通過數據挖掘算法對網絡病毒進行分析,圍繞網絡病毒入侵展開討論,設計的網絡病毒防御系統可防止病毒對系統進一步入侵,將可能性傷害降到最低,且系統在線檢測與控制功能基本實現,但是仍然存在一些不足,比如網絡病毒特征提取不全面。各種網絡病毒層出不窮,涉及到的網絡特征也較為復雜,除現有基于數據挖掘的方法外,還需使用更多網絡病毒特征提取方法保障網絡安全。
參考文獻:
[1]劉春娟.數據挖掘技術在計算機網絡病毒防御中的應用分析[J].電子測試,2014(5):83-85.
[2]鄭剛.數據挖掘技術在計算機網絡病毒防御中的應用探討[J].信息與電腦:理論版,2016(3):25.
作者:孫麗娜 單位:河南大學民生學院教務部