2021-4-9 | 互聯網
0引言
P2P(Peer-To-Peer)技術是目前計算機網絡技術研究領域的熱點,作為一種新興技術,P2P技術能充分利用網絡帶寬以及對等利用和共享資源,它使用戶在網絡上的溝通變得更加容易和便捷,從而成長為當前互聯網發展的熱點。但是由于其自身結構的一些特點,使得P2P系統存在許多安全問題。
1P2P應用帶來的安全問題
P2P技術已經廣泛應用于互聯網之中,它最大的優勢在于提供一種便捷的信息獲取方式。但隨著P2P用戶的急劇增加,P2P應用已經成為當今互聯網上的“殺手級應用”。
1.1知識產權問題
P2P網絡是一個高度自由、自治、共享的網絡,其網絡結構中沒有一個統一管理的機制來對網絡中的各個用戶進行認證和授權管理。P2P網絡中分布的資源是分散的、無約束的,這在P2P共享的網絡機制下自然就加速了盜版資源的分發,侵犯了版權,也增加了知識產權保護的難度。
1.2帶寬消耗問題
P2P應用對現有互聯網網絡最大的威脅還是對帶寬的巨大消耗。據統計,目前P2P應用已經占據了互聯網帶寬流量的60%到90%,占據了企業用戶帶寬的40%,這導致了運營商每年都在不斷進行網絡擴容,但由此所帶來的收益卻很少。
1.3內容鑒別問題
由于P2P網絡所有資源都分散存儲在各個節點中,無法對內容進行統一的管理、鑒別和過濾。用戶搜索到的資源往往并不是自己所需的,哪怕是找到了,用戶也需要耗費大量時間進行篩選,才能找到自己真正需要的內容來。如果網上都充斥著這些垃圾信息,則會降低網絡的可用性。
1.4信任問題
由于P2P系統網絡中沒有嚴格的認證中心,節點之間無法鑒別認證,缺少必要的信任關系,惡意節點可以通過網絡進行攻擊,因此網絡的信任機制也成為重要的安全問題,對目前網絡構成巨大威脅。
1.5可管理問題
由于P2P網絡沒有中心服務器來管理節點,因此其節點的加入和退出都比較頻繁,節點的出現具有不確定性,網絡中往往會出現惡意節點,它就會對網絡進行攻擊。同時,個人與公司的隱私與信息可能會隨著開放的共享目錄而被泄露。
1.6黑客和病毒入侵問題
在P2P網絡中,資源都來源于各個分散的節點中,要對這些共享資源的安全性進行驗證是非常困難的,這就不可避免地給黑客和病毒入侵帶來機會,給網絡安全帶來隱患。而每個節點防御黑客和病毒攻擊的能力又不相同,只要有一個節點遭到攻擊,就會很快擴散到鄰近的節點,造成整個系統的擁塞甚至癱瘓。
2P2P網絡存在的安全威脅
從系統本身來看,由于P2P網絡結構的固有缺陷,使得P2P網絡也面臨很多的安全威脅。主要表現在ID分配、路由和應用等三個層面上,如圖1所示[1]。
2.1ID分配
在P2P網絡中,每個節點都被分配一個ID,它決定了資源的存儲位置和控制權等。ID分配方面的攻擊主要有Sybil和IDmapping兩種。
2.2路由
路由攻擊指的是“攻擊者作為DHT查找系統的參與者,冒充正常節點把通過它的查找請求轉發至不正確或不存在的節點,同時向其他節點發送不正確的路由信息來破壞其他節點的路由表,從而導致系統節點進行不正確的路由操作。”[1]常見的路由攻擊有身份竊取攻擊、月蝕(Eclipse)攻擊、路由表毒害攻擊、錯誤的路由轉發和頻繁加入退出(Churn)等。
2.3應用層
P2P網絡應用層遭受攻擊的起因是惡意節點在網絡中作為資源的提供者對網絡進行破壞。存取攻擊、索引攻擊、污染攻擊、不一致攻擊、拒絕服務攻擊DoS、引誘攻擊(Decoy)等即屬于這種類型。
3P2P網絡攻擊之間的關系
P2P網絡的各種攻擊并不是孤立存在的,其關系如圖2中箭頭所示[1]。
4P2P中的安全技術
4.1認證
認證是通過標識系統或用戶的身份而建立信任關系,從而鑒別保證對方的真實身份。認證的方法有多種,其中最重要的一種是基于證書的認證,即公鑰基礎設施(PKI)系統。所謂的證書也叫數字證書、身份證書,指的是一種用數字簽名和具有身份信息公鑰綁定的電子文檔。這種證書的作用就是讓公鑰和個人信息相關聯。在典型的PKI系統中,簽名來自認證中心(CA),CA中心負責為用戶分配公私鑰對,對用戶身份驗證之后將私鑰分配給用戶,當節點A與節點B通信時將消息用自己的私鑰加密,B根據消息發送者聲稱的身份向CA中心驗證,CA將A的證書(身份和公鑰)用CA的私鑰加密發送給B,B用CA的公鑰解密得到A的公鑰和身份,用此公鑰解密發送者的消息,如果能夠解密出來則證實了發送者的身份A。P2P網絡由一系列的對等節點構成,每個節點在加入網絡時需要分配一個節點ID。這個ID代表節點的身份,同時也能反映節點自身的信息(如IP地址、端口號)。P2P網絡通常利用ID分配對節點進行認證。P2P節點認證主要包括三個方面:(1)對加入節點分配一個ID;(2)驗證節點ID的真實性;(3)限制每次加入節點能夠獲得ID的個數(即設置ID數上限,這主要是為防范Sybil攻擊)。
4.2密鑰管理
密鑰管理是信息保密技術中的關鍵環節,同時它也是整個加密系統中最薄弱的環節,密鑰的泄漏將直接導致明文內容的泄漏,因此在整個保密系統中占有重要地位。密鑰管理包括“密鑰生成、密鑰儲存和保護、密鑰更新、密鑰分發、密鑰驗證、密鑰使用和密鑰銷毀等”。[3]所有的管理過程都是為了正確地解決密鑰從生成到使用全過程的安全性和實用性,另外還涉及密鑰的行政管理制度和管理人員的素質。在P2P網絡中根據不同的場景采用不同的密鑰管理方案。在一般的兩點間通信時可以采用點對點密鑰管理辦法,其中使用較多的是非對稱密鑰管理方法;在P2P多播通信中采用組密鑰管理辦法。