朱倩,嚴(yán)曉峰
摘要:該文從IP發(fā)展歷史入手,簡要回顧了IPv6的主要特性,闡述了IPv6的安全機(jī)制,對(duì)IPv6的現(xiàn)實(shí)性應(yīng)用給出了見解,認(rèn)為IPv6已經(jīng)進(jìn)入實(shí)用化階段,應(yīng)該從現(xiàn)實(shí)角度完成IPv6安全性的實(shí)際應(yīng)用,完善公鑰、防火墻和兼容性等工作。最后,該文對(duì)企業(yè)網(wǎng)絡(luò)從IPv4轉(zhuǎn)為IPv6后的網(wǎng)絡(luò)安全性模型提出了一些看法。
關(guān)鍵詞:IPv6;安全性;企業(yè)模型
中圖分類號(hào):TP393文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1009-3044(2009)34-9665-03
IPv6 Security Mechanisms and Safety Discussions
ZHU Qian1, YAN Xiao-feng2
(1.Wuhan University Computer Science, Wuhan 430072, China; 2.Jiujiang College of Information Science Teaching Software, Jiujiang 332005, China)
Abstract: The history of the development from the IP start with a brief review of the main features of IPv6, describes IPv6 security mechanisms, practical applications of IPv6, gives the opinion that the IPv6 has entered a practical stage, it should be completed from a realistic point of view IPv6 the practical application of safety, improve the public key, firewall, and compatibility and so on. Finally, the text of the enterprise network from IPv4 to IPv6 network security model, after a number of observations.
Key words: IPv6; security; enterprise model
1 IPv6概述
1.1 IP協(xié)議
IP協(xié)議誕生于70年代中期[1]。IP解決的最根本的問題是如何把網(wǎng)絡(luò)連接在一起,也就是把計(jì)算機(jī)連接在一起,而且除了其他計(jì)算機(jī)的網(wǎng)絡(luò)地址之外,這些連接起來的計(jì)算機(jī)無需了解任何的網(wǎng)絡(luò)細(xì)節(jié)。這就有以下三個(gè)要求:首先,每個(gè)連接在“網(wǎng)絡(luò)的網(wǎng)絡(luò)”上的計(jì)算機(jī)必須具有唯一的標(biāo)識(shí);其次,所有計(jì)算機(jī)都能夠與所有其他計(jì)算機(jī)以每個(gè)計(jì)算機(jī)都能識(shí)別的格式進(jìn)行數(shù)據(jù)的收發(fā);最后,一臺(tái)計(jì)算機(jī)必須能夠在了解另一計(jì)算機(jī)的網(wǎng)絡(luò)地址后把數(shù)據(jù)可靠地傳至對(duì)方,而無需了解對(duì)方計(jì)算機(jī)和網(wǎng)絡(luò)的任何細(xì)節(jié)[2]。IP協(xié)議實(shí)現(xiàn)了上述目標(biāo)。
1.2 IPv6概述
IPv6自1996年由IETF的RFC2460加以規(guī)范以來,已經(jīng)得到了廣泛的研究和一定的部署。[10]
IPv6保留了IPv4的很多非常成功的特征。如IPv4、IPv6都是無連接的—每一個(gè)數(shù)據(jù)報(bào)都含有目的地址,每一數(shù)據(jù)報(bào)獨(dú)立地被路由。就象 IPv4一樣,IPv6的數(shù)據(jù)報(bào)頭部也含有用于標(biāo)識(shí)一個(gè)數(shù)據(jù)報(bào)被丟棄前已經(jīng)過的最大站數(shù)的域。另外, IPv6保留了IPv4可選項(xiàng)中的大部分通用機(jī)制。
盡管保留了當(dāng)前版本的基本概念,IPv6仍然修改了所有的細(xì)節(jié)。例如,IPv6使用更大的地址和一個(gè)全新的數(shù)據(jù)報(bào)頭部格式。另外,IPv6使用一系列的定長的頭部去處理可選信息,而不象當(dāng)前版本那樣只使用一種含有變長的可選項(xiàng)的頭部。
IPv6中的新加特征主要可分為以下五類:[4-5]
1)地址尺寸(Address Size)。每個(gè)IPv6地址含128位,代替了原來的32位,這一下地址空間大得足以適應(yīng)好幾十年的全球Internet的發(fā)展。
2)頭部格式(Header Format)。IPv6的數(shù)據(jù)報(bào)頭部與IPv4的完全不一樣,IPv4頭部的每一個(gè)域幾乎都變了,或被替代掉了。
3)擴(kuò)展頭部(Extension Header)。不象IPv4只使用一種頭部格式,IPv6將信息放于分離的頭部之中。一個(gè)IPv6的數(shù)據(jù)報(bào)組成:IPv6的基本頭部,后跟零個(gè)或多個(gè)擴(kuò)展頭部,再后跟數(shù)據(jù)。當(dāng)前,IPv6定義了6種擴(kuò)展頭,分別是:步跳擴(kuò)展頭、路由擴(kuò)展頭、分段擴(kuò)展頭、驗(yàn)證擴(kuò)展頭、封裝安全性凈荷擴(kuò)展頭、目標(biāo)選項(xiàng)擴(kuò)展頭。[6]
4)對(duì)音頻和視頻的支持(Support for audio and video)。IPv6的一種機(jī)制讓發(fā)送方與接收方能夠通過底層網(wǎng)絡(luò)建立一條高質(zhì)量的路徑,并將數(shù)據(jù)報(bào)與這一路徑聯(lián)系起來。雖然這種機(jī)制用于需要較高性能保證的音頻和視頻應(yīng)用,它也可用于將數(shù)據(jù)報(bào)與低成本路徑聯(lián)結(jié)。
5)可擴(kuò)展的協(xié)議(Extensible Protocol)。IPv6并不象IPv4那樣規(guī)定了所有可能的協(xié)議特征。相反,設(shè)計(jì)者們提供了一種方案,使得發(fā)送方能為一個(gè)數(shù)據(jù)報(bào)增加另外的信息。擴(kuò)展方案使得IPv6比IPv4更靈活,意味著隨時(shí)能在設(shè)計(jì)中增加所需的新特征。
2 IPV6的安全機(jī)制與體系結(jié)構(gòu)
2.1 計(jì)算機(jī)安全與網(wǎng)絡(luò)安全技術(shù)概述
安全機(jī)制是決策的集合,它們集中體現(xiàn)了一個(gè)組織對(duì)安全的態(tài)度。更準(zhǔn)確的說,安全機(jī)制對(duì)于可接受的行為以及應(yīng)對(duì)違規(guī)做出何種響應(yīng)確定了界限。[3]
要保護(hù)數(shù)據(jù)就必須小心防范可能的攻擊。人們通常只會(huì)注意來自外部網(wǎng)絡(luò)的攻擊,而真正的安全機(jī)制需要考慮很多其它的問題。要特別注意的方面包括:篡奪權(quán)限(盜取密碼)、IT系統(tǒng)管理權(quán)限的不當(dāng)或錯(cuò)誤使用、濫用權(quán)限、軟件的薄弱點(diǎn)(在運(yùn)行超級(jí)用戶以上級(jí)別的應(yīng)用程序時(shí)緩存、堆棧溢出)、網(wǎng)絡(luò)監(jiān)聽或消息重發(fā)、特洛伊木馬、病毒和蠕蟲等、安全攻擊,比如偽裝、IP欺騙、DoS攻擊或中間人攻擊、路由的誤用等。
實(shí)際上,數(shù)據(jù)表明來自外部的惡意攻擊只占對(duì)計(jì)算機(jī)和網(wǎng)絡(luò)威脅的一小部分。很多攻擊來自內(nèi)部,并且與人們不正確的使用權(quán)限有關(guān)。[7]
IPv4的目的只是作為簡單的網(wǎng)絡(luò)互通協(xié)議,因而其中沒有包含安全特性。
對(duì)于安全性,可以定義如下三個(gè)公認(rèn)的目標(biāo)[2]:
1)身份驗(yàn)證:能夠可靠地確定接收到的數(shù)據(jù)與發(fā)送的數(shù)據(jù)一致,并且確保發(fā)送該數(shù)據(jù)的實(shí)體與其所宣稱的身份一致;
2)完整性:能夠可靠地確定數(shù)據(jù)在從源到目的地傳送的過程中沒有被修改;
3)機(jī)密性:確保數(shù)據(jù)只能為預(yù)期的接收者使用或讀出,而不能為其他任何實(shí)體使用或讀出。
完整性和身份驗(yàn)證經(jīng)常密切相關(guān),而機(jī)密性有時(shí)使用公共密鑰加密來實(shí)現(xiàn),這樣也有助于對(duì)源端進(jìn)行身份驗(yàn)證。
IPv6的安全機(jī)制主要表現(xiàn)在以下幾個(gè)方面[9]:
1)將原先獨(dú)立于IPv4協(xié)議族之外的報(bào)頭認(rèn)證和安全信息封裝作為IPv6的擴(kuò)展頭置于IPv6基本協(xié)議之中,為IPv6網(wǎng)絡(luò)實(shí)現(xiàn)全網(wǎng)安全認(rèn)證和加密封裝提供了協(xié)議上的保證。IPv6中通過身份驗(yàn)證頭(AH)和封裝安全性凈荷(ESP)頭來實(shí)現(xiàn)身份驗(yàn)證和安全性,包括安全密碼傳輸、加密和數(shù)據(jù)包的數(shù)字簽名。
2)地址解析放在ICMP(Internet Control Message Protocol)層中,這使得其與ARP(Address Resolution Protocol)相比,與介質(zhì)的偶合性更小,而且可以使用標(biāo)準(zhǔn)的IP認(rèn)證等安全機(jī)制。
3)對(duì)于協(xié)議中的一些可能會(huì)給網(wǎng)絡(luò)帶來安全隱患的操作,IPv6 協(xié)議本身都做了較好的防護(hù)。例如:因?yàn)橐粭l鏈路上多個(gè)接口同時(shí)啟動(dòng)發(fā)送鄰居請(qǐng)求消息而帶來的鏈路擁塞隱患,IPv6采用在一定范圍內(nèi)的隨機(jī)延時(shí)發(fā)送方法來減輕鏈路產(chǎn)生擁塞的可能,這同時(shí)也減少了多個(gè)節(jié)點(diǎn)在同一時(shí)間競爭同一個(gè)地址的可能。
4)除了IPSec和IPv6本身對(duì)安全所做的措施之外,其他的安全防護(hù)機(jī)制在IPv6上仍然有效。諸如:NAT-PT(Net Address Translate-Protocol Translate)可以提供和IPv4中的NAT相同的防護(hù)功能;通過擴(kuò)展的ACL(Access Control List)在IPv6上可以實(shí)現(xiàn)IPv4 ACL所提供的所有安全防護(hù)。另外,基于VPLS(Virtual Private LAN Segment)、VPWS(Virtual Private Wire Service)的安全隧道和VPN(Virtual Private Network)等技術(shù),在IPv6上也可以完全實(shí)現(xiàn)。
2.2 IPv6安全機(jī)制
如前所述,IPSec安全性服務(wù)完全通過AH(Authentication Header)和封裝安全性凈荷(Encapsulating Security Payload Header,ESP )頭相結(jié)合的機(jī)制來提供,當(dāng)然還要有正確的相關(guān)密鑰管理協(xié)議。RFC 4302(IP身份驗(yàn)證頭)中對(duì)AH進(jìn)行了描述,而ESP頭在RFC 4303和RFC 4305(IP封裝安全性凈荷( ESP ) )中描述。上述RFC及IP安全性體系結(jié)構(gòu)RFC僅僅是解決安全性問題的第一步。
各安全性頭可以單獨(dú)使用,也可以一起使用。如果一起使用多個(gè)擴(kuò)展頭,AH應(yīng)置于ESP頭之前,這樣,首先進(jìn)行身份驗(yàn)證,然后再對(duì) ESP頭凈荷解密。使用IPSec隧道時(shí),這些擴(kuò)展頭也可以嵌套。即,源節(jié)點(diǎn)對(duì) IP包進(jìn)行加密和數(shù)字簽名,然后發(fā)送給本地安全性網(wǎng)關(guān),該網(wǎng)關(guān)則再次進(jìn)行加密和數(shù)字簽名,然后發(fā)送給另一個(gè)安全性網(wǎng)關(guān)。
實(shí)際上,AH和ESP頭既可以用于IPv4,也可以用于IPv6,這一點(diǎn)很重要。
AH認(rèn)證支持hmac_md5_96、hmac_sha_1_96認(rèn)證加密算法,ESP封裝支持DES_CBC、3DES_CBC以及Null等三種算法。[13]
3 IPv6安全性應(yīng)用的現(xiàn)實(shí)性分析
IPv6網(wǎng)絡(luò)在安全性上對(duì)IPv4的優(yōu)勢(shì)并不如我們預(yù)計(jì)的那么大。很多已知的在IPv4上實(shí)現(xiàn)的攻擊,在IPv6上一樣能夠?qū)崿F(xiàn),因此,我們用來保護(hù)數(shù)據(jù)的方式實(shí)際上也差不多。如同IPv4一樣,遲早會(huì)有惡意的攻擊者找到新方法來攻入網(wǎng)絡(luò)。網(wǎng)絡(luò)攻防就像常說的矛和盾,此消彼長。另外有一點(diǎn)必須指出的是,大多數(shù)操作系統(tǒng)內(nèi)的IPv6是很容易配置的,某些時(shí)候隧道模式會(huì)作為缺省模式被激活。
如果我們使用檢測(cè)系統(tǒng)對(duì)MAC頭 0x86DD或者對(duì)IPv4協(xié)議字段41協(xié)議進(jìn)行監(jiān)控,我們會(huì)發(fā)現(xiàn)網(wǎng)絡(luò)上原來已經(jīng)有數(shù)量龐大的計(jì)算機(jī)開始使用IPv6系統(tǒng)了。
3.1 公鑰傳遞
RFC 4301規(guī)定了IPv6協(xié)議的IPSec需求,但并沒有提及密鑰是如何交換的。我們可以手動(dòng)設(shè)定主密鑰,但是在大規(guī)模應(yīng)用時(shí),這項(xiàng)工作會(huì)非常耗時(shí)。因此,在這種條件下,應(yīng)該使用一臺(tái)中心授權(quán)服務(wù)器。根據(jù)目前能了解到的應(yīng)用情況,這種中心授權(quán)服務(wù)器還有很多細(xì)節(jié)問題需要解決,比如和RFC 4306規(guī)定的IKEv2協(xié)議的沖突問題。
3.2 防火墻和入侵檢測(cè)系統(tǒng)
端到端的IPSec是IPv6的主要優(yōu)點(diǎn)之一,然而,如果使用ESP加密,那么已有的防火墻就可能發(fā)生問題:假如包是端到端加密,那么防火墻或者路由器如何在不解密的條件下來進(jìn)行包的檢測(cè)呢?把所有的加密密鑰放在一個(gè)中心位置也會(huì)使網(wǎng)絡(luò)出現(xiàn)中心薄弱環(huán)節(jié)。一個(gè)比較好的解決方案是,使用一個(gè)服務(wù)器來存儲(chǔ)攻擊者或進(jìn)行了網(wǎng)絡(luò)異常分析工作計(jì)算機(jī)的數(shù)據(jù)庫,客戶機(jī)下載這些數(shù)據(jù)庫,數(shù)據(jù)計(jì)算機(jī)自己對(duì)包進(jìn)行掃描,如果發(fā)現(xiàn)了和數(shù)據(jù)庫相符的內(nèi)容,就向中心服務(wù)器報(bào)警。
3.3 兼容性
互聯(lián)網(wǎng)的普及使IPv4向IPv6的過渡需要很長一段時(shí)間才能完成。IPv6也不僅僅是對(duì)IPv4的簡單升級(jí),因?yàn)轭^部特征和配址機(jī)制的不同,這兩種協(xié)議是互不兼容的。因此,IPv4如何平滑地過渡到IPv6是必須解決的一個(gè)問題。[10]
近年來的實(shí)踐過程中,屢屢出現(xiàn)本來在IPv4系統(tǒng)中工作正常的設(shè)備、軟件在采用IPv6協(xié)議后出現(xiàn)問題的事件。根據(jù)報(bào)道,如果IGMP snooping置為有效,那么有些交換機(jī)會(huì)無法傳送IPv6的多播包。使用VLAN站點(diǎn)并使用ISL加密,那么IPv6會(huì)不能正常工作。[8]同時(shí),傳統(tǒng)上被認(rèn)為固若金湯的BSD系統(tǒng),也在處理IPv6封包的程式碼中,存在某種存儲(chǔ)器損毀的弱點(diǎn),可能造成系統(tǒng)被攻擊者控制的高危險(xiǎn),“該項(xiàng)弱點(diǎn)可讓黑客避開操作系統(tǒng)內(nèi)建的所有安全機(jī)制”。[12] Juniper networks使用ipv6的m系列及t系列路由器,由于“內(nèi)存溢漏”(memory leak),可以讓攻擊者發(fā)動(dòng)DoS攻擊。[11]
因此,業(yè)界還要花費(fèi)大量的精力和財(cái)力來進(jìn)行已有系統(tǒng)的兼容性試驗(yàn),避免出現(xiàn)不可預(yù)知的嚴(yán)重?fù)p失。
4 IPv6的企業(yè)安全性模型
近年來,由于業(yè)務(wù)需要,NAT越來越多地被使用,與此而來的還有IPv4網(wǎng)絡(luò)端對(duì)端透明的缺失和安全性的降低。IPv6可以部分地解決這一問題。如果要對(duì)外部隱藏網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)是必須的話,那么應(yīng)該使用如RFC 3041規(guī)定的諸如private addressing技術(shù)等,而不能再繼續(xù)使用NAT技術(shù)。
在傳統(tǒng)的IPv4網(wǎng)絡(luò)中,標(biāo)準(zhǔn)的安全性模型是集成化的NAT和邊界防火墻的使用。在IPv6網(wǎng)絡(luò)里,應(yīng)該設(shè)計(jì)一個(gè)更先進(jìn)的安全模型來改善整個(gè)網(wǎng)絡(luò)的安全,與此同時(shí)還要促進(jìn)端對(duì)端的聯(lián)絡(luò)能力。IPv6的每個(gè)節(jié)點(diǎn)都具有IPSec能力。僅僅依賴一個(gè)防火墻是不可靠的。假如入侵者進(jìn)入了防火墻背后的網(wǎng)絡(luò),那么一切都將是一覽無余的非加密內(nèi)容。要建立完善的模型,必須將中心安全策略倉庫、可信主機(jī)和節(jié)點(diǎn)結(jié)合起來,使三方共同作用,建立一個(gè)以網(wǎng)絡(luò)ID為基礎(chǔ)的身份驗(yàn)證網(wǎng)絡(luò)系統(tǒng)。防火墻仍然可以使用,但以現(xiàn)在的觀點(diǎn)而言,僅僅以邊界防火墻來進(jìn)行企業(yè)級(jí)防護(hù)是不夠的,邊界防火墻還要和節(jié)點(diǎn)級(jí)防火墻相互作用,形成綜合性分布式防火墻網(wǎng)絡(luò)。
參考文獻(xiàn):
[1] Naganand Doraswamy.IPSEC:新一代因特網(wǎng)安全標(biāo)準(zhǔn)[M].北京:機(jī)械工業(yè)出版社,1999.12.
[2] Pete Ldshin.IPv6詳解[M].北京:機(jī)械工業(yè)出版社,2000.4.
[3] William R.Cheswick.防火墻與因特網(wǎng)安全[M].北京:機(jī)械工業(yè)出版社,2000.4.
[4] Tamara Dean.計(jì)算機(jī)網(wǎng)絡(luò)實(shí)用教程[M].北京:機(jī)械工業(yè)出版社,2000.9.
[5] Douglas E.Comer.計(jì)算機(jī)網(wǎng)絡(luò)與因特網(wǎng)[M].北京:機(jī)械工業(yè)出版社,2005.9.
[6] Michael Palmer.局域網(wǎng)與廣域網(wǎng)的設(shè)計(jì)與實(shí)現(xiàn)[M].北京:機(jī)械工業(yè)出版社,2000.8.
[7] Silvia Hagen.IPv6 Essentials[M].OReilly,2006.4.
[8] David Malone, Niall Murphy.IPv6 Network Administration[M].OReilly,2005.4.
[9] 關(guān)于IPv6安全網(wǎng)絡(luò)的架構(gòu)分析問題,http://cisco.ccxx.net/cisco/601.html.
[10] IPv4到IPv6的演進(jìn)策略,http://cisco.ccxx.net/cisco/4109.html.
[11] 陶蓉.Juniper路由軟件出現(xiàn)漏洞IPv6應(yīng)慎行[J].通信世界報(bào),2004.11.
[12] OpenBSD發(fā)現(xiàn)IPv6安全漏洞,http://bbs.mychat.to/read.php?tid=608036.
[13] 中興通訊股份有限公司.談IPv6網(wǎng)絡(luò)的協(xié)議安全和安全機(jī)制,http://cisco.ccxx.net/cisco/2140.html.