在IPv6" title="IPv6">IPv6網(wǎng)絡(luò)中,,由于使用ND協(xié)議" title="ND協(xié)議">ND協(xié)議代替了IPv4中的ARP協(xié)議" title="ARP協(xié)議">ARP協(xié)議,,以及對(duì)用戶的身份認(rèn)證方面需要針對(duì)用戶的IPv6地址進(jìn)行處理,所以在IPv6的接入層安全技術(shù)相比在IPv4網(wǎng)絡(luò)中,,必須進(jìn)行更新,,使之能夠滿足在IPv6網(wǎng)絡(luò)中使用的要求,。并且,IPv6的接入層安全技術(shù)應(yīng)能夠與IPv4的接入層安全技術(shù)共存,,滿足在IPv6/IPv4雙棧網(wǎng)絡(luò)中的要求,。
在園區(qū)網(wǎng)部署中,接入層的安全防護(hù)問(wèn)題是一項(xiàng)很重要的部署考慮,,在該問(wèn)題上,,主要考慮協(xié)議安全及用戶身份安全兩個(gè)部分。
協(xié)議安全:使用IPv4的園區(qū)網(wǎng)進(jìn)行部署的時(shí)候,,必須考慮ARP攻擊的問(wèn)題,,防止網(wǎng)絡(luò)中出現(xiàn)ARP欺騙及ARP泛洪帶來(lái)的網(wǎng)絡(luò)性能及可靠性問(wèn)題。在部署IPv6后,,要考慮使用ND協(xié)議帶來(lái)的接入層安全風(fēng)險(xiǎn),。
用戶身份安全:采用802.1X認(rèn)證,確保接入網(wǎng)絡(luò)的用戶身份的可靠性,,在部署了IPv6的網(wǎng)絡(luò)中,,為了確認(rèn)接入用戶的身份信息,同樣需要進(jìn)行用戶身份認(rèn)證,。同時(shí),,為了后續(xù)對(duì)用戶的接入信息進(jìn)行綁定或?qū)徲?jì)等操作,認(rèn)證客戶端需要收集能夠標(biāo)識(shí)用戶身份的信息,,包括用戶的登錄名,,IP地址等內(nèi)容,上傳到認(rèn)證服務(wù)器,。
一,、ND協(xié)議安全
在IPv4網(wǎng)絡(luò)中,針對(duì)ARP攻擊問(wèn)題,,大部分的網(wǎng)絡(luò)設(shè)備廠商都推出了各自的ARP防攻擊解決方案,,在很大程度上解決了ARP攻擊的問(wèn)題。伴隨著IPv6網(wǎng)絡(luò)的建設(shè),,在IPv6協(xié)議族中的NDP協(xié)議越來(lái)越被重視,,而在ND協(xié)議的設(shè)計(jì)與ARP協(xié)議一樣并未提供認(rèn)證機(jī)制,導(dǎo)致網(wǎng)絡(luò)中的主機(jī)是不可信的,,從而使得針對(duì)ND協(xié)議的攻擊非常容易,。
1. ND協(xié)議的功能介紹
ND協(xié)議,全稱為鄰居發(fā)現(xiàn)協(xié)議(Neighbor Discovery Protocol),,是IPv6的關(guān)鍵協(xié)議之一,,可以說(shuō),ND協(xié)議是IPv4某些協(xié)議在IPv6中綜合起來(lái)的升級(jí)和改進(jìn),,如ARP,、ICMP路由器發(fā)現(xiàn)和ICMP重定向等協(xié)議。當(dāng)然,,作為IPv6的基礎(chǔ)性協(xié)議,,ND還提供了其他功能,如前綴發(fā)現(xiàn),、鄰居不可達(dá)檢測(cè),、重復(fù)地址檢測(cè)、地址自動(dòng)配置等,。
1) ND協(xié)議的主要報(bào)文類型ND協(xié)議定義的報(bào)文使用ICMP承載,,其類型包括:路由器請(qǐng)求報(bào)文、路由器通告報(bào)文,、鄰居請(qǐng)求報(bào)文,、鄰居通告報(bào)文和重定向報(bào)文。在本文中,,我們主要關(guān)注ND協(xié)議發(fā)生攻擊的情況,,對(duì)ND的報(bào)文種類只做簡(jiǎn)要描述:
●路由器請(qǐng)求(RS):主機(jī)啟動(dòng)后,通過(guò)RS消息向路由器發(fā)出請(qǐng)求,,期望路由器立即發(fā)送RA消息響應(yīng),。從而獲取網(wǎng)絡(luò)中的配置信息,包括網(wǎng)關(guān)地址,,網(wǎng)絡(luò)前綴,,鏈路MTU等信息。
● 路由器通告(RA):RA報(bào)文用于對(duì)RS報(bào)文進(jìn)行回應(yīng),。網(wǎng)關(guān)也可以通過(guò)周期性的在鏈路范圍內(nèi)組播RA報(bào)文,,是同一鏈路范圍內(nèi)的主機(jī)獲取相同的網(wǎng)絡(luò)配置信息。這些配置信息包括:主機(jī)的地址獲取方式,;網(wǎng)絡(luò)中的前綴信息,;網(wǎng)絡(luò)中的PMTU信息;網(wǎng)絡(luò)中的網(wǎng)關(guān)信息等,。
●鄰居請(qǐng)求報(bào)文(NS):NS消息與NA消息配合實(shí)現(xiàn)鄰居的鏈路層地址獲取,、檢查鄰居是否可達(dá)、重復(fù)地址檢測(cè)等功能,。
●鄰居通告報(bào)文(NA):NA報(bào)文是主機(jī)對(duì)NS的響應(yīng)報(bào)文,,同時(shí)主機(jī)在鏈路層地址變化時(shí)也可以主動(dòng)發(fā)送NA消息,以通知相鄰節(jié)點(diǎn)自己的鏈路層地址或者角色發(fā)生改變,。
2) ND協(xié)議主要功能介紹ND協(xié)議中,,主要新增加了RA,RS兩種報(bào)文,這兩種報(bào)文的增加,使得在主機(jī)側(cè)能夠通過(guò)接收RA報(bào)文,,獲取網(wǎng)絡(luò)中的配置參數(shù),,更加方便的進(jìn)行網(wǎng)絡(luò)的部署和管理。在地址解析,,重復(fù)地址檢查等功能上,,ND協(xié)議與ARP協(xié)議沒(méi)有過(guò)多的區(qū)別。
●路由器發(fā)現(xiàn)
路由器發(fā)現(xiàn)是指主機(jī)怎樣定位本地鏈路上路由器和確定其配置信息的過(guò)程,,主要包含查詢?nèi)笔【W(wǎng)關(guān),、前綴發(fā)現(xiàn)及參數(shù)發(fā)現(xiàn)三方面的內(nèi)容。
●地址解析
地址解析是指某節(jié)點(diǎn)在知道目的節(jié)點(diǎn)IP地址的情況下,,確定目的鏈路層地址的過(guò)程,。
當(dāng)一個(gè)節(jié)點(diǎn)需要得到同一本地鏈路上另外一個(gè)節(jié)點(diǎn)的鏈路層地址時(shí),需要進(jìn)行地址解析,,該機(jī)制類似于IPv4中的ARP,。 ND協(xié)議用NS和NA報(bào)文完成IPv6地址到鏈路層地址的解析,解析后的鏈路層地址和IP地址等信息用來(lái)建立節(jié)點(diǎn)的一個(gè)鄰居緩存表項(xiàng),。
●鄰居不可達(dá)檢測(cè)
鄰居不可達(dá)檢測(cè)是節(jié)點(diǎn)如何確定鄰居不可達(dá)狀態(tài)的過(guò)程,。
ND協(xié)議用NS和NA報(bào)文來(lái)驗(yàn)證鄰居節(jié)點(diǎn)的可達(dá)性。節(jié)點(diǎn)在確定鄰居的鏈路層地址后,,跟蹤?quán)従泳彺姹淼臓顟B(tài),,定時(shí)發(fā)送NS報(bào)文,如果鄰居在規(guī)定的可達(dá)時(shí)間內(nèi)(缺省值為30秒)不能接收或者發(fā)送返回的報(bào)文,,則刪除此鄰居緩存表項(xiàng),。
鄰居的可達(dá)性并不能說(shuō)明端到端的可達(dá)性。因?yàn)橄噜徆?jié)點(diǎn)可能是主機(jī)或者路由器,,所以相鄰節(jié)點(diǎn)并不一定就是數(shù)據(jù)包的最終目標(biāo),。NUD檢測(cè)僅僅驗(yàn)證了到目標(biāo)路徑上第一跳的可達(dá)性狀態(tài)。
●重復(fù)地址檢測(cè)
重復(fù)地址檢測(cè)是節(jié)點(diǎn)確定即將使用的地址是否被另一節(jié)點(diǎn)使用的過(guò)程,。
在節(jié)點(diǎn)自動(dòng)配置某個(gè)接口的IPv6單播地址之前,,必須在本地鏈路范圍內(nèi)驗(yàn)證要使用的臨時(shí)地址是唯一的,并且未被其他節(jié)點(diǎn)使用過(guò),。
只要NS報(bào)文發(fā)送到本地鏈路上(缺省發(fā)送一次NS報(bào)文),,如果在規(guī)定時(shí)間內(nèi)沒(méi)有NA報(bào)文進(jìn)行應(yīng)答,則認(rèn)為這個(gè)臨時(shí)單播地址在本地鏈路上是唯一的,,可以分配給接口,;反之,這個(gè)臨時(shí)地址是重復(fù)的,,不能使用此地址,。
2. ND常見(jiàn)攻擊介紹
由于ND協(xié)議擴(kuò)展了ARP協(xié)議的功能,,而沒(méi)有對(duì)其進(jìn)行安全性的擴(kuò)展,所以在IPv6的網(wǎng)絡(luò)中,,ND協(xié)議仍然面臨原有ARP協(xié)議的風(fēng)險(xiǎn),,同時(shí),在ND協(xié)議中新增的RA,RS報(bào)文,,雖然簡(jiǎn)化了網(wǎng)絡(luò)管理的工作,,但引入了新的風(fēng)險(xiǎn),。
在IPv6的接入層ND防攻擊中,,除了要關(guān)注同ARP共有的地址欺騙攻擊及DAD攻擊外,特別需要關(guān)注針對(duì)RA的攻擊,。
1) 地址欺騙攻擊地址欺騙攻擊與IPv4中ARP攻擊的方式類似,,攻擊者可以使用RS/NS/NA報(bào)文來(lái)修改受害主機(jī)或網(wǎng)關(guān)上受害主機(jī)的MAC地址,造成受害主機(jī)無(wú)法與網(wǎng)絡(luò)進(jìn)行正常的通信
圖1 RS/NS/NA仿冒攻擊示意圖
如圖1所示,,攻擊者能夠偽造NS/NA報(bào)文,,發(fā)送給網(wǎng)關(guān)或受害主機(jī),通過(guò)這種方式來(lái)對(duì)網(wǎng)關(guān)上受害主機(jī)的MAC地址或受害主機(jī)上的特定的MAC地址進(jìn)行修改,,造成了受害用戶無(wú)法接收到正常的數(shù)據(jù)報(bào)文,。
另外,攻擊者B能夠利用虛假的NA/RS/NS報(bào)文,,對(duì)正常用戶及網(wǎng)關(guān)中的ND緩存進(jìn)行改寫,,造成正常用戶之間無(wú)法互訪及網(wǎng)關(guān)無(wú)法向正確的用戶專發(fā)報(bào)文等一系列的網(wǎng)絡(luò)故障。

圖2 DAD攻擊示意圖


Detection從前文的描述,,我們知道,,在局域網(wǎng)中ARP或ND攻擊的根本原因是無(wú)法對(duì)所交互的ARP或ND報(bào)文進(jìn)行驗(yàn)證,從而無(wú)法得知正確的用戶IP,、MAC,、端口的綁定信息,,所以無(wú)法對(duì)異常的ND報(bào)文進(jìn)行過(guò)濾,使得網(wǎng)絡(luò)中可能發(fā)生ARP/ND攻擊,。
Detection技術(shù)結(jié)合綁定表項(xiàng)對(duì)ND報(bào)文進(jìn)行過(guò)濾,,能夠更好的防御ND攻擊,。
2) RA Trust與DHCP TrustRA Trust與DHCP
Trust的功能不同,但是思路是相同的,,管理員可以在相應(yīng)的連接DHCP服務(wù)器或網(wǎng)關(guān)的接口上進(jìn)行配置,,通過(guò)手工指定連接DHCP服務(wù)器與連接發(fā)送RA的設(shè)備的接口(通常是網(wǎng)關(guān)),能夠避免網(wǎng)絡(luò)中DHCP報(bào)文與RA報(bào)文的任意發(fā)送,。當(dāng)進(jìn)行了RA
Trust與DHCP Trust后,,DHCP的服務(wù)器端報(bào)文與RA報(bào)文只能從配置了TRUST的端口進(jìn)入,避免了DHCP服務(wù)器欺騙與RA攻擊,,提升了局域網(wǎng)安全性,。
snooping表項(xiàng)達(dá)到允許學(xué)習(xí)的最大數(shù)目后,將不允許新增動(dòng)態(tài)學(xué)習(xí)表項(xiàng),,以保證當(dāng)一個(gè)接口所接入的某一臺(tái)主機(jī)發(fā)起ND攻擊時(shí)不會(huì)導(dǎo)致整個(gè)設(shè)備的ND
Snooping表資源都被耗盡,。
Detection技術(shù),,對(duì)非法報(bào)文進(jìn)行過(guò)濾,提高了用戶側(cè)ND報(bào)文的可信性及安全性,,防止網(wǎng)絡(luò)出現(xiàn)地址欺騙及DAD造成的攻擊,。配合DHCP Trust與RA
Trust功能,禁止非法的DHCP報(bào)文與RA報(bào)文發(fā)送,,防止了針對(duì)RA的攻擊,。通過(guò)限制ND
snooping表項(xiàng)的學(xué)習(xí)數(shù)量,避免的對(duì)設(shè)備的DoS攻擊,。通過(guò)提供了一套完整的ND防攻擊解決方案,,提高了用戶接入層的ND安全水平。
圖5 客戶端IP地址上傳