在2012年6月6日全球IPv6啟動日,很多公司都為其產品和服務啟用了IPv6協議,這也讓我們有機會驗證IPv6安全性的誤解。人們普遍認為,因為IPv6增加的地址空間,從攻擊者的角度來看,IPv6主機掃描攻擊將需要花很多時間和精力,使得攻擊幾乎不可能。然而,事實並不是這樣。通過分析IPv6地址在互聯網上進行配置的方式,本文將介紹IPv6攻擊可行性的真實情況分析。
IPv6不可戰勝的神話
IPv6比IPv4有更大的地址空間。標准IPv6子網(在理論上)可以容納大約1.844 * 1019 個主機,因此其主機密度要比IPv4子網低得多(即,子網中主機數與可用IP地址數量的比率較低)。
因為IPv6地址空間數量如此巨大,很多人認為IPv6將使潛在的攻擊者很難對IPv6網絡執行主機掃描攻擊。有些人估計對單個IPv6子網的主機掃描攻擊可能需要5千萬年!
在IPv4互聯網中的主機掃描攻擊
在深入分析IPv6主機掃描攻擊的細節之前,讓我們來看看在IPv4互聯網中,主機掃描攻擊是如何執行的。 IPv4的地址空間數量有限,整個IPv4地址空間(在理論上)由 232 個地址組成,IPv4子網通常有256個地址。因此,在典型的IPv4子網中,主機密度相對較高。IPv4主機掃描攻擊通常是按照以下方式執行的:
選定一個目標地址范圍
發送一個測試數據包到該范圍內的每一個地址
每個響應的地址都被認為是“可用的”
由於典型的IPv4子網的搜索空間比較小(通常是256個地址),並且這種子網的主機密度很高,對於大多數攻擊者而言,在目標網絡中按順序嘗試每個可能的地址已經足以發動攻擊。
在IPv6互聯網中的主機掃描攻擊
有兩個因素使IPv6的主機掃描攻擊比IPv4的攻擊更加困難:
典型的IPv6子網比IPv4子網更大(IPv6為264 個地址,而IPv4為256個地址) .
IPv6子網的主機密度比IPv4子網主機密度低得多
由於這兩個因素,在目標IPv6子網中,按順序試探每一個地址是不可行的,無論是從數據包/帶寬的角度來看,還是從執行攻擊需要的時間來看。
擊破IPv6安全神話
然而,IPv6主機掃描攻擊並非如此繁瑣和費時。我們需要認識到,IPv6主機地址並不是隨機分布在這相應的256個子網地址空間中,這意味著攻擊者在試圖確定“可行”節點時,實際上並不需要掃過整個子網地址空間。了解IPv6地址生成或者配置的方式,就明白了這種地址分配是非隨機的。
IPv6IPv6全球單播地址選擇。
IPv6全球單播地址,顧名思義,是用於互聯網通訊的IPv6地址(而不是,比方說,僅用於本地子網內通訊的本地地址)。它類似於IPv4:全球路由前綴通常由上游供應商分配,本地網絡管理員將組織網絡分成多個邏輯子網,而接口ID(IID)用來確定該子網中的特定網絡接口。