摘 要:目前身份認(rèn)證技術(shù)在局域網(wǎng)中使用比較多的是用戶與系統(tǒng)間的認(rèn)證。Portal接入認(rèn)證技術(shù)是局域網(wǎng)中常見的接入認(rèn)證技術(shù),使用Portal三層認(rèn)證中的直接認(rèn)證方式和可跨三層認(rèn)證方式,用戶從DHCP服務(wù)器獲取IP地址,然后在用戶的網(wǎng)關(guān)或局域網(wǎng)的出口對用戶進(jìn)Portal方式的認(rèn)證。同時采用CISCO的DAI功能(動態(tài)ARP檢查)來阻斷ARP攻擊。
關(guān)鍵詞:身份認(rèn)證;DAI;ARP
隨著信息化的快速發(fā)展,組織和個人的信息更多地通過網(wǎng)絡(luò)進(jìn)行存儲、傳輸、處理。與此同時網(wǎng)絡(luò)的安全問題不容小覷。而在網(wǎng)絡(luò)安全中,身份認(rèn)證技術(shù)有著重要地位,可靠的身份認(rèn)證技術(shù)可以確保信息只被正確的用戶所訪問。認(rèn)證技術(shù)即是用特定方法來證明這一聲明是正確的。
身份認(rèn)證可以分為用戶與系統(tǒng)間的認(rèn)證和系統(tǒng)與系統(tǒng)間的認(rèn)證,目前在局域網(wǎng)中使用比較多的是用戶與系統(tǒng)間的認(rèn)證,它只需單向進(jìn)行,只由系統(tǒng)對用戶進(jìn)行身份驗證。通常身份認(rèn)證的基本方式可以基于以下一個或幾個因素的組合:第一,用戶所知道的或掌握的知識,如口令。第二,用戶所擁有的某個特定信息,如智能卡中存儲的個性化參數(shù),訪問系統(tǒng)資源時必須要有智能卡。第三,用戶所具有的的生物及動作特征,如指紋、聲音、視網(wǎng)膜掃描等。認(rèn)證考慮的因素越多,認(rèn)證的可靠性就越高。
在局域網(wǎng)中,結(jié)合認(rèn)證技術(shù)可以實現(xiàn)對接入用戶的認(rèn)證授權(quán),從而實現(xiàn)對局域網(wǎng)接入用戶的訪問控制。Portal接入認(rèn)證技術(shù)是局域網(wǎng)中常見的接入認(rèn)證技術(shù),也稱為web認(rèn)證技術(shù),在認(rèn)證前用戶首先通過DHCP獲取IP地址,這一點與802.1X不同。同時隨著在局域網(wǎng)中不同的網(wǎng)絡(luò)環(huán)境,所采用的Portal認(rèn)證方式也不一樣。按照Portal認(rèn)證所在不同的網(wǎng)絡(luò)層次可分為兩種方式:接入層認(rèn)證方式,即在數(shù)據(jù)鏈路層層接口上啟用Portal認(rèn)證功能,支持在接入設(shè)備連接終端用戶的二層端口上開啟Portal認(rèn)證功能,只允許對應(yīng)的源MAC地址通過認(rèn)證的用戶才能訪問其它網(wǎng)段的資源,當(dāng)前僅支持本地設(shè)備作為本地Portal服務(wù)器向用戶提供Web認(rèn)證服務(wù);三層認(rèn)證方式,支持在接入設(shè)備連接用戶的三層接口上開啟Portal認(rèn)證功能,三層接口Portal認(rèn)證又可以分為三種不同的認(rèn)證方式:直接認(rèn)證方式(即用戶在認(rèn)證前通過靜態(tài)配置或通過DHCP服務(wù)器獲取一個IP地址,只能訪問Portal服務(wù)器,認(rèn)證通過后即可訪問網(wǎng)絡(luò)資源。)、二次地址分配認(rèn)證方式(用戶在認(rèn)證前通過DHCP服務(wù)器獲取一個私有IP地址,只能訪問Portal認(rèn)證服務(wù)器。認(rèn)證通過后,用戶才能申請得到一個公網(wǎng)IP地址,則可以訪問網(wǎng)絡(luò)資源。)可跨三層認(rèn)證方式。其中直接認(rèn)證和二次地址分配認(rèn)證方式中,認(rèn)證客戶端和接入設(shè)備之間沒有三層轉(zhuǎn)發(fā)。對于三種認(rèn)證方式,IP地址都是用戶的唯一標(biāo)識,接入設(shè)備基于用戶的IP地址下發(fā)ACL對接口上通過認(rèn)證的用戶報文轉(zhuǎn)發(fā)進(jìn)行控制。由于直接認(rèn)證和二次地址分配認(rèn)證下的接入設(shè)備與用戶間未跨越三層設(shè)備,因此接口可以學(xué)習(xí)到用戶的MAC地址,以增強(qiáng)對用戶報文轉(zhuǎn)發(fā)的控制粒度。
在局域網(wǎng)中為了實現(xiàn)高效的用戶認(rèn)證,在此結(jié)合使用三層認(rèn)證中的直接認(rèn)證方式和可跨三層Portal認(rèn)證方式,認(rèn)證流程如圖1。
圖1 認(rèn)證流程圖
(1)Portal用戶通過HTTP協(xié)議發(fā)起認(rèn)證請求。HTTP報文經(jīng)過接入設(shè)備時,對于訪問Portal服務(wù)器或設(shè)定的免費訪問地址的HTTP報文,接入設(shè)備允許其通過;對于訪問其它地址的HTTP報文,接入設(shè)備將其重定向到Portal服務(wù)器。Portal服務(wù)器提供Web頁面供用戶輸入用戶名和密碼來進(jìn)行認(rèn)證。
(2)Portal服務(wù)器與接入設(shè)備之間進(jìn)行CHAP,認(rèn)證交互。若采用PAP則直接進(jìn)入流程的第三步。
(3)Portal服務(wù)器將用戶輸入的用戶名和密碼組裝成認(rèn)證請求報文發(fā)往接入設(shè)備,同時開啟定時器等待認(rèn)證應(yīng)答報文。
(4)接入設(shè)備與RADIUS服務(wù)器之間進(jìn)行RADIUS協(xié)議報文的交互。
(5)接入設(shè)備向Portal服務(wù)器發(fā)送認(rèn)證應(yīng)答報文。
(6)Portal服務(wù)器向客戶端發(fā)送認(rèn)證通過報文,通知客戶端認(rèn)證成功,即可訪問外網(wǎng)資源。
(7)Portal服務(wù)器向接入設(shè)備發(fā)送認(rèn)證應(yīng)答確認(rèn)。
圖2 Portal認(rèn)證系統(tǒng)的基本組成
在局域網(wǎng)中接入用戶認(rèn)證是一方面,而病毒防范問題又是另一方面。當(dāng)前校園網(wǎng)中用戶的認(rèn)證大部分采用Portal認(rèn)證的方式來實現(xiàn),而DHCP服務(wù)是前提條件,用戶從DHCP服務(wù)器獲取IP地址,然后在用戶的網(wǎng)關(guān)或局域網(wǎng)的出口對用戶進(jìn)行認(rèn)證。這種方式對用戶而言簡單易操作,無需特殊設(shè)置,網(wǎng)絡(luò)自動分配一個IP地址給客戶端,通過這種方式網(wǎng)絡(luò)管理看似簡單,管理員不需要為每一個用戶專門分配IP地址,但ARP病毒給卻給網(wǎng)絡(luò)管理帶來直接影響??蛻舳酥辛薃RP病毒后會產(chǎn)生如下的現(xiàn)象:
(1)不斷以偽造的MAC地址發(fā)送DHCP請求報文,使得DHCP池的地址很快被用光,使得正常用戶無法從DHCP池拿到合法的IP地址。
(2)不斷向網(wǎng)絡(luò)發(fā)送ARP宣告報文(ARP的應(yīng)答報文),宣稱自己是某個IP的宿主,這種情況經(jīng)常會造成IP地址沖突以及網(wǎng)關(guān)的地址偽造,使其他的客戶端無法上網(wǎng)。
其中產(chǎn)生的第一個現(xiàn)象與DHCP直接相關(guān),DHCP是一個局域網(wǎng)協(xié)議,協(xié)議在安全性設(shè)計方面有缺陷,不僅是地址欺騙,拒絕服務(wù)和中間人攻擊都會對DHCP產(chǎn)生影響。在三層交換機(jī)中能夠檢測DHCP流量的狀態(tài),借助從DHCP學(xué)習(xí)到的正確的IP地址與MAC地址的映射信息,并對所有的ARP流量進(jìn)行檢測,丟棄所有虛假的ARP應(yīng)答數(shù)據(jù)包,以防止DHCP服務(wù)器免受攻擊?,F(xiàn)結(jié)合局域網(wǎng)中使用Portal接入用戶認(rèn)證的方法,可以用以下辦法來消除ARP病毒攻擊帶來的負(fù)面影響:
對于使用CISCO三層交換機(jī)接入的區(qū)域,采用CISCO的DAI功能(動態(tài)ARP檢查)來抵制ARP攻擊,DAI不會影響正常的ARP流量,包括正常的ARP請ARP應(yīng)答、真實的免費ARP數(shù)據(jù)包,僅僅丟棄偽造的免費ARP數(shù)據(jù)包。DHCP Snooping監(jiān)聽綁定表包括IP地址與MAC地址的綁定信息并將其與特定的交換機(jī)端口相關(guān)聯(lián),DAI可以用來檢查所有非信任端口的ARP請求和應(yīng)答,確保應(yīng)答來自真實的ARP所有者,通過檢查端口記錄的DHCP綁定信息和ARP應(yīng)答的IP地址決定是否是真正的ARP所有者,不合法的ARP包將被刪除。DAI配置針對某一個VLAN,對于同一VLAN內(nèi)的接口可以開啟DAI也可關(guān)閉該功能。例如:
Switch(config)#ip arp inspection vlan 100
Switch(config)#interface Gi 1/1
Switch(config - if)#ip arp inspection trust
如果ARP包從一個可信任的接口接收到,就不需要做任何檢查,如果ARP包在一個不可信任的接口上接收到,該包就只能在綁定信息被證明合法的情況下才會被轉(zhuǎn)發(fā)出去,因此DHCP Snooping對于DAI 來說也極其重要。因為DAI是動態(tài)運行,相連的客戶端不需要改變?nèi)魏卧O(shè)置,而對于那些沒有使用DHCP的服務(wù)器可以采用靜態(tài)添加DHCP 綁定表或ARP access-list 實現(xiàn)。另外通過DAI也可以控制某個端口的ARP 請求報文頻率。例如:
Switch(config)# ip arp inspection log-buffer entries 1024
Switch(config)# ip arp inspection log-buffer logs 100 interval 10
Switch(config)#interface fa1/1
Switch(config)# ip arp inspection limit rate 100 burst interval 1
如果ARP請求的頻率超過預(yù)先設(shè)定的閾值,三層交換機(jī)會立即關(guān)閉對應(yīng)的端口。由于DAI是CPU負(fù)荷型應(yīng)用,對于轉(zhuǎn)發(fā)給CPU的ARP數(shù)據(jù)幀存在速率限制,否則三層交換機(jī)的CPU支撐不住ARP的流量沖擊,并且可能無法維持路由協(xié)議進(jìn)程的運行,就可能導(dǎo)致三層交換機(jī)工作不穩(wěn)定。對于ARP的速率限制要謹(jǐn)慎,同時也有可能出現(xiàn)ARP流量峰值的極端現(xiàn)象,為了滿足每臺主機(jī)請求和應(yīng)答兩個ARP數(shù)據(jù)包同時通過,結(jié)合速率限制問題,應(yīng)保證每秒鐘據(jù)包數(shù)量總量為局域網(wǎng)中主機(jī)數(shù)量總和的兩倍。該功能可以阻止網(wǎng)絡(luò)掃描工具的使用,同時對存在大量ARP 報文特征的病毒起到阻斷作用。
參考文獻(xiàn)
[1]羅海波.校園一卡通系統(tǒng)的安全性研究[J].科技廣場,2010(7).
[2]張媛媛,侯建濤.ARP攻擊和ARP欺騙的原理及其解決方案[J].煤炭技術(shù),2010(11):199-200.
[3]徐智勇,吳自友,蔡聰.基于Dynamic ARP Inspection的靜態(tài)MAC-IP綁定——一種ARP欺騙避免解決方案[J].測控技術(shù),2013(10).