企業在廣域網(WAN)中部署 IPv6,接著也會部署IPv6防火牆。本文介紹了一些由IPv6引起的安全問題,以及IT專業人員在部署和運營IPv6防火牆時應該考慮的問題。
引入IPv6防火牆
大多數企業網絡的第一道防線都是防火牆,它用於防御公共互聯網攻擊,限制本地用戶的公共互聯網訪問。在企業網絡部署IPv6之後,也會部署IPv6防火牆,這樣目前IPv4實施的安全策略也會在IPv6中實施。
雖然IPv6和IPv4各自提供的服務(最佳的數據報文服務)非常相似,但是這兩種協議之間存在一些細微差別,這對防火牆設備和操作會影響很大。本文將介紹它們之間的差別,以及它們如何影響IPv6防火牆設計和操作。然後還會說明這些差別可能如何被惡意利用,以減少和消除IPv6防火牆的安全漏洞。
IPv6頭結構
IPv6的一個主要變化是采用固定長度的協議頭,而不像IPv4那樣采用可變長度協議頭。任何必要的選擇都必須加到後續的擴展頭中,擴展頭位於固定的IPv6頭和封裝的IPv6上層協議之間。它會根據處理選項的不同系統而采用不同的擴展頭。例如,需要在目標主機中處理的選項會包含在一個“目標選項”頭信息中,而由路由器處理的選項則會包含在一個“跳間選項”頭信息中。理論上,這至少能夠讓路由器和主機解析、處理歸它們的選項——而IPv4則不同,處理數據包的所有節點必須解析所有的選項。
這個頭結構決定了IPv6頭信息鏈:多個頭信息會被依次鏈接在一起,首先是IPv6頭,最後是上層協議。每一個擴展頭都包含具體的頭長度和下一個頭鏈接的頭信息類型。因此,任何IPv6流都會采用完整的IPv6頭信息鏈,然後處理它需要的頭信息。下圖是IPv6頭信息鏈的示意圖。
▲圖1:IPv6頭信息鏈示例
分片頭是其中一種特殊類型的擴展頭,它包含了實現IPv6分片所需要的機制。與IPv4頭不同,IPv6不是將所有分片相關信息保存在固定的IPv6頭中,而是將這些信息保存在一個可選的分片頭中。因此,執行分片的主機只需要在IPv6頭信息鏈中插入一個分片頭信息,再添加需要分片的原始數據包。
IPv6防火牆對安全的影響
上述IPv6頭信息鏈結構的靈活性優於IPv4,因為它不限制數據包可以包含的數量。然而,這種靈活性也是有代價的。
任何需要獲取上層信息(如TCP端口號)的系統,都需要處理整個IPv6頭信息鏈。而且,由於當前的協議標准支持任意數量的擴展頭,包括同一種擴展頭的多個實例,因此它會對防火牆等設備造成多種影響: