新四季網

一種p2p網絡中基於塊的病毒檢測方法

2023-06-05 07:32:36 2

專利名稱:一種p2p網絡中基於塊的病毒檢測方法
技術領域:
本發明網絡病毒檢測技術領域,特別是涉及P2P網絡環境下的病毒檢測方法。
背景技術:
P2P網絡相對傳統網絡中的C/S結構而言是一種全新的變革,發展到今日,隨著使用人數的快速增長,P2P在網絡電視,分布式計算,網絡資料庫,資源共享重要等領域的逐漸普及應用。P2P中的網絡安全問題有著與普通網絡安全中的一些共性,同時也有自己的一些特點,只有有針對性地進行P2P網絡結構網絡安全研究,才能夠有效的抵禦針對P2P網絡結構的攻擊。然而,知名殺毒軟體Norton、Kaspersky等能夠成功檢測到網絡中傳播的病毒與蠕蟲,卻不能檢測到P2P中傳播的病毒,原因在於P2P軟體有分塊傳輸機制以及數據包結構,病毒特徵碼就有機會被分配到不同的數據塊中通過P2P軟體傳播而不被檢測到。與傳統網絡中的安全問題相比,P2P網絡給研究人員帶來了新的挑戰。P2P網絡中的病毒和蠕蟲攻擊較傳統網絡中有了更大的靈活性,出現了專門針對P2P系統的網絡病毒,能夠利用系統漏洞達到迅速破壞、瓦解、控制系統的目的。例如,P2P中蠕蟲可以不需要全網掃描IP來進行攻擊,因為有大量的peer連結到當前主機,主機在共享網絡資源時也會大量連結其他主機,此時病毒和蠕蟲就可以通過這些連結進行感染,提高了效率,範圍更廣,破壞性更大。可以說若不能有效檢測P2P網絡中的病毒,那麼P2P的使用者越多,用戶被病毒感染的可能也就越大。P2P網絡病毒早在2002年就有出現,同時也出現了針對P2P網絡病毒檢測與防禦的研究。P2P網絡設計有方便的共享和快速的選路機制,這為蠕蟲病毒以及分布式拒絕服務攻擊(DDoQ提供了更好的入侵P2P網絡機會。由於P2P網絡中的邏輯相鄰的節點地理位置可能相隔很遠,而參與P2P網絡的節點數量又非常大,因此通過P2P系統傳播的病毒波及範圍大,覆蓋面廣,從而造成的損失會很大。另外,現有的P2P應用都有很強的防火牆穿越能力,將有可能被惡意代碼利用,進一步加強他們的傳播能力。在P2P網絡中每個節點防禦病毒的能力是不同的,只要有一個節點感染病毒,就可以通過內部共享和通信機制將病毒擴散到附近的鄰居節點,在短時間內可以造成網絡擁塞甚至癱瘓,共享信息丟失,機密信息失竊,甚至通過網絡病毒可以完全控制整個網絡。P2P的獨特網絡結構和路由算法也為拒絕服務攻擊(DDoQ等提供了溫床。在實際應用中主要有以下幾種行之有效的病毒檢測方法1、基於特徵碼的病毒檢測方法該技術的核心是模式匹配。方法是監視網絡中數據,查找具有病毒特徵的字符串並加入特徵庫,但需要在很短的時間內完成對大量數據的處理及對比。可以使用存儲特徵碼的哈希值,增長哈希值長度來減少計算量,例如Rabinfingerprint就是一個非常有效地增長哈希碼的方法。此外關於樣本的抽取也是在字符串哈希的基礎上抽取,既可以加快速度又能保證樣本屬於同一個子串。基於特徵碼的病毒檢測技術具有高效、準確的特點,但缺點是只要蠕蟲的個體稍有變異,這種方法往往就失去效力,需要定期的更新特徵庫。2、基於流量的病毒檢測方法該方法充分利用沒有病毒攻擊與存在病毒攻擊時流量的差異性來實現蠕蟲的檢測將網絡中的幾個特徵組成向量,病毒不同的攻擊方式時所針對的不同量的變化來診斷是否受到了病毒攻擊。基於流量的檢測方法的難點在於各種參數的閾值的確定,這影響著檢測結果的準確性,閾值設置得太低容易造成太多的誤報,而如果設置得太高,則又容易造成漏報而起不到應有的檢測作用。基於流量的病毒檢測技術與其他的病毒檢測技術相比較,它不僅對已知的病毒有效,而且能及時地檢測未知的病毒,改變了病毒防範的被動局3、基於蜜罐的病毒檢測方法早期的蜜罐HoneyPot主要用於防範網絡黑客攻擊。例如=ReVirt系統,能夠檢測網絡攻擊或網絡異常行為。其主要實現是在邊界網關或易受到網絡蠕蟲攻擊的地方置放多個的虛擬蜜罐,蜜罐之間可以相互共享捕獲的數據信息。採用NIDS(網絡入侵檢測系統)的規則生成器產生網絡病毒的匹配規則,當網絡蠕蟲根據一定的掃描策略掃描存在漏洞主機的地址空間時,蜜罐可以捕獲網絡蠕蟲掃描攻擊的數據,然後採用特徵匹配來判斷是否有網絡蠕蟲攻擊。該方法具有以下優點①蜜罐可以轉移網絡蠕蟲的攻擊目標,降低網絡蠕蟲的攻擊效果;②蜜罐為網絡安全人員研究網絡蠕蟲的工作機制、追蹤網絡蠕蟲攻擊源和預測網絡蠕蟲的攻擊目標等提供了大量有效的數據;③由於網絡蠕蟲缺乏判斷目標系統用途的能力,所以蜜罐具有良好的隱蔽性。但是此方法還存在以下一些不足①蜜罐能否誘騙網絡蠕蟲依賴於大量的因素,包括蜜罐命名、蜜罐置放在網絡中的位置和蜜罐本身的可靠性等;②蜜罐可以發現大量掃描行為(隨機性掃描、順序掃描等)的網絡蠕蟲,但針對路由掃描和DNS掃描的網絡蠕蟲,效果欠佳;③蜜罐很少能在網絡蠕蟲傳播的初期發揮作用。以上各種病毒檢測技術各有各自的優點和適用場合,部分檢測方法經過實踐檢驗已經在在EarlyBird,Autograph, snort等網絡檢測系統中得到了應用,並獲得了很好的效果。每種方法總有其適用的場合,而在另外一種場景中卻未必可用。後面兩種病毒檢測方法在檢測P2P網絡中的病毒時就得不到很好的應用,而且很容易出現誤檢的情況,造成困擾。其中,基於流量的檢測方法利用了統計學的規律,檢測網絡中出現的異常網絡流量,以此來判斷有可能有病毒或蠕蟲,在P2P網絡中流量激增或驟減的情況經常發生,若當作病毒爆發將嚴重影響P2P軟體的工作。蜜罐技術本身不提供真實的服務,因此這種技術只對盲目掃描的蠕蟲能產生較好的檢測效果,而P2P中的病毒能夠通過利用P2P軟體分布式散列表或者朋友列表來達到有目的的掃描,避免了盲目掃描,蜜罐技術在這種情況下就會失效。無論在什麼情況下通過檢測數據流中是否包含病毒特徵碼的方法都能夠檢測到病毒的傳播或感染,因此通過檢測P2P軟體中的數據流中是否包含病毒特徵碼能夠有效遏制病毒在P2P網絡中進行傳播。

發明內容
基於上述技術問題,本發明提出了一種P2P網絡中基於塊的病毒檢測方法,在P2P網絡中基於病毒特徵碼的分塊重組檢測,通過分析病毒逃過檢測的原因以及P2P網絡中病毒的傳播規律,解決了 P2P網絡中的病毒漏檢問題。
本發明提出一種P2P網絡中基於塊的病毒檢測方法,該方法包括以下步驟步驟1 在本地通過網卡進行網絡p2p數據抓包,依據協議Winpcap (windowspacket capture)進行初步過濾;步驟2 對步驟1中從網卡抓取得到的P2P網絡數據包信息進行預處理,該步驟具體包括以下步驟去除數據幀頭部,對IP網絡層數據包碎片重組,IP碎片重組過程具體包括讀入數據包分片,根據分片標誌位檢查是否允許分片,若允許分片,檢查分片偏移是否為0,若為0讀入下一個數據分片,否則根據數據報分片的源地址查找原數據報的鍊表,將分片插入鍊表中,循環判斷所有的數據報鍊表,若已到齊,組裝為完整數據報送由TCP流重組模塊;解析過程TCP傳輸層協議包解析IP碎片重組後的數據包,具體包括取得TCP起始地址,對TCP數據進行校驗,如果不通過則捨棄,通過則對TCP流進行重組,重組後的得到應用層需要的數據包;重組過程應用層p2p數據包解析TCP層重組後的數據包,具體包括將接受的數據包根據源地址和目的地址組織成鍊表,當數據流到來時檢查源地址和目的地址,若存在插入鍊表中緩存,否則新建一個鍊表表示新的連結,將組裝後的數據送入應用層頭部剔除,得到應用層數據;分離過程根據應用層協議欄位進一步分離P2P數據流,減少不必要的數據處理,具體包括以基於應用層特徵字符匹配的方法檢驗數據中的應用層協議欄位,進一步過濾P2P流量,分離的對象應用層數據和結果分離後的P2P數據,不必要的數據處理是應用層數據中的非P2P數據,它是通過分離P2P數據流來實現的;通過上述預處理,使數據包信息能夠被用於病毒檢測;步驟3 檢測經過處理後的數據信息是否含有病毒,對經過步驟( 處理後得到的應用層p2p數據包信息,根據病毒庫中的病毒特徵碼檢測到該數據信息中是否含有病毒。所述步驟1的依據協議Winpcap (windows packet capture)進行初步過濾的步驟中,具體是根據Winpcapp提供的p2p數據信息的源地址、目的地址、源埠、目的埠選項進行初步的過濾。所述步驟3的檢測經過處理後的數據信息是否含有病毒的步驟中,若當前的數據信息中只能檢測到部分信息與病毒庫中的某個特徵碼的一部分吻合,先將這部分數據信息進行緩存,與之後得到的數據信息進行組合,重新進入檢測部分進行檢測是否存在病毒。與現有技術相比,本發明P2P網絡中的病毒檢測是保證P2P網絡安全的一個重要方面,本文中提出的P2P網絡中的分塊重組病毒檢測方法是專門針對P2P網絡的一些特點和不同於傳統網絡的機制提出的,經過實驗,在不同的分塊情況下,分塊重組病毒檢測方法在檢測P2P網絡中傳輸的病毒時較傳統檢測方法檢測率平均提高了 72%,可見此方法是一種高效的檢測P2P網絡病毒的方法。此外,現已將本文提出的P2P分塊重組病毒檢測功能加入到開放原始碼的eMule客戶端中,正在測試過程中。本專利基於以上情況,提出了一種P2P網絡基於病毒特徵碼的分塊重組檢測方法,避免了現有檢測軟體因為忽視P2P特點和P2P傳輸文件機制而造成的漏檢情況。如圖1所示,為現有技術中P2P網絡中文件的分塊機制示意圖。


圖1為P2P網絡中的文件的分塊機制示意圖;圖2為系統整體流程圖; 圖3為病毒檢測模塊處理流程;圖4為實驗網絡拓撲結構圖。
具體實施例方式如圖1所示,本發明的P2P網絡中基於塊的病毒檢測包括三個主要模塊網卡抓包模塊、數據包預處理模塊和P2P病毒檢測模塊。網卡抓包模塊的主要功能就是通過本地網卡進行網絡數據抓包,所要抓取的網絡數據包為具備p2p網絡數據包特徵碼的P2P網絡數據包,並且依據協議Winpcap提供的源地址、目的地址、源埠、目的埠等選項進行初步的過濾。數據包預處理模塊的主要功能是對從網卡抓取得到的未加處理的P2P網絡數據包信息進行預處理,從而使數據包信息能夠被用於病毒檢測。這是一個比較繁瑣但也比較重要的環節,能否得到應用層數據是進行下一步檢測的關鍵。這裡的預處理包括1)去除數據幀頭部,對IP網絡層數據包碎片重組,IP碎片重組過程具體包括讀入數據包分片,根據分片標誌位檢查是否允許分片,若允許分片,檢查分片偏移是否為0,若為0讀入下一個數據分片,否則根據數據報分片的源地址查找原數據報的鍊表,將分片插入鍊表中,循環判斷所有的數據報鍊表,若已到齊,組裝為完整數據報送由TCP流重組模塊;2)TCP傳輸層協議包解析IP碎片重組後的數據包,該解析過程具體包括取得TCP起始地址,對TCP數據進行校驗,如果不通過則捨棄,通過則對TCP流進行重組,重組後的得到應用層需要的數據包;3)應用層p2p數據包解析TCP層重組後的數據包,該重組過程具體包括將接受的數據包根據源地址和目的地址組織成鍊表,當數據流到來時檢查源地址和目的地址,若存在插入鍊表中緩存,否則新建一個鍊表表示新的連結,將組裝後的數據送入應用層頭部剔除,得到應用層數據;4)並根據應用層協議欄位進一步分離P2P數據流,減少不必要的數據處理,該分離過程具體包括以基於應用層特徵字符匹配的方法檢驗數據中的應用層協議欄位,進一步過濾P2P流量,分離的對象應用層數據和結果分離後的P2P數據,不必要的數據處理是應用層數據中的非P2P數據,它是通過分離P2P數據流來實現的(即上一步3)的分離操作)。P2P病毒檢測模塊的主要功能是檢測經過處理後的數據信息是否含有病毒。經過上述處理得到了應用層數據信息,現在就能夠根據病毒庫中的病毒特徵碼檢測到該數據流中是否含有病毒,但是這卻並沒有結束。雖然在前面處理中也對應用層P2P數據包的解析,但是由於P2P軟體的文件分塊機制和分包機制,若當前的數據信息中只能檢測到部分信息與病毒庫中的某個特徵碼的一部分吻合,系統就認為它有可能就是被分割的病毒特徵碼的一部分,這樣要先將這部分數據進行緩存,與後來的數據信息進行組合,重新進入檢測部分進行檢測,病毒檢測部分的處理流程如圖3所示。如圖3所示,為本發明的P2P網絡中病毒檢測方法整體流程圖,與傳統網絡中檢測方法有一些相似之處,該方法具有專門針對P2P軟體的文件分塊機制進行處理以及P2P應用層數據包的處理。具體包括以下步驟
對網絡中的數據包通過處理後得到應用層數據,根據P2P網絡軟體應用層頭部信息識別網絡中P2P分塊的第一個數據包(eDonkeyID欄位為0XE3或者0XC5),根據對eMule協議的分析同一個大的數據塊(9. 28MB)會從同一個Peer中請求下載,在獲得第一個數據包後得到請求塊的大小以及此數據包的源IP位址和源埠號,對下面到來的同樣的IP和埠號的數據包進行檢測,若有部分與特徵庫中的其中一個特徵碼匹配,就將此數據塊緩存,等待與後到達的數據分塊進行組合進行第二次部分匹配檢測,直到確定此數據塊中不含有病毒特徵碼或者含有某一個特徵碼為止。
權利要求
1.一種P2P網絡中基於塊的病毒檢測方法,其特徵在於,該方法包括以下步驟步驟(1)在本地通過網卡進行網絡p2p數據抓包,依據協議Winpcap進行初步過濾;步驟O)對步驟(1)中從網卡抓取得到的P2P網絡數據包信息進行預處理,該步驟具體包括以下步驟去除數據幀頭部,對IP網絡層數據包碎片重組,IP碎片重組過程具體包括讀入數據包分片,根據分片標誌位檢查是否允許分片,若允許分片,檢查分片偏移是否為0,若為0讀入下一個數據分片,否則根據數據報分片的源地址查找原數據報的鍊表,將分片插入鍊表中,循環判斷所有的數據報鍊表,若已到齊,組裝為完整數據報送由TCP流重組模塊;解析過程TCP傳輸層協議包解析IP碎片重組後的數據包,具體包括取得TCP起始地址,對TCP數據進行校驗,如果不通過則捨棄,通過則對TCP流進行重組,重組後的得到應用層需要的數據包;重組過程應用層p2p數據包解析TCP層重組後的數據包,具體包括將接受的數據包根據源地址和目的地址組織成鍊表,當數據流到來時檢查源地址和目的地址,若存在插入鍊表中緩存,否則新建一個鍊表表示新的連結,將組裝後的數據送入應用層頭部剔除,得到應用層數據;分離過程根據應用層協議欄位進一步分離P2P數據流,減少不必要的數據處理,具體包括以基於應用層特徵字符匹配的方法檢驗數據中的應用層協議欄位,進一步過濾P2P流量,分離的對象應用層數據和結果分離後的P2P數據,不必要的數據處理是應用層數據中的非P2P數據,它是通過分離P2P數據流來實現的;通過上述預處理,使數據包信息能夠被用於病毒檢測;步驟(3)檢測經過處理後的數據信息是否含有病毒,對經過步驟( 處理後得到的應用層p2p數據包信息,根據病毒庫中的病毒特徵碼檢測到該數據信息中是否含有病毒。
2.如權利要求1所述的P2P網絡中基於塊的病毒檢測方法,其特徵在於,所述步驟(1)的依據協議Winpcap (windows packet capture)進行初步過濾的步驟中,具體是根據Winpcapp提供的p2p數據信息的源地址、目的地址、源埠、目的埠選項進行初步的過濾ο
3.如權利要求1所述的P2P網絡中基於塊的病毒檢測方法,其特徵在於,所述步驟(3)的檢測經過處理後的數據信息是否含有病毒的步驟中,若當前的數據信息中只能檢測到部分信息與病毒庫中的某個特徵碼的一部分吻合,先將這部分數據信息進行緩存,與之後得到的數據信息進行組合,重新進入檢測部分進行檢測是否存在病毒。
全文摘要
本發明涉及網絡病毒檢測技術領域,公開了一種P2P網絡中基於塊的病毒檢測方法,該方法包括以下步驟步驟(1),在本地通過網卡進行網絡p2p數據抓包,依據協議Winpcap(windows packet capture)進行初步過濾;步驟(2)對步驟(1)中從網卡抓取得到的P2P網絡數據包信息進行預處理,使數據包信息能夠被用於病毒檢測;步驟3檢測經過處理後的數據信息是否含有病毒,對經過步驟(2)處理後得到的應用層p2p數據包信息,根據病毒庫中的病毒特徵碼檢測到該數據信息中是否含有病毒。與現有技術相比,本發明避免了現有檢測軟體因為忽視P2P特點和P2P傳輸文件機制而造成的漏檢情況。
文檔編號H04L29/06GK102387151SQ20111034036
公開日2012年3月21日 申請日期2011年11月1日 優先權日2011年11月1日
發明者張冰怡, 齊彥君 申請人:天津大學

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀