SLAAC是無狀態地址自動配置。為應對傳統SLAAC地址的保密性問題,IETF提出了RFC 4941“IPv6自動配置無狀態地址的保密性擴展”;它通常稱為“臨時地址”。RFC 4941標準化的方案主要通過以下方式實現:
1、臨時地址是使用隨機IID不斷重復生成的IPv6地址。
2、這些臨時地址包含傳統的SLAAC地址。也就是說,實現RFC 4941的節點不僅包含臨時地址,也包含傳統(固定的)SLAAC地址。
3、臨時地址將用于外出連接,而傳統的SLAAC地址用于進入連接。也就是說,只有當需要地址不會時,才能使用傳統的SLAAC地址。
但是,臨時地址也有許多缺點。它們也無法避免地址掃描攻擊,它們并不能完全對抗主機跟蹤,而且通常會增加網絡操作復雜性。而且,在使用傳統SLAAS地址的時候會同時使用臨時地址(而不是替換),所以臨時地址幾乎無法抵抗地址掃描攻擊。
對于主機跟蹤,臨時地址不能徹底解決這些問題。例如,假設有一個攻擊者知道受攻擊節點的傳統SLAAC地址所使用IID,那么這個攻擊者也就知道了所攻擊節點可能連接的目標網絡。在這種情況下,攻擊者就可以利用網絡前綴和所攻擊節點使用的不變IID,主動讓受攻擊的節點連接各個目標網絡。
這里的關鍵概念是,只要IID在網絡保持不變,攻擊者就可能利用它發起主機跟蹤攻擊。啟用臨時地址只能對抗被動主機跟蹤攻擊(例如,通過連接攻擊者所操控服務器的受攻擊節點發起的攻擊)。然而,主動主機跟蹤攻擊(攻擊者向目標發送偵測數據包)仍然無法避免。
對抗主動主機跟蹤
SI6 Networks的IPv6工具套件scan6工具是一個專門用于發起主動IPv6主機跟蹤的IPv6地址掃描工具。它提供了許多選項,可以指定攻擊節點可能連接的網絡和所使用的固定接口ID。
例如,假設有一個攻擊者知道一個傳統SLAAC地址為a00:27ff:fe89:7878的節點IID,那么這個節點可能只能連接網絡2001:db8:1::/64和2001:db8:2::/64。這時,攻擊者就可以用scan6執行以下命令:
這樣scan6就可以每隔60秒鐘攻擊IPv6地址2001:db8:1::a00:27ff:fe89:7878和 2001:db8:2::a00:27ff:fe89:7878。正如之前所提到的,即使目標節點使用臨時地址,這種攻擊也可能生效,因為臨時地址也包含傳統SLAAC地址。
scan6工具還可以從各個文件獲取目標IID和目標網絡前綴。例如,這個工具可以執行以下命令:
在這種情況中,scan6工具將從文件PREFIXES.TXT獲取目標IPv6前綴,從文件IIDS.TXT獲取目標節點的IID。
可能的解決方法
顯然,臨時地址可以對抗關聯一個網絡內部節點活動,因為它們會讓遠程攻擊者很難將許多通信實例關聯到同一個節點。
完全消除主機跟蹤攻擊則要求禁止節點使用在多個網絡中保持不變的IID。有一篇IETF提案“一種通過IPv6無狀態自動配置(SLAAC)生成固定加強保密地址的方法”專門處理這個問題。它包括:
1、產生的IPv6地址將在網絡中保持不變(例如,在連接同一個網絡時,主機總能獲得相同的地址),所以網絡操作不會受到負面影響。
2、當主機從一個網絡切換到另一個網絡時,它的IPv6地址會發生變化(從而對抗主機跟蹤攻擊)。
以上就是如果遇到傳統SLAAC地址的主動主機跟蹤可以利用scan6工具來解決,希望能幫到大家,謝謝閱讀。
新聞熱點
疑難解答