防火牆對於一個網格的作用就不用多說了,網絡的第一道防線就是防火牆,它用於防御公共互聯網攻擊,限制本地用戶的公共互聯網訪問,隨著IPv6的出現,對防火牆有了新的要求,雖然IPv6和IPv4各自提供的服務非常相似,但是這兩種協議之間存在一些細微差別,這對防火牆設備和操作會影響很大。
一、IPv6的一個主要變化是采用固定長度的協議頭,而不像IPv4那樣采用可變長度協議頭。任何必要的選擇都必須加到後續的擴展頭中,擴展頭位於固定的IPv6頭和封裝的IPv6上層協議之間。它會根據處理選項的不同系統而采用不同的擴展頭。例如,需要在目標主機中處理的選項會包含在一個“目標選項”頭信息中,而由路由器處理的選項則會包含在一個“跳間選項”頭信息中。理論上,這至少能夠讓路由器和主機解析、處理歸它們的選項——而IPv4則不同,處理數據包的所有節點必須解析所有的選項。
二、這個頭結構決定了IPv6頭信息鏈:多個頭信息會被依次鏈接在一起,首先是IPv6頭,最後是上層協議。每一個擴展頭都包含具體的頭長度和下一個頭鏈接的頭信息類型。
因此,任何IPv6流都會采用完整的IPv6頭信息鏈,然後處理它需要的頭信息,分片頭是其中一種特殊類型的擴展頭,它包含了實現IPv6分片所需要的機制。
與IPv4頭不同,IPv6不是將所有分片相關信息保存在固定的IPv6頭中,而是將這些信息保存在一個可選的分片頭中。因此,執行分片的主機只需要在IPv6頭信息鏈中插入一個分片頭信息,再添加需要分片的原始數據包。
三、任何需要獲取上層信息(如TCP端口號)的系統,都需要處理整個IPv6頭信息鏈。而且,由於當前的協議標准支持任意數量的擴展頭,包括同一種擴展頭的多個實例,因此它會對防火牆等設備造成多種影響,防火牆需要解析多個擴展頭,才能夠執行深度數據包檢測(DPI),它可能會降低WAN性能,引發拒絕服務(DoS)攻擊,或者防火牆被繞過。
四、由於當前的協議規范支持任意數量的擴展頭,包括同一種擴展頭類型的多個實例,因此防火牆必須能夠細致地處理包括異常的多IPv6擴展頭信息的數據包。而這可能被一些攻擊者利用,他們可能故意在數據包中加入大量的擴展頭,使防火牆在處理上述數據包時浪費過多資源。
最終,這可能會引起防火牆性能下降,或者造成防火牆本身出現DoS問題。此外,有一些性能不佳的防火牆在應用過濾策略時,可能無法處理整個IPv6頭信息鏈,從而可能讓一些攻擊者利用擴展頭威脅相應的防火牆。
五、IPv6分片也可能被惡意利用,方法與IPv4的類似。例如,為了破壞防火牆的過濾策略,攻擊者可能會發送一些重疊的分片,從而影響目標主機的分片重組過程。
在IPv6中,這個問題更為嚴重,因為多個IPv6擴展頭和分片的組合可能產生一些錯誤分片,盡管它們的數據包大小是“正常的”,但是它們丟失了一些實施過濾策略通常需要的基本信息,如TCP端口號。即,數據包的第一個分片可能包含很多IPv6選項,以致上層協議頭可能屬於另一個分片,而不是第一個分片。
六、IPv6轉換/共存技術還給IPv6防火牆帶來另一個問題。大多數轉換技術都使用某種通道機制,它在一種網絡協議(通常是IPv4)中封裝另一種網絡層協議(通常是IPv6)。這會對防火牆的安全性造成很多影響,防火牆可能無法識別特定的轉換技術,也可能無法應用一些原生IPv6流量支持的過濾策略。例如,在使用原生IPv4或原生IPv6時,一個網站可以阻擋通向TCP端口25的數據包,但是在部署了 Teredo 等轉換機制後,它可能無法阻擋這些數據包。