版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
IPSecVPN詳解
1.IPSec概述
IPSec(ipsecurity)是一種開(kāi)放標(biāo)準(zhǔn)的框架結(jié)構(gòu),特定的通信方之間在IP層通過(guò)加密和數(shù)據(jù)摘要(hash)等手段,來(lái)保證數(shù)據(jù)包在Internet網(wǎng)上傳輸時(shí)的私密性(confidentiality)、完整性(dataintegrity)和真實(shí)性(originauthentication)。
1.1.通過(guò)加密保證數(shù)據(jù)的私密性
★私密性:防止信息泄漏給未經(jīng)授權(quán)的個(gè)人
★通過(guò)加密把數(shù)據(jù)從明文變成無(wú)法讀懂的密文,從而確保數(shù)據(jù)的私密性
4ehlDx67NMop9eRU78IOPotVBn^l5TR
加密
丈在是
看不懂
*
解密
4ehlDx67NMop9eRU78IOPotVBn45TR
1?2■對(duì)數(shù)據(jù)進(jìn)行hash運(yùn)算來(lái)保證完整性
★完整性:數(shù)據(jù)沒(méi)有被非法篡改★通過(guò)對(duì)數(shù)據(jù)進(jìn)行hash運(yùn)算,產(chǎn)生類(lèi)似于指紋的數(shù)據(jù)摘要,以保證數(shù)據(jù)的完整性
馳改數(shù)據(jù)
土豆兩塊錢(qián)一斤
Hfish
Hash
fl
m土豆三塊錢(qián)一斤匚
4diIDx67NMop9
兩者不一敎代表
」數(shù)曙已披篡改
2fwex67N32rfee3
_.0「:I土豆兩塊錢(qián)一斤
坐h!Dx67NMop9寧□血Dx67NMop9
A
對(duì)數(shù)據(jù)和密鑰一起進(jìn)行hash運(yùn)算
★攻擊者篡改數(shù)據(jù)后,可以根據(jù)修改后的數(shù)據(jù)生成新的摘要,以此掩蓋自己的攻擊行為
★通過(guò)把數(shù)據(jù)和密鑰一起進(jìn)行hash運(yùn)算,可以有效抵御上述攻擊。
土豆三塊錢(qián)一斤
2ftvex67N32rfce3
4
Hash
兩者還是不一致
龍土豆兩塊錢(qián)「斤]
[fefe23fgrNMop7蝕曲如NMopY
我:同捕改數(shù)據(jù)利齒要
>
土豆兩塊錢(qián)一斤4彳
H;ish
密鑰
DH算法的基本原理
問(wèn)題:怎樣在雙方之間安全地傳遞密鑰?
哈哈十要是敢直接樓遞密鑰才我就只好倫看了
?密鑰
Rontei'A
艮outerB
生成一個(gè)整數(shù)p:;生成一個(gè)整數(shù)q
TOC\o"1-5"\h\z
把p發(fā)送到對(duì)端——」_:,
.―J—i把q發(fā)送到對(duì)端
根據(jù)p、q生成gij根據(jù)p、q生成g
生成密鑰旳|上;生成密鑰Xb
把M智血發(fā)送|血J丿
到對(duì)端:;
.|Xb|把Xb發(fā)送
L1到對(duì)端
最后得到的
對(duì)稱(chēng)窸鑰
Key=5^Xb
F(X瀘Xb)
1.3.通過(guò)身份認(rèn)證保證數(shù)據(jù)的真實(shí)性
★真實(shí)性:數(shù)據(jù)確實(shí)是由特定的對(duì)端發(fā)出
★通過(guò)身份認(rèn)證可以保證數(shù)據(jù)的真實(shí)性。常用的身份認(rèn)證方式包括
Pre-sharedkey,預(yù)共享密鑰
RSASignature,數(shù)字簽名
1.3.1.預(yù)共享密鑰
預(yù)共享密鑰,是指通信雙方在配置時(shí)手工輸入相同的密鑰。
本地
遠(yuǎn)端
生成的HashL
接收?到的H聒hL
共享密鑰
1.3.2.數(shù)字證書(shū)
★RSA密鑰對(duì),一個(gè)是可以向大家公開(kāi)的公鑰,另一個(gè)是只有自己知道的私鑰。
★用公鑰加密過(guò)的數(shù)據(jù)只有對(duì)應(yīng)的私鑰才能解開(kāi),反之亦然?!飻?shù)字證書(shū)中存儲(chǔ)了公鑰,以及用戶(hù)名等身份信息。
豔
■+身份信息
數(shù)字簽名
Hash
2.IPSec框架結(jié)構(gòu)
IPS氏框架
可選擇的算法
IPS比安全協(xié)議
加密
數(shù)據(jù)摘要
對(duì)稱(chēng)密鑰交換
ESP
AH
DES
3DES
MD5
SHA
DH1
DH2
AES
2.1.IPSec安全協(xié)議
IPSec安全協(xié)議描述了如何利用加密和hash來(lái)保護(hù)數(shù)據(jù)安全
★AH(AuthenticationHeader)網(wǎng)絡(luò)認(rèn)證協(xié)議,只能進(jìn)行數(shù)據(jù)摘要(hash),不能實(shí)現(xiàn)數(shù)據(jù)加
密
ah-md5-hmac、ah-sha-hmac
★ESP(EncapsulatingSecurityPayload)封裝安全載荷協(xié)議,能夠進(jìn)行數(shù)據(jù)加密和數(shù)據(jù)摘要(hash)
esp-des、esp-3des、esp-md5-hmac、esp-sha-hmac
2.2.IPSec封裝模式
IPSec支持兩種封裝模式:傳輸模式和隧道模式
?傳輸模式:不改變?cè)械腎P包頭,通常用于主機(jī)與主機(jī)之間。
IP頭
AH頭
數(shù)據(jù)
IP頭
數(shù)據(jù)
AH
hash1
AH對(duì)除了TTL等變化值以外的整個(gè)IP包進(jìn)行h亦h運(yùn)算
IP頭
ESP頭
[—數(shù)據(jù)二
ESPtrailer
ESPautli
ESP
原始IP包
?隧道模式:
i加WI
IhashI
增加新的ip頭,通常用于私網(wǎng)與私網(wǎng)之間通過(guò)公網(wǎng)進(jìn)行通信。
3.IPSec與NAT
3.1.AH模式
AH模式無(wú)法與NAT—起運(yùn)行,因?yàn)锳H對(duì)包括IP地址在內(nèi)的整個(gè)IP包進(jìn)行hash運(yùn)算,
而NAT會(huì)改變IP地址,從而破壞AH的hash值。
hash
AH?不年??!我對(duì)IP地址也講有了hash
NAT=我勢(shì)修改源f目的IP地址
IP頭AH頭數(shù)據(jù)
3.2.ESP模式
?只進(jìn)行地址映射時(shí),ESP可與NAT—起工作。
?進(jìn)行端口映射時(shí),需要修改端口,而ESP已經(jīng)對(duì)端口號(hào)進(jìn)行了加密和/或hash,所以將無(wú)法進(jìn)行。
NAT.網(wǎng)口號(hào)被加巒投法改*真郁閥
IP頭ESP頭Th/wp端口數(shù)據(jù)ESPtrailerESPauUi
加密
?啟用IPSecNAT穿越后,會(huì)在ESP頭前增加一個(gè)UDP頭,就可以進(jìn)行端口映射。
廠(chǎng)NAT:可以改端
口號(hào)了,太捧了
IP頭新UDP頭ESP頭TCP/UDP端口數(shù)據(jù)ESPtrailei-ESPautli
加密
4.IPSec安全通道協(xié)商過(guò)程
HostAHostB
r=?RouterARouterB^=^1
什么是端到端的VPN?
?需要保護(hù)的流量流經(jīng)路由器,觸發(fā)路由器啟動(dòng)相關(guān)的協(xié)商過(guò)程。
?啟動(dòng)IKE(Internetkeyexchange,密鑰管理協(xié)議)階段1,對(duì)通信雙方進(jìn)行身份認(rèn)證,并在兩端之間建立一條安全的通道。
?啟動(dòng)IKE階段2,在上述安全通道上協(xié)商IPSec參數(shù)。
?按協(xié)商好的IPSec參數(shù)對(duì)數(shù)據(jù)流進(jìn)行加密、hash等保護(hù)。
4.1.IKE密鑰交換協(xié)議
Internet密鑰交換(IKE)解決了在不安全的網(wǎng)絡(luò)環(huán)境(如Internet)中安全地建立或更新共享密鑰的問(wèn)題。IKE是非常通用的協(xié)議,不僅可為IPsec協(xié)商安全關(guān)聯(lián),而且可以為SNMPv3、RIPv2、OSPFv2等任何要求保密的協(xié)議協(xié)商安全參數(shù)。
一、IKE的作用當(dāng)應(yīng)用環(huán)境的規(guī)模較小時(shí),可以用手工配置SA;當(dāng)應(yīng)用環(huán)境規(guī)模較大、參與的節(jié)點(diǎn)位置不固定時(shí),IKE可自動(dòng)地為參與通信的實(shí)體協(xié)商SA,并對(duì)安全關(guān)聯(lián)庫(kù)(SAD)維護(hù),保障通信安全。
二、IKE的機(jī)制IKE屬于一種混合型協(xié)議,由Internet安全關(guān)聯(lián)和密鑰管理協(xié)議(ISAKMP)和兩種密鑰交換協(xié)議OAKLEY與SKEME組成。IKE創(chuàng)建在由ISAKMP定義的框架上,沿用了OAKLEY的密鑰交換模式以及SKEME的共享和密鑰更新技術(shù),還定義了它自己的兩種密鑰交換方式。
IKE使用了兩個(gè)階段的ISAKMP:
第一階段,協(xié)商創(chuàng)建一個(gè)通信信道(IKESA),并對(duì)該信道進(jìn)行驗(yàn)證,為雙方進(jìn)一步的IKE通信提供機(jī)密性、消息完整性以及消息源驗(yàn)證服務(wù);
第二階段,使用已建立的IKESA建立IPsecSA。
IKE共定義了5種交換。階段1有兩種模式的交換:對(duì)身份進(jìn)行保護(hù)的“主模式”交換以及根據(jù)基本ISAKMP文檔制訂的“野蠻模式”交換。階段2交換使用“快速模式”交換。IKE自己定義了兩種交換:1為通信各方間協(xié)商一個(gè)新的Diffie-Hellman組類(lèi)型的“新組模式”交換;2在IKE通信雙方間傳送錯(cuò)誤及狀態(tài)消息的ISAKMP信息交換。
1.主模式交換主模式交換提供了身份保護(hù)機(jī)制,經(jīng)過(guò)三個(gè)步驟,共交換了六條消息。三個(gè)步驟分別是策略協(xié)商交換、Diffie-Hellman共享值、nonce交換以及身份驗(yàn)證交換(如圖2所示)。
協(xié)用1啟寸
的左仝歩勒I
響應(yīng)方不挨受
呼1N&庁佇;
許護(hù)密佇
疑方鯊捋舛
竝
啻出恪式不n確
卄賊.換
尋忖兀寸
童鑰搭式不正幣方
岳月宰u(yù)
身芳曲遷
完成適釧
命護(hù)汕年
到*
就緒
IJAKM:瀝丄
蘭起方
斯有的提謖選定的協(xié)詡下亡
方起方1*送身約訓(xùn)*'、」
ER
圖2.主模式^科焙竣快囲
成功,吐戰(zhàn)據(jù)
負(fù)位:我尖購(gòu)
衍1)應(yīng)犬傳送
身瞬息
發(fā)起方啟戢協(xié)咼傳逑
對(duì)云仝蚩斂繼誼追
荒起方發(fā)送密
鑰垂才才杠必需
響直方發(fā)迭童羅耒村
和出帝很服H翔繪
】幅方迭定可接受
由諧肋數(shù)年
垂傳
圭件
2.野蠻模式交換野蠻模式交換也分為三個(gè)步驟,但只交換三條消息:頭兩條消息協(xié)商策略,交換Diffie-Hellman公開(kāi)值必需的輔助數(shù)據(jù)以及身份信息;第二條消息認(rèn)證響應(yīng)方;第三條消息認(rèn)證發(fā)起方,并為發(fā)起方提供在場(chǎng)的證據(jù)(如圖3所示)。
重傳
協(xié)商啟動(dòng)
身悅驗(yàn)證
重傳
重傳
就緒
團(tuán)3.里瑾?;鴵Q狀屎換圖
笈起方傳送驗(yàn)證載荷
發(fā)起方啟動(dòng)協(xié)商傳送對(duì)安
?
圭參數(shù)的提諫公開(kāi)
值.nonce,矗身份數(shù)據(jù)
咸功,狀態(tài)
數(shù)據(jù)負(fù)位孑
或者戔敗=
ISAKMF
岌起方身悅環(huán)對(duì)
口斕方身份環(huán)對(duì),
響應(yīng)方傳遞選定
的安全參數(shù)■值』DH
公開(kāi)值』rmncej
身份數(shù)據(jù),以及
J航載荷
3.快速模式交換快速模式交換通過(guò)三條消息建立IPsecSA:頭兩條消息協(xié)商IPsecSA的各項(xiàng)參數(shù)值,并生成IPsec使用的密鑰;第二條消息還為響應(yīng)方提供在場(chǎng)的證據(jù);第三條消息為發(fā)起方提供在場(chǎng)的證據(jù)(如圖4所示)。
4.新組模式交換通信雙方通過(guò)新組模式交換協(xié)商新的Diffie—Hellman組。新組模式交換屬于一種請(qǐng)求/響應(yīng)交換。發(fā)送方發(fā)送提議的組的標(biāo)識(shí)符及其特征,如果響應(yīng)方能夠接收
5.ISAKMP信息交換參與IKE通信的雙方均能向?qū)Ψ桨l(fā)送錯(cuò)誤及狀態(tài)提示消息。這實(shí)際
4.2.IKE階段1
協(xié)商建立IKE安全通道所使用的翁數(shù)
協(xié)商建立IKE安全通道所使用的參數(shù)
IKE階段1
HostBRouterB■^0—I-
HostA
RouterA
J-
?協(xié)商建立IKE安全通道所使用的參數(shù),包括:
加密算法、Hash算法、DH算法、身份認(rèn)證方法、存活時(shí)間
Policy10DESMD5
Routei-B
hostB
DH1躍方找到相同的策略集
Pre-share
lifetime
Policy15
DES
MD5
DH1
Pre-share
lifetime
Policy25
3DES
SHA
DH2
Pre-share
lifetime
Policy20
3DES
SHA
DH1Pre-sharelifetime
?上述IKE參數(shù)組合成集合,稱(chēng)為IKEpolicy。IKE協(xié)商就是要在通信雙方之間找到相同的policy。
HostA
RouterA
”rtouier/■
IKE階段1
HostB
4?3?IKE階段2
協(xié)商IPSec安全參數(shù)——:協(xié)^IPSec安全參數(shù)
?雙方協(xié)商IPSec安全參數(shù),稱(chēng)為變換集transformset,包括:
加密算法、Hash算法、安全協(xié)議、封裝模式、存活時(shí)間
IKE與IPSec安全參數(shù)的比較
IKE
圭全協(xié)諫
封裝複武
加密算法lla曲薦法存活已間
IPSec
身份認(rèn)證
4.4.IPSecSA
?iPSecSA(安全關(guān)聯(lián),SecurityAssociation):
SA由SPD(securitypolicydatabase)和SAD(SAdatabase)組成。
iPSecSA(安全關(guān)聯(lián),SecurityAssociation):
?SPI(SecurityParameterIndex),由IKE自動(dòng)分配
?發(fā)送數(shù)據(jù)包時(shí),會(huì)把SPI插入到IPSec頭中
?接收到數(shù)據(jù)包后,根據(jù)SPI值查找SAD和SPD,從而獲知解密數(shù)據(jù)包所需的加解密算法、hash算法等。
?一個(gè)SA只記錄單向的參數(shù),所以一個(gè)IPSec連接會(huì)有兩個(gè)IPSecSA
?使用SPI可以標(biāo)識(shí)路由器與不同對(duì)象之間的連接。
BA
□□□□□□□□□□□□□□□
□□□□□ppjir^i□□□□□□□□□□□□□□□
□□□□
□□□□
I
rm.
SPI-12
ESP/3DES/SHA
tunnel
28800
//
PL,——-
□izpll□□r
Internet
**SPZ9
ESP/DES/MD5
28800
?達(dá)到lifetime以后,原有的IPSecSA就會(huì)被刪除
?如果正在傳輸數(shù)據(jù),系統(tǒng)會(huì)在原SA超時(shí)之前自動(dòng)協(xié)商建立新的SA,從而保證數(shù)據(jù)的傳輸不會(huì)因此而中斷。
4.5.IPsecSA示例
Router1t(5hcryptoipsec舌司interface:EthernetB/l
Cryptonaptag:阿map,localsddr^1^2.163.2-1
loca上ident(addr/naGh/prut/pOHtJ:(10.17.36_141/25S-25S-255:.25E;/flZ0)renoteident(addr/nask/prot/port):(18,17.37.152/255*255-255.255/fl/G)current_peer:192*168?2?送
〔中間省略)
inbound曹wpsasz
spi:axflcyB2586.(2S95127(>Xl2)
transforn:es-p-d^s.
inusesettings=<Tunnel,}
slot:科,connid:2S06,Flow_idz1,cryptom^p:訓(xùn)^陽(yáng)日卩satining:reRai=ningkey1ifetime(k/sec):(U607"999/357^)iusi2^:ebytes
replayd^t&ctionsupport!N
outboundesps^s:
spi:OxCFECD6?0(3^646509?)tr^n5f=orn:esp-ti-esp
inus?-〈Tunnel*}
sl?t:越,connid:2的1*flow_id:2,crypton^p:my耐psatiming:renaiJiingkeylifetimp(k/sec):(46B7,999/3574)Id:8b^tesreplaydetectionsupport:N
5.Ipsecphase1andphase2
(一)IPSecVPN隧道的建立過(guò)程分為兩個(gè)階段:
第一個(gè)階段:分為兩種模式主模式(MainMode和野蠻模式(又稱(chēng)主動(dòng)模式Aggressive)第二個(gè)階段:快速模式(QuickMode)區(qū)別:主模式與野蠻模式的區(qū)別:
(1)野蠻模式協(xié)商比主模式協(xié)商更快。
因?yàn)橹髂J叫枰换?個(gè)消息,而野蠻模式只需要交互3個(gè)消息;
(2)主模式協(xié)商比野蠻模式協(xié)商更嚴(yán)謹(jǐn)、更安全。
因?yàn)橹髂J皆凇跋?&消息6”中對(duì)ID信息進(jìn)行了加密。而野蠻模式由于受到交換次數(shù)的限制,ID消息在“消息1&消息2”中以明文的方式發(fā)送給對(duì)端。即主模式對(duì)對(duì)端身份進(jìn)行了保護(hù),而野蠻模式則沒(méi)有。
(二)兩個(gè)階段分別完成任務(wù):
(1)第一個(gè)階段IKE設(shè)置,有三個(gè)任務(wù)需要完成:
(a)協(xié)商一系列算法和參數(shù)(這些算法和參數(shù)用于保護(hù)隧道建立過(guò)程中的數(shù)據(jù));
(b)必須計(jì)算出兩邊使用的加密KEY值,例如,兩邊使用3DES算法加密,3DES算法則需要一個(gè)密碼,這個(gè)密碼兩端必須一樣,但又不能在鏈路上傳遞。
(c)對(duì)等體的驗(yàn)證,如何才能知道對(duì)端就是我要與之通信的對(duì)端。這里驗(yàn)證有三種方法:預(yù)共享、數(shù)字簽名和加密臨時(shí)值。
上面一系列過(guò)程都是IKE(Internet密鑰交換協(xié)議,大多數(shù)廠(chǎng)商都把這個(gè)叫做VPNsGateway)這個(gè)協(xié)議來(lái)實(shí)現(xiàn)。
對(duì)于第一階段需要注意以下幾點(diǎn):
(a1)只有remotevpn和easyvpn是積極模式的,其他都是用主模式來(lái)協(xié)商的;(a2)讓IKE對(duì)等體彼此驗(yàn)證對(duì)方并確定會(huì)話(huà)密鑰,這個(gè)階段用DH進(jìn)行密鑰交換,創(chuàng)建完IKESA后,所有后續(xù)的協(xié)商都將通過(guò)加密和完整性檢查來(lái)保護(hù)。
(a3)第一階段幫助在對(duì)等體之間創(chuàng)建了一條安全通道,使后面的第二階段過(guò)程協(xié)商受到安全保護(hù)。
(2)第二階段:協(xié)商IPSecSA使用的安全參數(shù),創(chuàng)建IPSecSA(SA可以加密兩個(gè)對(duì)等體之間的數(shù)據(jù),這才是真正的需要加密的用戶(hù)數(shù)據(jù)),使用AH或ESP來(lái)加密IP數(shù)據(jù)流。至此IPSecVPN隧道才真正建立起來(lái)。
(三)綜上,有如下結(jié)論:
第一階段作用:對(duì)等體之間彼此驗(yàn)證對(duì)方,并協(xié)商出IKESA,保護(hù)第二階段中IPSecSA協(xié)商過(guò)程;
第二階段作用:協(xié)商IPSec單向SA,為保護(hù)IP數(shù)據(jù)流而創(chuàng)建;
(四)舉例驗(yàn)證:以主模式,AH協(xié)議來(lái)簡(jiǎn)單分析一下IPSecVPN鏈接建立的過(guò)程(附帶報(bào)文):
第一個(gè)階段三個(gè)任務(wù),分別用6個(gè)消息來(lái)完成,每?jī)蓚€(gè)為一組,這些消息的具體格式取決于使用的對(duì)等體認(rèn)證方法,使用預(yù)共享密鑰進(jìn)行驗(yàn)證的主模式(6條)協(xié)商過(guò)程使用ISAKMP消息格式來(lái)傳遞(基于UDP,端口號(hào)為500)。6條消息如下:
343.73404300|.10,1.1.2|—
ISAKHP
Idenrlt;-Projection
可al-Moce>x
3礦母翩員£0.1.*洎亢的
:SAKM?
IderirityProiectfon
:dai/.炯諂召曲
|9Ba.7421J30ai10.1.L3
ISAKMP
Idcntit?'Prote匚tiam
[MainMode)
37S.7355S20QH0-1.1.Z10.1.I.3
ISAKUP
IdentityF-*31c-匚ti□口
Melin?.1cde^
353.76198700'
ISAKHP
IdemitProiection|
可al-Meer:
39S.76233900-IO..1.3
:SAD(=
Id£匚lit;-
Xfsi■'q\fnriFi
34
■734043001■
丄■
1.3
10.1.
1.
ISAKMF
Ident二tv
Frote匚ti口n
血in
Mcc.e;
35
s.73452500H0.
1,
1.2
10.1.
1,
3
ISAKMP
Ider)t:tr
Prorection
Wain
Mode?
36
8.74210300110.
1.
1.3
10.1.
1.
2SAKM?
Iden.1:二ty
Fratectisn
.Main
Mede)
3"
s.75558200H0.
j.i
1.2
10”1,
1,
3
ISAKMP
Idemit
Prorection
Main
Mode)
33
9.7619fi700il0.
1.
1.3
10.1.
1.
ISAKMF
Icent二ty
Frote匚ti口n
)11!□
Mede;
39
S.76232900110.
1,
1.2
10.1.
1,
3
ISAKMP
Identity
Prorection
■:Afein
Mode)
MFrame36:370bytejonvire(3160bits),270byre;captured(216Qbits)
田二Src:Rz?zoin_88:33;77.00;Oe;:S3;S3:?7)8Dst:Rai£ecoQ_J2:£3:9e_^.U0zOe:5e:32;J3:
田Int盈:1ETFrotowl,Six:1F1.1.3“0.1.L.勸,Dmt:h1.2【10.1.1,2嚴(yán)^~外層傳輸?shù)腫她址
田|L呂若£?^已二比耳匸虹F=a:t:n匚口二Sr匚P□:rt;is:3Lkan:300;‘.Iht:fart;二:忑翊"基于UDPmSj,端口対5加
@Im^rneiSecurityAssocialionandKeyManagementFrctocoldata部-分
第一血段
(1)準(zhǔn)備工作:
在前2條消息發(fā)送之前,發(fā)送者和接受者必須先計(jì)算出各自的cookie(可以防重放和DOS攻擊),這些cookie用于標(biāo)識(shí)每個(gè)單獨(dú)的協(xié)商交換消息。
cookie――RFC建議將源目的IP、源目的端口、本地生成的隨機(jī)數(shù)、日期和時(shí)間進(jìn)行散列操作。Cookie成為留在IKE協(xié)商中交換信息的唯一標(biāo)識(shí),實(shí)際上cookie是用來(lái)防止DOS攻擊的,它把和其他設(shè)備建立IPSec所需要的連接信息不是以緩存的形式包存在路由器里,而是把這些信息HASH成個(gè)cookie值。
(2)1&2消息:
消息1:由發(fā)送方(協(xié)商發(fā)起端)發(fā)起,攜帶一些參數(shù),發(fā)送方向接收方發(fā)送一條包含一組或多組策略提議(Raisecom工業(yè)路由器中是多組),在策略提議中包括5元組信息:
加密算法一一DES;
散列算法——MD5-HMAC;
DHDiffie-Hellman組-2;
認(rèn)證方式——預(yù)共享;
IKESA壽命。
如下是Raisecom中高級(jí)選項(xiàng)配置的策略
(認(rèn)證方式采用“預(yù)共享”方式)
橫式◎主擴(kuò)式CffM式
認(rèn)證■磋
SH\
¥
SH&
3DES
V
3DES
[DESv|
CHGroup2
Jv]
DHGroups
vl
11
|108DO
t
fi=10BDO)
□PDO開(kāi)啟①關(guān)閉
(對(duì)于DPD,具體作用不知道,默認(rèn)是關(guān)閉)
下面簡(jiǎn)要介紹一下上述五元組信息:
協(xié)商模式:可以選擇主模式(MainMode)或者野蠻模式(Aggressive)。當(dāng)選擇主模式時(shí),只能使用IP地址作為ID的類(lèi)型。當(dāng)用戶(hù)端設(shè)備的IP地址為動(dòng)態(tài)獲取的情況時(shí),需要選擇野蠻模式。IKE野蠻模式相對(duì)于主模式來(lái)說(shuō)更加靈活,可以選擇根據(jù)協(xié)商發(fā)起端的IP地址或者ID來(lái)查找對(duì)應(yīng)的身份驗(yàn)證字,并最終完成協(xié)商。
驗(yàn)證方法AH(AuthenticationHeader):身份驗(yàn)證確認(rèn)通信雙方的身份。目前在IKE提議中,僅可用pre-shared-key(預(yù)共享密鑰)身份驗(yàn)證方法,使用該驗(yàn)證方法時(shí)必須配置身份驗(yàn)證字,并且兩端的密鑰要完全一致。
加密算法:包括DES和3DES加密算法;DES算法采用56bits的密鑰進(jìn)行加密,3DES算法采用112bits的密鑰進(jìn)行加密;AES128(AdvancedEncryptionStandard,即高級(jí)加密標(biāo)準(zhǔn))采用128bits的密鑰進(jìn)行加密;AES192(AdvancedEncryptionStandard,即高級(jí)加密標(biāo)準(zhǔn))采用192bits的密鑰進(jìn)行加密;AES256(AdvancedEncryptionStandard,即高級(jí)加密標(biāo)準(zhǔn))采用256bits的密鑰進(jìn)行加密;一般來(lái)說(shuō),密鑰越長(zhǎng)的算法強(qiáng)度越高,受保護(hù)數(shù)據(jù)越難被破解,但消耗的計(jì)算資源會(huì)更多。
Diffie-Hellman組標(biāo)識(shí)(DH):用戶(hù)可以選擇Group1即768bit或Group2即1024bit。
ISAKMP-SA生存周期:IKE使用了兩個(gè)階段為IPSec進(jìn)行密鑰協(xié)商并建立安全聯(lián)盟。第一階段,通信各方彼此間建立了一個(gè)已通過(guò)身份驗(yàn)證和安全保護(hù)的通道,即ISAKMP安全聯(lián)盟(ISAKMPSA);第二階段,用在第一階段建立的安全通道為IPSec協(xié)商安全服務(wù),即為IPSec協(xié)商具體的安全聯(lián)盟,建立IPSecSA,IPSecSA用于最終的IP數(shù)據(jù)安全傳送。ISAKMP-SA生存周期可以設(shè)定為60-604800之間的一個(gè)整數(shù)。
定時(shí)發(fā)送keepalive報(bào)文(不是必須攜帶):IKE通過(guò)ISAKMPSA向?qū)Χ硕〞r(shí)發(fā)送KeepAlive報(bào)文維護(hù)該條ISAKMPSA的鏈路狀態(tài)。當(dāng)對(duì)端在配置的超時(shí)時(shí)間內(nèi)未收到此KeepAlive報(bào)文時(shí),如該ISAKMPSA帶有timeout標(biāo)記,則刪除該ISAKMPSA及由其協(xié)商的IPSecSA;否則,將其標(biāo)記為timeout。
如下是抓包獲取到的信息(設(shè)備為Raisecom工業(yè)路由器):
34
B.73404300UO.LL3
10B1B
1.2
rProtection
(MainMode.]
35
8-73452500
10”1”
L3
SAKM?
Identit
pProtection
'■■:■■■■'■■■:■■
36
E.-.21020011J.1.1..
10.1.
八二
Ide.ntit
■Fret亡匚ti□口
(Jia11;Jlcc.亡”
37
8-75558200
10”1”
L3
SAKM?
Identit
pProtection
(MainMode)
33
5.?6L96?00lL:l.L.L..
ID.1.
h2
攵KXl?
Identit
rFrcte匚tic::
IMaLi匚Mode;
39
S.76232900
10.1.
1.3
SAtai?
Idenrir
呻Prorecrion
(MainMode
IU
出Fr^zi-?34:293Dyteson-.7:re';238^bits;.293oytescaptured<2394titsaJ
aztn^rn^t二:,Src:Rai5^coni_88?33?7700=5^^33:33:77},Dst:Rsl5eccn_32:f5:9e'OOsOesDezSSzfDsBe}
?InternetFtutocol,Src:16二1」3{:.Cl二二3),Ost:<)
王us-erDi.ti.srin?rotocol?Src?ori:i弓iknp:500>.Ds=t?crt:isal-ZL^*:00)
SZrit^rn^tAeeoc:oriiadRWy匕呂匕□亡dtPe!ctnen1
Ir^t^iorcookie:ef065f32ddf393b2'
□.;:uruLio'.Tnendor__■
3):XAUTH:
3;:RFC37G6D?D<DeadFeer:?erecticn>
由上圖可知,模式為主模式,載荷類(lèi)型為SA。SA的數(shù)目和內(nèi)容詳見(jiàn)下圖:
將載荷類(lèi)型SA展開(kāi)如下:由下圖可知,該SA中攜帶了三組策略,正好Raisecom中web頁(yè)面配置的三組策略:
裁荷奕型酮中包含了三組黃略畏儀,正好對(duì)應(yīng)*web頁(yè)面上的
-
7r^ifom
⑶
-0
::K
■.亠_?工A鼻
4-K.(JLx?壬^A..■=
■3)
—1
4-
3勺丁■■廣|耳二■尊?ta■WHb'rtIt
T忙nr蘭F"
■■HTtia■■■..
7
_n
SMAw
1,1D57
SHA—v
13DESv
3DESv
CESv
謝&卿陀7
DH4型滋v
pq~—-U
第一組TypePayload:Transform(3)#0展開(kāi)如下:
3rtpfPayload:Tran?fora(3)s
N^:-tpa.-Jdii:7ranifcrii3')FayL1l:i£::j■32
(:rn:l;_nui?r:0
T
Transfora
IKE
*
Tr^nsfora
TE"
T
Trinifoni
TK-
丁
TK"
T
Tfcnifdra
TEE
"-::-f.■:.
IK"
"rinsfarr:IC
SA生存時(shí)間為10800;加密機(jī)制為DES;認(rèn)證算法為SHA;
認(rèn)證方法選擇PSK(預(yù)共享密鑰);
DH為Group2;
第二組TypePayload:Transform(3)#1展開(kāi)如下:
r^?曾匕嚴(yán)■n嚴(yán)先』*?“
-40-亠-Lfa”d一—jj亠d4
TriinzJor=
ID-K5i_IK51:
Trsnxfar!!
rKEJTtri^'.'l^_7
Tran=fom
IKEAxtrlbuie'.
7i£^±f?nx
KEAttJibute7-
Tr&^sfon
IK-^:rrib.iTC>
Zrinzf^r^:
?.*tri3uLtz二
:eeh■二:
Ihi二:
日T\
Psvloac1匕冷耳工匕22
.ran:fcrrnn^tcrt2
Tra^ifcmID:
i禮e(]
_r■圧:葩
AtTTthLt*
?7?e
y
Tranefcrii:Ki
AiTrIbL:e
7jpe
<1=1L
Tnmsfon:KE
Atiri?::e
:-=c
t-L1
7ran:fcr:"Jiz
AciT:bt:e
T-pc
7r4ii:tcnIKi
Attylixu^e
T”X
t-i.:
Traiiif^ri:匯
鼻丁乳:色
:rpe
T=,:
+
■*■F?plfi
#2展開(kāi)如下:
第三組TypePayload:Transform(3)
:-2.;Llf*-7r?*-
「;life-mraL【加::0300
■A:工二
AjtittritiifiTLiii-jletjiiC:F5^
=2:處片-匸弋址丁謀t;紜-jxlternaT*諒:?弋:匸J[-X?jrajp
報(bào)文中的組順序和web頁(yè)面上組順序不一致,這個(gè)無(wú)所謂,只要能對(duì)上即可,因?yàn)閷?shí)際中只要這三個(gè)組能匹配上即可。
消息2:由響應(yīng)者(即對(duì)端設(shè)備)回應(yīng),內(nèi)容基本一樣,主要與發(fā)起者比較,是否
與發(fā)起者的IKE策略匹配,不匹配則進(jìn)行下一組比較,如果最終都找不到匹配,隧道就停止建立;
(note:發(fā)起者將其所有IKE策略發(fā)給接受者,接受者則在自己的策略中尋找與之匹配的策略;對(duì)比順序從優(yōu)先級(jí)號(hào)小的到大的;默認(rèn)策略實(shí)際就是個(gè)模板沒(méi)作用,如果認(rèn)證只配置預(yù)共享的話(huà),其他參數(shù)就會(huì)copy默認(rèn)策略里的)報(bào)文如下:
EInier口亡丁S^n/r-ityA■ationandFretor■'
Initiatorcookieef065f32ddf393b2
ResponderCQQk^:^62cl201df96db2
NextpayLead;Assocla.ti□口1.1?
Vcrsian:1.□
I咯匸仃日「二電ihje:[日啟ntityFrotECTiQDMod已).2
SFlag^i0k00
Me5=aSeID:0x00000000
二亡:□巨th;
田ppg
Type穴TypectiTypeBTk~
已yWaJi玄亡匸珂1:亍盒ss□匸:1二1i□旳[I]|
Payload:
?a3rLoad:rayLoad:
v^adorIDv^^dorU
Vender13
037
(IS)
〔13〕
:j^kne^nVendorID
:XALIH
:RFC3706DFD<D?idFeer3eitction;l
Jr4"■一-ua.■+豐—n—-Mr"__”f十_+■一-1~■i*■■
318.7843.300110.1-1.:?10-:.1.ZISA&1FIdem:iyF-:Teciic:i(MainWc^'
^5S.?3452500iL<J.1.1.9]
[SAKMFIdentityPr^teGtion{MaiDMoil?)
368-74210300110-1.1.3KLLk2
SAO1EI(i亡ntzlvP?::1ecTicin.MainMcde':
378.7555820011fl.1.k2SO.Lk3
SAKMFIdemzlyPe-:!eelion3tainMcdej
388.76193700110,1-L3W,L
SAKMP"EnthyFrntectlon(MainMade)
598.762:2900il(j..1?S
S^KM;Idem^iy?r:Teciic:'.Main血心
A7Franc35:].買(mǎi)byteson(.1552bira).—bvtescaptured(1552bits}
szihernexII3SrCrRai3ecoiTL32:fo>9e〔00:%;宛石:9亡人3si:Ra^5^cani_S8r33i"7
EImernetProrocol.Src:().Dst:(?
比UserDatigrajErra:c匚uL5rcFeit;isakzp.500..DstFeet:isakzz;.500.
[<J0:0e:&e:88:38:77*
QTypeParload:SccurilyAzsaciiiiion(1:
Nextps.yrLead:VeciiiorID113)
Farl匚1匕口gth:52
DozEELinofinterpretation:I.FSHC(1)
FSituation:0D0000D1
-TypeFa:.?Lcad:proposal.(2)0
Xesrpayload:NONE/NqNextPaylos.il(.0)Payloadlength:~0
Prcpo±alEiLJi'c!er:0
ProtocolID:ISAKMP⑴
S?ISizes0
Prcposaltransform5:1
Trs-nsfora
ID:
F3Y_n3(1
田
Tritnsfcrij
2?:Z
AtLribjxe
Type
田
Transforn
IK3
Attribute
Type
田
Traniforii
Atrribjre
Type
田
Transforn
IK3
Attribute
Type
田
Transform
左
Atirlbjte
Type
7rinsforal
7K:
Attribute
Tvge
"rinsfora
Xextpayload:NONE?NoN^xt
?ayloadlength:32
nunb亡廠(chǎng)0
Farlcad(0:,
It
.t
f
'-.T
:t
(t
Ct
1131=2)Life-Typ&:Seconds
12?Lif亡-&urarrio口:10&00[
2;[Enteypt:io仃一£CTi1:血:匚BC1
2,1
2?Hash-AlgorithiLi:SHA
2)A.utLenticai1on-Mcthod:?SK
2JGroup_Des匚ripi::ici:i:Alternate1024~bitM02P呂i?匚up
由上圖可知,接受端回應(yīng)的消息中,匹配了發(fā)送端的一條策略,如果有一條匹配,則不需要匹配其他策略。
在消息1和消息2中報(bào)錯(cuò)可能出現(xiàn)的原因:
(a)peer路由不通(即,外層的IP地址不通,這里對(duì)應(yīng)的是發(fā)送發(fā),這里配置簡(jiǎn)單屬于直連,而實(shí)際大型組網(wǎng)中,中間會(huì)有很多其他網(wǎng)元,往往是通過(guò)配置動(dòng)態(tài)路由);
(b)cryptoiskmpkey沒(méi)有設(shè)置(即,沒(méi)有配置預(yù)共享密鑰);
(c)一階段的策略不匹配(這時(shí)需要檢查兩端設(shè)備的策略有不一致地方么)
(3)3&4消息:密鑰交換過(guò)程
消息3:由發(fā)起者(即,隧道建立的發(fā)起者)發(fā)出,但是在發(fā)出消息3之前,有個(gè)過(guò)程必須要完成,就是Diffie-Hellman算法過(guò)程。
Diffie-Hellman算法過(guò)程目的:在消息1和消息2中所協(xié)商的算法,它們必須需要一個(gè)KEY(即,共享密鑰中設(shè)置的密碼),這個(gè)KEY在兩個(gè)對(duì)等體上必須一樣,但同時(shí)這個(gè)KEY不能在鏈路中傳遞,因?yàn)閭鬟fKEY是一個(gè)不安全的手段。所以,該過(guò)程的目的是分別在兩個(gè)對(duì)等體間獨(dú)立地生成一個(gè)DH公共值,該公共值有什么作用?因?yàn)閮蓚€(gè)對(duì)等體上都生成該DH公共值后,它們會(huì)在接下來(lái)的消息3和消息4中傳送給對(duì)方,打個(gè)比方,A收到了B的DH公共值,B收到了A的DH公共值。當(dāng)A、B都收到了對(duì)方的該公共值后,問(wèn)題就好解決了。因?yàn)橛幸粋€(gè)公式在數(shù)學(xué)中被論證成立,那么現(xiàn)在借助公式,就可以在兩個(gè)對(duì)等體上生成一個(gè)只有它們兩個(gè)對(duì)等體知道的相同的KEY,該公式為:
發(fā)起者密鑰=(Xb)amodp=(Xa)bmodp=響應(yīng)者密鑰
note:這個(gè)密鑰不是最終算法中使用的KEY,但兩個(gè)對(duì)等體通過(guò)該KEY材料來(lái)生成另外三個(gè)密鑰,分別是:
SKEYID_d——此密鑰被用于計(jì)算后續(xù)IPSec密鑰資源;
SKEYID_a——此密鑰被用于提供后續(xù)IKE消息的數(shù)據(jù)完整性以及認(rèn)證;
SKEYIDe——此密鑰被用于對(duì)后續(xù)IKE消息進(jìn)行加密;
所以,由發(fā)起者發(fā)起的第三條消息主要是向?qū)Φ润w發(fā)送自己的DH公共值和Nonce隨機(jī)數(shù);
實(shí)際報(bào)文如下:
証S,
73404300'10
.1….3
10.1.
--r
Ir£
:3AKMF訂
Ickmitr
Protection
<Main
Mode)
35&
73453500110
.1.1.i
10.L
L3
ISAKMP詬竝1
暮Idemilv
Pro~e匚tjen
{Main
Mode)
363,
74210G00H0.1-1.3
10.1.
--r』r£
ISAF31P
匚defiiltv
Projection
(MainModel
37出
75550200110
.1.1.i
10.L
L3
ISAf^lP
2dentilv
Projecticn
{Main
Mjde.1
38S,
76198700110-1.1.3
io.i.
--r
£
:SAKMF
Ickmitr
Protection
<Main
Mode)
39&
76232900110
.1.1.i
10.L
L3
ISAI31P
Ide口Hilv
Projecticn
{Main
Mode)
aFranc-36:270byt亡三口口wire{2160bils).270bytes匚apfured{2160bits)
玉EiheraerSrc:Raisecofl_33:33;77;00:0己:吞亡:55:弓3:7門(mén):,Dst:Raisecom_32^f5;9c^C0:9e;;5e:32:f3:9e
也InlernetFrotcccl,ire:(10.kk3)rDst:IQ.LL2()SIj^erDaiagramrrctccal,Src?ari:IsELkca口(500?,D=irori:25-iknip500SInlernetE亡匚urityAssociztionandR亡丁Managra亡nt耳::口1:口cal
Iniriarorcackle:ef065f32ddI393b2
Pespendercccki亡:4562c1204df96db2
Nexrpaylead:KeytschsAEe(4j
Version:k0
ExchangeriTe:Identity?roieciio^(MainMode?ffiFlaga:0x00
MenageID:0x00000000
由上述報(bào)文可知,發(fā)送方開(kāi)始向接收方發(fā)送自己的DH公共值以及隨機(jī)數(shù);
對(duì)端收到后,可以根據(jù)“消息1&消息2”中協(xié)商的DH算法,以及發(fā)送端在消息3中給
出的DH和nonce值來(lái)生成SKEYID_d、SKEYID_a、SKEYID_e三個(gè)密鑰;
消息4:同消息3,告知發(fā)送端自己的DH公共值和Nonce隨機(jī)數(shù);
報(bào)文如下:
34S.734D43DOI1D.1.1.3
1SAKMF
Id上ntitr
Fr
(MainMode.
358^73452500
1C.1.1.3
:SAF3F
沽亠j."*二j-j
t已匚TiCEl
MainMode
363.7^=210300110?3L1.3
10.L1.2
'冃Identitr
Fr
t:亡匚tion
.?JaiDMode
378,75558200HO.L3,2
10.L1.3
ISAF3P
lldenrir;-
Pr
(MainMade?|
383.76L98700na.:.1.3
10.:.1.亠
Ldentif
-1-
tci:ti□□
.M^inilc?d亡
&232900HO.:
.MainMode.-
^說(shuō)門(mén)疋載荷:NonceDn伯用于向發(fā)
由上述報(bào)文可知,接受方開(kāi)始向發(fā)送方發(fā)送自己的DH公共值以及隨機(jī)數(shù);
對(duì)端收到后,可以根據(jù)“消息1&消息2”中協(xié)商的DH算法,以及接受端在消息4中給
出的DH和nonce值來(lái)生成SKEYID_d、SKEYID_a、SKEYID_e三個(gè)密鑰;
(3)5&6消息:用于雙方彼此驗(yàn)證。由“于消息1&消息2”的算法,以及“消息3&消息4”生成的三個(gè)KEY,所以在后續(xù)的“消息5&消息6”就能被加密傳送,這個(gè)過(guò)程是受SKEYID_e加密保護(hù)的。
預(yù)共享密鑰的作用:為了正確生成密鑰,每一個(gè)對(duì)等體必須找到與對(duì)方相對(duì)應(yīng)的預(yù)共享密鑰,當(dāng)有許多對(duì)等體連接時(shí),每一對(duì)對(duì)等體兩端都需要配置預(yù)共享密鑰,每一對(duì)等體都必須使用ISAKMP分組的源IP來(lái)查找與其對(duì)等體對(duì)應(yīng)的預(yù)共享密鑰(此時(shí),由于ID還沒(méi)到,彼此先用HASH來(lái)彼此驗(yàn)證對(duì)方)HASH認(rèn)證成分——SKEYID_a、cookieA、cookieB、preshare_key、SApayload、轉(zhuǎn)換集和策略。
消息5:由發(fā)起者向響應(yīng)者發(fā)送,主要是為了驗(yàn)證對(duì)端自己就是自己想要與之通信的對(duì)端。這可以通過(guò)預(yù)共享、數(shù)字簽名、加密臨時(shí)值來(lái)實(shí)現(xiàn)。
Fmhtu3S110tarre-sanuBire>555htre:5lidhyieseapziifcd130fcirs?
aEtheme:ILSrc:蘇竺敢工_88:33:薔笛;韓門(mén)軒開(kāi);33;—xD?:Ral5?tw_52;f5:Be(QO:0*:5e:3S:f5;9e)隍IntciMtProtcicaliSrc:L1>31-1-3L:10-LLZtiOU;-1-即
wI'serD-i'ajrairFr:T^:al.SrcFeri-!salonpmA;』DstFort::陽(yáng);珂5C:?
bInttfne:Sectilt-Aiiocitfcicn.Key?rc:c<
Jn:l:aToreackie:efO6flf3Zddf391^2
JUEXn恥F亡加和斡4弱玄iZCUdf袖df?.
lb曲twlz己:hmt詰詬印處為宴證
Version:L0
■rXh^asetrpe;idMZlxrFrcteciiwOkinMede:2
J=Eiktypt佃n:BnctT^ad
…??..Q.No
」…--0..瓷h?n■:icaTicnic&ti-sa
MessxseID:Q:<00000000
stmEE用于吿卻對(duì)林清息俏,己枷密
亡忑■:<!柯:?二巴三F
消息6:由響應(yīng)者向發(fā)起者發(fā)送,主要目的和第五條一樣:
ISAKJ^
工3二”吃,9.::0Si-Ctdu'::0b::ei匚昭t?rgiSObiti!
?ETherseTII,環(huán):Rafi*—.a^X:f=-9c汀馭g&2;!:=:^^!.Bit:351icc^3S-33:77ioa:0.?!3e&E--33:?rl
=7^e*neiFr&zocoLSrct"0*M-2訂乩nx?」D軋:iQtls,3?IO-b1-3:
■tier2&lc*r£CPrezee-=1^r-:Fm=:500Ditrsrt:sJODI
-7n-fr^?i:S#etr*T:aAss~:!!:aT,:flnKurUaniE電mni:Fret34:ol
I^Uiatorcookie;er063f32ddf99SbZ
較云SSSSjSSHUSSd
Yeriioa;L0
E-c.-sfi^;*-ECenTiTyPrd*ec"ien.「血:*舫饑>2>
RY…?:r:二三口£匸丫*仁4:1,:EK*學(xué)粘|
7.0**Ccntit*Xbconrfr
+?3r+=Auche^cicKo^LtnenticAiio^
15essar?ID:OeOOOCIOOOO
住二“:二“之Pah衣_It卅
在消息5和消息6中報(bào)錯(cuò)可能出現(xiàn)的原因:
(1)cryptoiskmpkey設(shè)置錯(cuò)了;(即,兩端的預(yù)共享密鑰值設(shè)置的不一樣)
五)第二階段:
匕DataFranPrDtccol.Src?orci1曲(50DhDstPorv:1500)
slaternezSecuriadKeyyinastnie-ni
對(duì)應(yīng)設(shè)備上需要配置的參數(shù)(以R202i-VM為例)
透Frszez'Z:2-z6oytez:n亠963bitz2±6byt=;cap:ursl
rHth*rn=tIIBSre:Rai?css_ES:33:77>DO:Or:3e:S3:33:77),Ds
■sO3i>h6>JL1u'Ou!la亠?,3
Quick?-kxe
f氏直嘰產(chǎn)旳=卜
413.76,10700*
10.1.1.:
lSxxBF
Quick?Qde|
孝a
48&"644970011C.1.右3
mi”:.2
-:T3P
Quid;-i7-:r
第2階段用三個(gè)消息來(lái)完成,目標(biāo)是協(xié)商IPSecSA,而且只有一種模式,快速模式(QuickMode,快速模式的協(xié)商是受第1階段建立的IKESA保護(hù)的。
葦二"棧
5J?
第二斛淨(jìng)即■齊頁(yè)制
NXot
?!(130嗎"DQ*紀(jì)箱口*BKI
牛弼t5-52?a7M1兒沖電i£_1;:4替W>
66jiatttnai*
[審砧訂
-TlH'J”a?丄
「環(huán)卜]
奇m
(1)1&2消息:發(fā)送IPSecSA的屬性,協(xié)商IPSecSA
消息1:發(fā)起者會(huì)在第一條消息中發(fā)送IPSecSA的轉(zhuǎn)換屬性。其中包含:HASH、IPSec策略提議、Nonce可可選的DH以及身份ID。
(a)HASH:是用于給接受方作為完整性檢驗(yàn)的,用于再次認(rèn)證對(duì)等體(必須)HASH的成分和5-6階段一樣;
(b)IPSec策略提議:其中包括了安全協(xié)議(AH、ESP或AH-ESP)、SPI、散列算法、模式(隧道模式或傳輸模式)、IPSecSA生命周期(必選);
(c)Nonce:用于防重放攻擊,還被用作密碼生成的材料,僅當(dāng)啟用PFS時(shí)用到;
(d)ID:描述IPSecSA是哪些地址、協(xié)議和端口建立的,即感興趣流中的IP地址;
(e)PFS(利用DH交換,可選):用了PFS后,就會(huì)在第二階段重新DH出一個(gè)數(shù)據(jù)加密KEY,這個(gè)KEY和以前IKE協(xié)商出來(lái)的KEY沒(méi)有任何關(guān)系,然后由這個(gè)新KEY來(lái)加密數(shù)據(jù),只有到這個(gè)IPSecSA的生命周期后,會(huì)再次DH出新的KEY,這樣,安全性就提高了(普通IPSecSA過(guò)期或密鑰超時(shí)時(shí),重新生成的數(shù)據(jù)加密密鑰還是根據(jù)第一階段DH出來(lái)的SKEYID_d
衍生出來(lái)的),PFS啟用后,數(shù)據(jù)加密部分使用的密鑰就沒(méi)有了衍生的過(guò)程。
(f)DH:重新協(xié)商IPSecSA時(shí)使用的密鑰(正常情況下,IPSec階段使用的密鑰都是由
SKEYID_d衍生而來(lái)的,密鑰之間都有一定的關(guān)系,就算IPSecSA超時(shí),新的KEY還是和SKEYIDd有一定的關(guān)系)。
408.763:1500110.M.?.
10-1-],2
:SAKM?
lQu.ick
418.7&410700
ISAKM?
Quick
亡
426.76445700110.1.L3
L0Z.Z.2
3KM?
Quick
Xkde
HFraae40:2^6bytescnwire11968bits)s2-^6hyt匕mcaptured{196Sbzts)
SEth-ernetII,Src:Raisecoa_3Ss7;OT:0e:5e:88:33:77)sDst:Ralseco[n_32:f5:9e[(H}:0e:5e:32:f5s9ej
?InternetProtocol,Src:().Dst:<)
UserDatagramPrctccDl,SrcP口r:!iEikzp(500J?DstPori::E3kmp'500)
SIoi-?zn亡tE亡匚xityAFroto匚口1
:nRiarorcookie:ef065132dflfS93b2
“0??二丄iun:Nojon
ID:Oxcf775af5|
Length::204
hncr?pt?c.Lili:176bytrs.t|
fciokiE:』&62i
z-1204cif&6db2
Neitpayload:Hash(B)
V?rsinn:l.a0
|Zxc-ia:igeiy?e:&uickMode'32'|
F:a-3:0x01
|1=Encrj~piion:Encrifled|
--0-="Hmit;Mu匚匸znrnit
以上數(shù)據(jù)均被加密處理;基于以上,第二階段有幾個(gè)概念需要理清:
(a)封裝模式:包括傳輸模式(Transport)和隧道模式(Tunnel)。
傳輸模式:不使用新的IP頭部,IP頭部中的源/目的IP為通信的兩個(gè)實(shí)點(diǎn)(當(dāng)通信點(diǎn)等于加密點(diǎn)時(shí),使用傳輸模式);
隧道模式:需要封裝一個(gè)新的IP頭部,新的IP頭部中源/目的IP為中間的VPN網(wǎng)關(guān)設(shè)備地址(當(dāng)通信點(diǎn)不等于加密點(diǎn)時(shí)使用隧道模式);
J
日
U
Remcrteoffice
intptppt
torporateoffice
HR<;prvpr$
HK?r?pr<
雀道檢式
Remoteoffice
3nternet
匚orporateoffice
二者比較:
從安全性來(lái)講,隧道模式優(yōu)于傳輸模式,隧道模式可以完全地對(duì)原始IP數(shù)據(jù)報(bào)進(jìn)行驗(yàn)證和加密以及可以使用IPSec對(duì)等體的IP地址來(lái)隱藏客戶(hù)機(jī)的IP地址;
從性能來(lái)講,隧道模式比傳輸模式占用更多帶寬,一個(gè)額外的IP頭;
因此,到底使用哪種模式需要按照實(shí)際的應(yīng)用場(chǎng)景進(jìn)行權(quán)衡。
IPHDR
Transportmode
IPHDR
VPNHDR
Tunnelmode
VPNHDR
IPHDR
Data
VPN
TVa.e.-
NewIPHDR
(b)安全聯(lián)盟生存周期:
所有在安全策略視圖下沒(méi)有單獨(dú)配置生存周期的安全聯(lián)盟,都采用全局生存周期。IKE(因特網(wǎng)密鑰交換協(xié)議)為IPSec協(xié)商建立安全聯(lián)盟(SA)時(shí),采用本地設(shè)置的和對(duì)端提議的生存周期中較小的一個(gè)(即,當(dāng)兩端配置的生存周期不一致時(shí),那么就用最小的那個(gè)值)。安全聯(lián)盟生存周期的輸入范圍:30?604800;所以,兩端設(shè)備配置的生存周期不一致不會(huì)導(dǎo)致隧道無(wú)法建立。
(c)采用的安全協(xié)議:
安全提議中需要選擇所采用的安全協(xié)議,用于為IP數(shù)據(jù)包提供安全。目前可選的安全協(xié)議有AH(驗(yàn)證報(bào)頭)和ESP(封裝安全有效負(fù)載),也可以指定同時(shí)使用AH和ESP(AH-ESP)。安全隧道兩端所選擇的安全協(xié)議必須一致。
所以,第二階段協(xié)商不起來(lái),兩端協(xié)議是否一致是一個(gè)排查重點(diǎn)。
AH協(xié)議:類(lèi)似于ICMP、TCP、UDP的IP協(xié)議,分配給它的協(xié)議號(hào)為51。提供如下安全功能:數(shù)據(jù)完整性服務(wù)、提供抗數(shù)據(jù)回放攻擊、不提供數(shù)據(jù)加密性(不加密)。
RouterB
RouterA
Alldataincleartext
(note:AH是不提供數(shù)據(jù)的加密的,所以在報(bào)文中可以看到完整的DATA部分)AH報(bào)文頭格式:
認(rèn)狂范團(tuán)(IPHeede申可旳爲(wèi)外1
乃葩境二:
NextHeuderPaykiadLenyQiIResurvud
SequenceNumber
AOlli&nticatiuriDala
AH在兩種模式下的封裝:
IPHDR
TCPHDR
Authentfcated
AHHDR
Authenticated倫丁昜船字段
傳輸模式:“除了易變字段”指的是:對(duì)IP報(bào)文中可變域以外的數(shù)據(jù)進(jìn)行認(rèn)證隧道模式:“除了易變字段”指的是:對(duì)新IP報(bào)文頭部中可變域以外的數(shù)據(jù)進(jìn)行認(rèn)證
ESP協(xié)議:協(xié)議號(hào)為50,提供如下功能:提供數(shù)據(jù)加密性(支持加密)、提供數(shù)據(jù)完整性、提供抗回放攻擊能力;
ESP的數(shù)據(jù)驗(yàn)證和完整性服務(wù)只包括ESP的頭和有效載荷(不包括外部的IP頭部(note:ESP是提供加密的,所以抓取的ESP報(bào)文,是看不到原來(lái)被封裝的數(shù)據(jù)部分)
RouterA
RouterB
Datapayloadisencrypted
IPHDR
Encrypted
Authentici
Internet
!褲電菸駛那密了
?逼S嬉提供就據(jù)機(jī)密性;
?通過(guò)認(rèn)證提供數(shù)搗葩整性;
?遽觀(guān)沖列
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年黑龍江貨車(chē)資格從業(yè)資格證考試答案
- 2025年德州道路貨運(yùn)駕駛員從業(yè)資格考試題庫(kù)
- 博物館建設(shè)設(shè)備樁機(jī)租賃協(xié)議
- 招投標(biāo)法規(guī)在大數(shù)據(jù)行業(yè)的實(shí)施
- 南寧市房屋租賃合同:電競(jìng)館租賃
- 燃?xì)夤緭岆U(xiǎn)車(chē)輛管理
- 保安隊(duì)長(zhǎng)聘用合同樣本模板
- 塑料制品危險(xiǎn)品儲(chǔ)存指南
- 藝術(shù)品交易服務(wù)合同簽訂注意事項(xiàng)
- 古建筑磚石修復(fù)合同
- 2025版中考物理復(fù)習(xí)課件 09 專(zhuān)題五 類(lèi)型3 電學(xué)綜合應(yīng)用題(不含效率)(10年6考)
- 2024年度商標(biāo)授權(quán)及區(qū)域獨(dú)家代理合同范本3篇
- 軟科職教:2024年度中國(guó)高職院校升本分析報(bào)告
- 期末復(fù)習(xí)試題(試題)-2024-2025學(xué)年五年級(jí)上冊(cè)數(shù)學(xué) 北師大版
- 多無(wú)人機(jī)路徑規(guī)劃
- 河南省鄭州市2023-2024學(xué)年四年級(jí)上學(xué)期語(yǔ)文期末試卷(含答案)
- 2024年便利店?duì)I業(yè)員工作總結(jié)范文(2篇)
- 工會(huì)新聞寫(xiě)作培訓(xùn)課題
- 統(tǒng)計(jì)年報(bào)和定報(bào)培訓(xùn)
- 小說(shuō)改編權(quán)改編作品轉(zhuǎn)讓合同
- 隧道坍塌應(yīng)急演練
評(píng)論
0/150
提交評(píng)論