• ?
    聯系我們

    廣東聯迪信息科技有限公司

    服務熱線

    網絡集成:400-899-0899

    軟件支持:400-8877-991

    咨詢熱線

    公司前臺:0756-2119588

    售前咨詢:0756-2133055

    公司地址

    珠海市香洲區興華路212號能源大廈二樓

    行業新聞
    當前位置 > 首頁 > 行業新聞

    技術盛宴丨IPv6系列安全篇——園區網IPv6的接入安全策略

    類別:行業新聞發布人:聯迪發布時間:2019-02-27

    園區網技術發展了這么多年,想必大家對于IPv4場景下的接入安全問題已經爛熟于心。隨著IPv6技術的發展和推廣,未來園區網架構向IPv6演進已經成為不可阻擋的趨勢,而我們對于IPv6架構下的接入安全問題了解多少?比如,終端可以獲取到正確的IPv6地址嗎?拿到地址就可以正確封裝報文信息嗎?報文封裝正確就可以轉發正常嗎?等等。在IPv6環境下接入層還有哪些安全問題?我們又該如何解決?


    上一篇文章(IPv6系列安全篇——SAVI技術解析)為大家介紹了SAVI(Source Address Validation Improvements,源址合法性檢驗) 的技術原理,本文將聚焦IPv6在園區網有線部署的場景,闡述如何應用SAVI技術解決接入安全問題。


    IPv6園區網接入安全問題

    眾所周知,終端正常訪問資源的前提是需要有一個可用的IP地址,那么如何獲取正確的地址是我們要討論的一個問題。


    其次,為了正常訪問網絡資源進行流量轉發,還需要正確解析對端的MAC地址或者網關的MAC地址(跨網段時),這樣才能進行一個報文的完整封裝。在IPv4的場景中是通過ARP協議來解析地址,對應到IPv6場景是通過ND協議中的NS/NA報文交互來解析。


    除此之外,為了給所有終端分配地址資源,地址源可謂是“盡心竭力”,因此它的資源是有限的,也需要額外關注。


    看似平淡無奇的過程中暗藏著很多安全問題,下面我們來詳細分析一下這些問題是如何發生,以及有何威脅。


    地址獲取欺騙

    在IPv6的場景中,地址獲取的方式有多種:

    1、DHCPv6:通過DHCPv6協議實現地址的獲取,整個流程和IPv4下的DHCP協議類似,但協議報文有部分差異,具體可以參考DHCPv6的報文詳解。

    2、SLAAC(Stateless Address Auto Configuration,無狀態地址自動配置):根據網關設備通告RA(Router Advertisement,路由器通告)報文中攜帶的網絡前綴生成網絡ID,根據EUI-64算法生成接口ID,通過兩者結合生成一個IPv6地址。

    3、手動配置:某些業務服務器需要固定IP,一般會手工靜態配置。但由于IPv6地址很長,所以配置起來比較麻煩,普通終端的話一般不推薦。


    地址獲取欺騙就是讓終端無法獲取正確地址的攻擊手段。


    對應不同的地址獲取方式,也有不同的欺騙方式:

    1、DHCPv6方式

    對于地址不沖突的私設IP情況,由于DHCP Snooping表項中沒有對應的綁定表項,所以在源地址檢查的過程也會被認為非法從而過濾掉。

    SAVI的源地址檢查會校驗來自untrust口的IPv6報文,檢查報文源IPv6地址是否和DHCPv6分配的IPv6地址一致。若不一致,則丟棄報文,防止了非法用戶私設IP欺騙。

    2、SLAAC方式

    如果私設的IP沒有造成沖突就比較棘手了,因為通過RA生成的無狀態地址和用戶私設的地址都會發出DAD-NS報文,而ND Snooping表項的生成也是基于在一定時間內收到DAD-NS報文來觸發的。因此無狀態下并不能對私設IP做出判斷,會認為是新接入的合法終端。

    如果私設IP導致地址沖突的話,在發送DAD報文檢測的時候會收到合法用戶的應答報文,因此私設IP并不能訪問網絡資源。

    3、混合方式

    混合場景下,由于開啟了ND Snooping,所以情況與SLAAC方式一致,無法對私設IP做出判斷。


    地址解析欺騙

    上文也曾提到,IPv6的地址解析是通過NS/NA報文的交互來完成。在這個過程中也會出現類似IPv4中ARP欺騙的問題,導致終端流量轉發異常。


    攻擊者通過發送非法NS/NA報文對合法終端發送的NS/NA報文進行錯誤應答,無論是DHCPv6還是SLAAC的場景都會使終端解析到錯誤的目標MAC地址。


    這樣會導致終端報文封裝錯誤,流量轉發異常,甚至可能被攻擊者截獲報文泄露發送的機密信息,安全性無法保障。


    泛洪攻擊

    前面我們提到的兩種安全問題都是針對終端,而地址分配源(DHCPv6 Server或者通告RA的網關)也是非法終端的攻擊對象。


    泛洪攻擊是通過模擬大量的終端向地址源發送請求的攻擊方式。

    1、DHCPv6方式:攻擊者可以模擬大量用戶發送DHCPv6請求報文,占用服務器大量的地址資源,導致合法終端沒有地址資源可以分配。

    2、SLAAC方式:攻擊者可以模擬大量用戶發送的RS報文,被網關應答RA后生成地址。然后發送DAD報文檢測地址是否有沖突,無沖突的話會生成ND表項。攻擊者用這樣的方式,占用網關設備大量的ND表項,這樣就會使合法終端無法生成ND表項,進而導致流量轉發異常。


    備注:SLAAC場景,網關僅僅通告網絡前綴,所以攻擊者并不會消耗地址資源,但是攻擊者會生成大量的IPv6地址,當發送DAD檢測發現地址可用后會在設備上生成很多的ND表項,從而實現對表項資源的非法占用。當然,銳捷網絡交換機的ND表項還是比較充裕的,但在園區大規模組網下還是建議規避這種事情的發生。


    總結看來兩種泛洪攻擊都會導致資源(地址資源或者表項資源)被攻擊者占用,使得終端無法獲取地址,也就無法正常訪問網絡。


    小結

    看到這里可能會有很多讀者已經眉頭緊皺了,IPv4場景里會發生的問題在IPv6里面還會再次出現,而且攻擊方式更加多樣,該如何解決呢?


    下面將為大家介紹以SAVI技術為基礎的安全策略部署是如何迎刃而解的。


    以SAVI為基礎的安全策略部署建議

    SAVI技術的工作機制是通過監聽控制類協議報文,為接入設備建立基于IPv6源地址、源MAC地址和接入設備端口的綁定關系。這個綁定關系通常是以DHCPv6 Snooping、ND Snooping或者兩者的結合作為依據。設備根據綁定表對通過指定端口的IP報文進行校驗,目前支持端口下基于源IPv6地址過濾以及基于源IPv6地址+MAC地址過濾。通過校驗后才可以轉發,這樣就防止了惡意用戶偽造報文進行攻擊。下面我們來看一下SAVI的安全策略具體是如何部署的。


    以一個簡單的園區網場景舉例。

     

    ▲圖1 園區網邏輯拓撲圖


    如上圖所示,核心交換機到接入交換機采取大二層部署模式,所有終端的網關都設置在兩臺堆疊的核心交換機上(邏輯上是一臺)。核心到出口之間通過靜態路由或動態路由實現互通。


    目前市場上主流的PC終端對IPv6的支持情況參差不齊,特別是對于地址的獲取能力,為了滿足大部分PC都能獲取到IPv6地址,建議分別采用DHCPv6和SLAAC兩種方式部署。

    1、DHCPv6分配實現:在核心交換機上開啟DHCPv6 Server的功能,并且作為終端的網關設備。

    2、SLAAC分配實現:在核心交換機上配置發送RA消息來通告網絡前綴,讓不支持DHCPv6的終端通過SLAAC進行地址獲取,并且以核心交換機作為網關設備。


    備注:如果在一個網段下同時部署DHCPv6和SLAAC,大部分終端會根據RA報文中的M比特位來選擇一種方式進行地址獲取,但實測win7的終端會同時生成兩種地址,目前看來是終端的行為,網絡設備廠家也暫無對策。另外,據了解安卓系統的終端目前是不支持DHCPv6的,所以也需要靠SLAAC的方式獲取地址。


    以上是基本功能的配置,下面我們看一下安全策略的部署:

    1、入交換機(DHCPv6)
    1. 全局開啟SAVI源地址檢查功能:開啟源地址/源地址+MAC的校驗功能;

    2. 上聯接口開啟DHCPv6 Snooping trust:放行信任的地址源報文,丟棄不可信的地址源報文;

    3. 全局開啟DHCPv6 Snooping:基于DHCPv6協議交互嗅探生成綁定表項;

    4. 全局開啟ND Snooping:基于ND表項學習的結果生成綁定表項,同時也是開啟ND-Check的前提;

    5. 下聯接口設置ND-Check:開啟基于ND Snooping表項的校驗機制,對端口接收的報文基于ND Snooping表項進行比對,合法放行,非法丟棄;

    2、接入交換機(SLAAC)

    1. 全局開啟SAVI源地址檢查功能:進行源地址/源地址+MAC的校驗機制;

    2. 上聯接口開啟ND Snooping trust:放行信任的地址源報文,丟棄不可信的地址源報文;

    3. 下聯接口設置ND-Check :開啟基于ND Snooping表項的校驗機制,對端口接收的報文基于ND Snooping表項進行比對,合法放行,非法丟棄;

    4. 限制端口下的IP數量:設置每個端口下可以獲取IP地址的數量;

    5. 端口?;ぐ蠖ń涌諳碌腗AC數量:設置每個端口下可以綁定的MAC數量,對于有線場景,如果終端沒有遷移的需求一般建議設置1個MAC;

    3、核心交換機(作為網關)

    1. 核心交換機需要承載DHCPv6終端以及SLAAC終端的網關工作,所以屬于混合場景;

    2. 需要同時開啟上述接入交換機的安全功能,比如DHCPv6 Snooping、ND Snooping以及SAVI功能等;

    那么這樣的安全部署具體是如何工作的呢?


    地址獲取欺騙的解決之道

    攻擊者仿冒網關設備惡意發送的RA報文可以認為是非法報文,私自設置DHCPv6服務器的行為稱作私設DHCPv6 Server。


    對于非法RA以及私設DHCPv6 Server的解決措施,其核心在于直接丟棄非法設備發送過來的報文,從根源上解決問題。

     

    ▲圖2 地址獲取防護


    DHCPv6的場景:

    針對私設服務器發送報文,由于在接入交換機上聯端口開啟了DHCPv6 Snooping trust,那么默認下聯端口為非信任口untrust,所以會直接丟棄DHCPv6 ADVERTISE及REPLY報文,保證了終端可以獲得正確的地址。


    SLAAC的場景:

    由于在接入交換機上聯端口開啟了ND Snooping trust,那么默認下聯端口為非信任口untrust,從非信任口發送過來的RA報文被認為是非法RA報文


    非法RA報文到達接入交換機后會被直接丟棄,防止了非法攻擊源偽裝網關發送RA,保證終端可以生成正確的地址。

    ▲圖3 防止私設IP


    私設IP的場景:

    解決該問題的核心在于校驗源地址的合法性,對上送到交換機的報文做一致性檢查,如果和安全表項中的IP和MAC對應關系一致則合法放行,否則認為非法丟棄。但有的場景是不適用的,下面我們具體來分析一下。


    1、DHCPv6方式

    對于地址不沖突的私設IP情況,由于DHCP Snooping表項中沒有對應的綁定表項,所以在源地址檢查的過程也會被認為非法從而過濾掉。

    SAVI的源地址檢查會校驗來自untrust口的IPv6報文,檢查報文源IPv6地址是否和DHCPv6分配的IPv6地址一致。若不一致,則丟棄報文,防止了非法用戶私設IP欺騙。

    2、SLAAC方式

    如果私設的IP沒有造成沖突就比較棘手了,因為通過RA生成的無狀態地址和用戶私設的地址都會發出DAD-NS報文,而ND Snooping表項的生成也是基于在一定時間內收到DAD-NS報文來觸發的。因此無狀態下并不能對私設IP做出判斷,會認為是新接入的合法終端。

    如果私設IP導致地址沖突的話,在發送DAD報文檢測的時候會收到合法用戶的應答報文,因此私設IP并不能訪問網絡資源。

    3、混合方式

    混合場景下,由于開啟了ND Snooping,所以情況與SLAAC方式一致,無法對私設IP做出判斷。


    那么對于SLAAC場景下的私設IP終端該如何解決呢?既然SAVI技術無法完全識別管控,可以依賴于身份認證的方式來解決。比如通過部署Radius v6的認證服務器來對用戶的身份直接做準入管理,非法用戶不能通過身份認證也無法訪問網絡資源。


    地址解析欺騙的解決之道 


    對于非法NS/NA報文攻擊的應對措施,關鍵點在于對上送過來的報文做合法性校驗。首先需要有對應的安全綁定表項,然后要有合法性檢查機制。


     

    ▲圖4 地址解析防護


    1、DHCPv6場景

    需要開啟ND Snooping,把ND相關的報文上送到CPU。合法性檢測需要依賴ND Check功能,ND Check的合法表項可以由DHCPv6 Snooping或者ND Snooping提供,即SAVI-MIX整合的表項作為ND Check的表項來源。DHCPv6場景中有DHCPv6 Snooping提供表項整合。

    2、SLAAC場景:

    非法NS/NA報文流經untrust端口時會被ND Snooping檢驗合法性,通過檢查其(源IP地址/Target IP地址,VID,MAC地址,輸入接口)四元素的匹配關系判定,非法報文直接丟棄。

    3、混合場景:

    混合場景下,由于都開啟了ND Snooping和ND-Check,所以交換機會根據ND Snooping的表項作為依據去Check報文的合法性,以此確保地址解析正確。


    泛洪攻擊的解決之道

    泛洪攻擊的危害在于攻擊者通過模擬大量的終端發送請求報文對地址或者表項資源的消耗,這種類型的請求報文可以認為是非法請求報文。


    解決該問題的核心是控制終端申請資源的數量,可以采取設定閾值的方式。

    ▲圖5 防止泛洪攻擊


    1、DHCPv6場景

    通過在交換機上部署SAVI功能可以限制每個MAC地址請求的IPv6地址數量,默認為10個。

    如果非法者模擬多個MAC地址進行地址申請,可以通過端口安全的機制限定端口下的MAC地址數量進行解決。

    2、SLAAC場景:

    DHCPv6處理方式類似,通過在交換機上部署SAVI的功能可以限定端口的IPv6地址數,并且通過端口安全設定端口下的MAC地址數量。超過限制值后認為非法,丟棄報文并且不生成合法源地址綁定表項。

    3、混合場景:

    混合場景下,交換機根據端口下的限制策略進行數量限制,并無沖突。


    這樣部署后,無論何種場景,非法終端進行泛洪攻擊都會被我們設置的MAC或者地址數量所限制。但假設非法者泛洪占用了這些預設的數量,也會導致合法用戶無法獲取到地址,無法訪問網絡,這種問題就暫無辦法解決了。


    小結

    以上就是在園區有線場景中,基于SAVI技術為基礎的IPv6安全策略部署建議。


    對于園區無線場景,需要AC(無線控制器)和AP(無線接入點)設備支持相應的IPv6安全功能。

    本地轉發模式中,安全策略部署在AP上,非法報文直接在AP上進行處理。如果AP只是二層橋接不做認證,那么無線用戶的安全機制可以在交換機上做對應設置。


    集中轉發模式中,安全策略部署在AC上,非法報文上收到AC上進行處理。

    如果無線設備并不支持IPv6的安全功能,就需要借助于交換機的安全表項來做無線的接入安全。為了實現漫游后的可用性,需要把無線網關和安全策略部署在核心交換機上,接入交換機二層透傳報文,非法報文在核心交換機上處理。


    總結

    本文以IPv6園區網有線場景為例,介紹了如何應用SAVI技術解決一些接入安全問題。


    銳捷網絡的園區網交換機RG-N18000系列、RG-S5750-H系列均已支持上述所有的IPv6安全策略。與此同時我們還在不斷地精進和優化,希望未來可以幫助更多的客戶搭建健壯安全的IPv6網絡,敬請期待。


    ?
    客服1 客服2 188金宝博比分直播
    {ganrao}