精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

IPSec和SSL國密數據包分析

jf_vLt34KHi ? 來源:Tide安全團隊 ? 2023-05-18 09:44 ? 次閱讀

0x01 IPSec

IPSec協議實際上是一套協議集合,包括IKE協議、認證頭(AuthenticationHeader,AH)協議、封裝安全載荷(Encapsulating Security Payload,ESP)協議和用于網絡身份鑒別及加密的一些算法等。

從工作流程上看,IPSec協議可分為兩個環節:IKE是第一個環節,完成通信雙方的身份鑒別、確定通信時使用的IPSec安全策略和密鑰;第二個環節是使用數據報文封裝協議和IKE中協定的IPSec安全策略和密鑰,實現對通信數據的安全傳輸。

IPSec工作模式分為傳輸模式隧道模式。傳輸模式一般用于端到端的應用場景;隧道模式一般用于創建虛擬專用網隧道鏈路。

1、IKE協議

通過數據包對IKE進行詳細分析和介紹

IKE協議用于鑒別通信雙方身份、創建安全聯盟(Security Association,SA)、協商加密算法以及生成共享會話密鑰等,其中ISAKMP是IKE的核心協議,定義了建立、協商、修改和刪除SA的過程和報文格式,并定義了密鑰交換數據和身份鑒別數據的載荷格式。ISAKMP的一個核心功能就是創建和維護SA。SA作為通信雙方之間對某些要素的一種協定,是IPSec的基礎,協定的內容包括數據報文封裝協議、IPSec工作模式、密碼算法等安全策略和密鑰。IPSec的兩種封裝協議(AH和ESP)均使用SA中協定的內容保護通信安全。

另外,SA是單向的,一個SA為單一通信方向上傳輸的數據提供一種安全服務,通信雙方需要產生屬于自己的SA。若使用多個安全服務保護數據流,例如,同時提供認證和加密服務,那么應該創建多個SA來分別實現不同安全服務對數據的保護,即每個SA對應一個安全服務。

IP Sec 9個包分析 主模式(前6個包)+ 快速模式(后3個包)

第一階段主模式:ISAKMP協商階段

工作流程如下圖所示:

9660a39a-f4af-11ed-90ce-dac502259ad0.png

下面針對數據包來分析主模式的協商過程

966bbdc0-f4af-11ed-90ce-dac502259ad0.png

包一:發起端協商SA,使用的是UDP協議,端口號是500,上層協議是ISAKMP,該協議提供的是一個框架,里面的負載Next payload類似模塊(SA載荷),可以自由使用??梢钥吹桨l起端提供了自己的SPI值,以及SA的加密套件,加密套件主要是加密算法、雜湊算法、認證算法、秘鑰長度、生存時間等。

96764ff6-f4af-11ed-90ce-dac502259ad0.png

包二:響應端收到發送端發送的加密套件后,對比自己是否有相對應的加密套件,如果有就使用和發送端相同的加密套件加密數據,把自己的SPI值和選擇好的加密套件發送給發送端。如果沒有相同加密套件則IKE建立失敗響應。

967f8e18-f4af-11ed-90ce-dac502259ad0.png

在包二中響應方同時還發送自己的簽名證書和加密證書(雙證書)

96880d4a-f4af-11ed-90ce-dac502259ad0.png968f343a-f4af-11ed-90ce-dac502259ad0.png

包三和包四:

在包三和包四中,雙方進行數據交換,交換的內容包括Nonce載荷(Ni和Nr)、身份標識載荷(IDi和IDr)等,其中Nonce載荷是生成工作密鑰所必需的參數。這些數據使用雙方各自隨機生成的臨時密鑰SK進行對稱加密保護,SK用對方的加密證書中的公鑰進行加密保護。雙方各自對交換數據進行數字簽名,這一過程使用簽名證書對應的私鑰來完成,并將簽名結果發給對方。同時,發送端的雙證書也在包三中發給響應端,這樣發送端和響應端都有了對方的簽名和加密證書,可以使用對方的公鑰。

包三和包四完成后,參與通信的雙方利用Nonce載荷等交換數據經偽隨機函數(PRF)派生出基本密鑰參數,并通過PRF用基本密鑰參數派生出三個對稱密鑰,分別是用于產生會話密鑰的密鑰參數、用于驗證完整性和數據源身份的工作密鑰及用于加密的工作密鑰(注意這里沒有生成會話密鑰)。

9695b53a-f4af-11ed-90ce-dac502259ad0.png969c3e64-f4af-11ed-90ce-dac502259ad0.png

包五和包六:發送端和響應端對前面協商過程內容進行鑒別確認。這兩個消息中傳遞的信息使用包三和包四產生的用于機密的工作密鑰來做對稱加密保護。對稱密碼算法由一開始雙方協商的算法,這里使用的是SM4-CBC。為了檢查交換內容,雙方通過計算HMAC驗證身份和協定的SA信息。第一階段主模式到此結束。

第二階段快速模式:IPSec SA協商階段

第二階段快速模式的工作流程如下圖所示:

96a34a10-f4af-11ed-90ce-dac502259ad0.png

快速模式用于協商建立通信時使用的IPSec SA,包括IPSec安全策略和會話密鑰(會話密鑰在快速模式中產生)。

會話密鑰有兩個,均為對稱密鑰,分別用于通信數據加密,以及完整性校驗和數據源身份鑒別。

快速模式交換的數據由主模式協定的ISAKMP SA提供保護,即除了ISAKMP頭外所有的載荷都是加密的,加密密鑰選用用于加密的工作密鑰。同時,在ISAKMP頭之后會緊跟一個HMAC載荷,用于驗證交換數據的完整性和數據源身份。

在快速模式中,數據包都是加密的,簡單放一張快速模式數據包的圖片看下吧

96ab60f6-f4af-11ed-90ce-dac502259ad0.png

最后,將主模式包三和包四中派生出的用于產生會話密鑰的密鑰參數經PRF計算得到會話密鑰。PRF的輸入還包括雙方的Nonce載荷、從主模式建立的ISAKMP SA中獲得的協議值和安全參數索引(SPI),其中SPI用于唯一標識一個數據報文對應的SA。用于加密的會話密鑰與用于驗證完整性和數據源身份的會話密鑰則按照密碼算法要求的長度,從會話密鑰素材中依次選取。

野蠻模式

除IKE模式外,還有野蠻模式

書上沒有對野蠻模式進行講解,我這也沒有野蠻模式數據包,就簡單說下

野蠻模式只用到三條信息:前兩條消息1和2用于協商IKE安全提議,交換Diffie-Hellman公共值、必需的輔助信息以及身份信息,并且消息2中還包括響應方發送身份信息供發起方認證,消息3用于響應方認證發起方。

2、AH協議

AH協議提供了數據源身份鑒別、完整性和抗重放等安全功能,沒有提供加密服務。因此AH協議不能單獨用于封裝IP數據報文,應和ESP協議一起使用。AH協議不支持NAT穿越。

AH協議的主要作用是為整個IP數據報文(IP頭和IP載荷)提供高強度完整性校驗,以確保被篡改過的數據包可以被檢查出來。在傳輸模式和隧道模式下有不同的放置位置,如下圖所示。

96b3a64e-f4af-11ed-90ce-dac502259ad0.png

3、ESP協議

ESP協議相對于AH協議增加了對數據報文的加密功能,ESP協議可以單獨使用。在ESP協議和AH協議結合使用時,無需開啟ESP提供數據源身份鑒別服務。ESP協議支持NAT穿越。

ESP頭在傳輸模式和隧道模式中分別有不同的放置位置,保護范圍也有所不同,如下圖所示:

96bc9d26-f4af-11ed-90ce-dac502259ad0.png

4、IPSec VPN產品

IPSec VPN產品工作在網絡層,對應用層協議完全透明。

IPSec VPN產品主要用于站到站端到站模式,也用于端到端模式(較少)。其中站到站和端到站采用隧道模式,端到端可以采用隧道模式或者傳輸模式。

前面在分析數據包時,可以看到算法對應的屬性值,如下表所示:

96c3d12c-f4af-11ed-90ce-dac502259ad0.png96ce2262-f4af-11ed-90ce-dac502259ad0.png

IPSec VPN產品的密鑰體系也分為三層:設備密鑰、工作密鑰和會話密鑰。

①設備密鑰:非對稱密鑰對,包括簽名密鑰對(設備內部產生)和加密密鑰對(外部密鑰管理機構產生),用于實體身份鑒別、數字簽名和數字信封等。其中,用于簽名的設備密鑰對在IKE第一階段提供基于數字簽名的身份鑒別服務;用于加密的設備密鑰對在IKE第一階段對交換數據提供保密性保護。

②工作密鑰:對稱密鑰,在IKE第一階段經密鑰協商派生得到,用于對會話密鑰交換過程的保護。其中,用于加密的工作密鑰為IKE第二階段交換的數據提供保密性保護;用于完整性校驗的工作密鑰為IKE第二階段傳輸的數據提供完整性保護及對數據源進行身份鑒別。

③會話密鑰:對稱密鑰,在IKE第二階段經密鑰協商派生得到,直接用于數據報文及報文MAC的加密和完整性保護。其中,用于加密的會話密鑰為通信數據和MAC值提供保密性保護;用于完整性校驗的會話密鑰為通信數據提供完整性保護。

0x02 SSL

1、SSL協議

SSL協議是由多個協議組成的兩層協議集合,如下圖所示:

96d65784-f4af-11ed-90ce-dac502259ad0.png

下層協議包括記錄層協議,主要用于封裝不同的更高層協議的數據,為數據提供保密性、完整性和數據分段等服務,特別是它可為B/S的交互提供傳輸服務的超文本傳輸協議(HTTP)提供安全服務。

上層協議分為:握手協議、密碼規格變更協議和報警協議

其中,握手協議實現了服務端和客戶端之間相互的身份鑒別、交互過程中密碼套件(公鑰密碼算法、對稱密碼算法和密碼雜湊算法的集合)與密鑰的協商;密碼規格變更協議則是用于通知對方其后的通信消息將用剛剛協商的密碼規格及相關聯的密鑰來保護;報警協議用于關閉連接的通知,以及對整個連接過程中出現的錯誤進行報警,其中關閉通知由發起者發送,錯誤報警由錯誤的發現者發送,報警消息中包含報警級別和報警內容。

(1)握手協議分析

握手協議的主要作用有兩點:一是通信雙方對彼此進行身份鑒別;二是協商連接會話所需的密碼參數(如密碼算法、密鑰),其中各類密碼算法組成的集合稱為密碼套件。

握手協議工作流程如下圖所示,主要分為四個階段,如下圖所示:

96dd8eaa-f4af-11ed-90ce-dac502259ad0.png

下面通過抓取的國密SSL數據進行分析

數據包為抓取使用密信瀏覽器訪問沃通GM SSL專用測試頁面所得

96e493c6-f4af-11ed-90ce-dac502259ad0.png

階段一:首先客戶端向服務端發送Client Hello消息,其中包含國密協議版本號、隨機數、Seesion ID和客戶端所能使用的密碼套件等信息。

若服務端未回應,則產生一個致命錯誤并斷開連接

96f15b06-f4af-11ed-90ce-dac502259ad0.png

服務端返回Server hello信息,包含隨機數和協商的密碼套件等信息,這里雙方協商的密碼套件為ECC_SM4_SM3。

在第一階段中客戶端和服務端完成了密碼套件的協商以及確定安全傳輸能力(包括協議版本、會話標識等屬性),并且產生和交換隨機數。

96faae90-f4af-11ed-90ce-dac502259ad0.png

階段二:身份鑒別和秘鑰交換,服務端發送證書Server Certificate(雙證書:簽名證書和加密證書)、服務端密鑰交換消息Server Key Exchange(簽名值,用于生成預主秘鑰)。

在階段二中,服務端如果要驗證客戶端的身份,會在發送Server Key Exchange后向客戶端發送證書請求消息Certificate Request(這里沒有進行驗證,采用的是單向鑒別),完成后發送Hello完成消息 Server Hello Done,表示Hello消息階段已經結束。

階段三:在階段二中,如果服務端對客戶端進行了身份驗證,客戶端需要在階段三中返回一個證書消息Client Certificate(這里服務端未對客戶端進行身份驗證)。

97023fac-f4af-11ed-90ce-dac502259ad0.png

客戶端發送密鑰交換消息Client Key Exchange,消息內容取決于雙方Hello消息協商出的密鑰交換算法,在這里雙方Hello消息協商出來的密鑰交換算法為ECC,則客戶端產生46字節隨機數與版本號一起構成預主密鑰,采用服務端的加密公鑰進行加密并放在Client Key Exchange消息中發送給服務端。

在階段三中如果客戶端和服務端使用的是雙向鑒別,客戶端返回證書消息Client Certificate,那么也應發送一個帶數字簽名的消息Certificate Verify供服務端驗證客戶端的身份(這里采用的單向鑒別,沒有發送)。

在對交換數據進行加密和簽名計算時,數據的加密運算采用對方加密證書中的公鑰來進行加密;簽名采用自己的簽名私鑰進行簽名。

970b458e-f4af-11ed-90ce-dac502259ad0.png

階段四:Change Cipher Spec 密碼規格變更協議

客戶端發送密碼規格變更消息(加密傳輸中每隔一段時間必須改變其加解密參數的協議,因為后續的報文都會采用剛剛協商好的加密秘鑰進行加密傳輸,因此會發送該報文),發送加密的握手結束消息。

Encrypted handshake Message 加密握手消息

客戶端告訴服務端,自己在整個握手過程中收到了什么數據,發送了什么數據。來保證中間沒人篡改報文。該數據采用剛才協商好的秘鑰進行加密,順帶驗證秘鑰。

9716b4a0-f4af-11ed-90ce-dac502259ad0.png

服務端回應密碼規格變更消息,使用剛協商的算法和密鑰,發送加密的握手結束消息。

握手過程結束,雙方開始進行數據傳輸。

SSL VPN密碼套件的屬性值定義,如下表所示。

972018b0-f4af-11ed-90ce-dac502259ad0.png

在GM/T 38636-2020 傳輸層密碼協議(TLCP)中,增加了GCM分組模式的密碼套件,刪除了SHA1密碼套件(SHA1被認為是有風險的密碼算法),如下表所示:

972a7ba2-f4af-11ed-90ce-dac502259ad0.png

(2)記錄層協議

當客戶端和服務端握手成功后,待傳輸的應用數據通過記錄層協議封裝,并得到保密性和完整性保護,分為數據分段、數據壓縮、數據添加MAC、對數據和MAC加密、附加SSL記錄報頭五步,整體流程如下圖所示:

9735f7ca-f4af-11ed-90ce-dac502259ad0.png

2、SSL VPN 產品

SSL VPN產品采用工作在應用層傳輸層之間的VPN技術。

基于B/S的架構是SSL VPN最為常見的應用方式。

SSLVPN產品用于端到站站到站兩種,其中端到站是常用的,是產品必須支持的;站到站是可選支持的。

SSL VPN產品的密鑰體系分為三層:①用于管理的設備密鑰;②用于生成工作密鑰的預主密鑰和主密鑰;③用于保護通信數據的工作密鑰。

①設備密鑰:非對稱密鑰對,包括簽名密鑰對(設備內部產生)和加密密鑰對(外部密鑰管理機構產生)。其中,簽名密鑰對用于握手協議中通信雙方的身份鑒別;加密密鑰對用于預主密鑰協商時所用交換參數的保密性保護。(在這里簽名密鑰對和加密密鑰對分別由設備內部和外部密鑰管理機構產生,但是簽名證書和加密證書均應由外部認證機構簽發)。

②預主密鑰、主密鑰:對稱密鑰,其中預主密鑰是雙方協商通過偽隨機函數(PRF)生成的密鑰素材,用于生成主密鑰;主密鑰(48字節)由預主密鑰、雙方隨機數等交換參數,經PRF計算生成的密鑰素材,用于生成工作密鑰。

③工作密鑰:對稱密鑰,對通信數據安全性提供保護,由主密鑰、客戶端隨機數、服務端隨機數、常量字符串經PRF計算生成。工作密鑰包括兩個對稱密鑰:數據加密密鑰用于數據的加密和解密;校驗密鑰用于數據的完整性計算和校驗。

0x03 總結

SSL和IPSec在商用密碼應用與安全性評估中涉及的內容比較多,能出的考點也是很多,本文簡單對一些重要內容進行了羅列和總結,結合真實數據包對IPSec和SSL協議進行了分析,包括SSL握手協議過程、IPSec IKE協商過程和三層密鑰體系及產出的位置,希望可以幫助大家理解學習。




審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • IPSec
    +關注

    關注

    0

    文章

    59

    瀏覽量

    22789
  • ESP
    ESP
    +關注

    關注

    0

    文章

    181

    瀏覽量

    33885
  • UDP協議
    +關注

    關注

    0

    文章

    69

    瀏覽量

    12681
  • SSL
    SSL
    +關注

    關注

    0

    文章

    125

    瀏覽量

    25721

原文標題:IPSec和SSL國密數據包分析

文章出處:【微信號:Tide安全團隊,微信公眾號:Tide安全團隊】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    IPsec的基礎知識

    了解IPsec迫切需要在大型公共WAN(主要是Internet)上安全地傳輸數據包。解決方案是開發許多網絡協議,其中IPsec是部署最多的協議之一。它可以從以下事實中獲益:無需對附加的同行進行任何
    發表于 08-09 13:50

    網絡數據包捕獲機制研究

    網絡數據包捕獲技術,是實現入侵檢測、網絡安全審計的關鍵技術。本文改進了國外傳統的數據包捕獲函數庫Libpcap 捕獲數據包的方案。原方案在網卡捕獲到數據包后,
    發表于 09-01 10:09 ?9次下載

    基于Jpcap的數據包捕獲器的設計與實現

    本文研究了以太網數據包的捕獲機制,實現了基于JPcap的網絡數據包捕獲工具,其基本原理是通過調用Jpcap庫捕獲本地網絡上的所有數據包,然后對數據包進行協議解碼,從而可以實
    發表于 01-15 13:47 ?38次下載

    數據包過濾原理

    數據包過濾技術數據包過濾原理              數據包過濾技術是防火墻最常用的技術。對于一
    發表于 06-16 23:44 ?4584次閱讀
    <b class='flag-5'>數據包</b>過濾原理

    什么是數據包?

    什么是數據包? 您在互聯網上做的一切都涉及到數據包。例如,您接收的每個網頁都以一系列數據包的形式傳入,您發送的每封電子郵件都以一系列數據包的形式傳出。以
    發表于 08-03 09:13 ?2008次閱讀

    移動IPV6在改進數據包發送路徑模型下性能分析

    針對現有移動IPV6中數據包發送代價較高的問題,對現有移動IPV6協議性能分析模型中數據包發送路徑進行了改進,將訪問路由發送至移動節點的數據包由代價很大的隧道發送改進為直接
    發表于 01-12 10:32 ?35次下載
    移動IPV6在改進<b class='flag-5'>數據包</b>發送路徑模型下性能<b class='flag-5'>分析</b>

    網絡數據包分析軟件wireshark的基本使用

    Wireshark(前稱Ethereal)是一個網絡數據包分析軟件。網絡數據包分析軟件的功能是截取網絡數據包,并盡可能顯示出最為詳細的網絡
    的頭像 發表于 09-29 14:48 ?3001次閱讀

    wireshark導入數據包進行分析

    linux的tcpdump命令主要用于網絡問題的調試中,通過抓取傳輸過程的數據包進行分析和調試。而wireshark則是一款功能強大,使用方便的數據包分析工具,tcpdump+wire
    的頭像 發表于 12-27 09:37 ?2082次閱讀

    IPSEC VPN 和SSL VPN的區別和選擇要點

    IPSECSSL是兩個不同的加密協議,都是可以對數據包進行加密保護,防止中間的黑客劫持數據。但是二者加密的位置卻不一樣。
    發表于 03-31 09:23 ?1550次閱讀

    IPSEC VPN 和SSL VPN的區別和選擇技巧

    IPSECSSL是兩個不同的加密協議,都是可以對數據包進行加密保護,防止中間的黑客劫持數據。但是二者加密的位置卻不一樣。
    發表于 04-06 11:30 ?2100次閱讀

    Wireshark網絡數據包分析軟件簡介

    wireshark是一個免費開源的網絡數據包分析軟件,功能十分強大??梢越厝「鞣N網絡數據包,顯示網絡數據包的詳細信息。
    的頭像 發表于 04-26 09:52 ?2749次閱讀
    Wireshark網絡<b class='flag-5'>數據包</b><b class='flag-5'>分析</b>軟件簡介

    阿里云雙十一WoSign SSLRSA雙證書首購4折

    /RSA雙SSL證書應用,滿足等保、關保、評等測評中,對網絡與通信安全的技術要求以及商用密碼合規應用要求。
    的頭像 發表于 11-09 14:48 ?459次閱讀
    阿里云雙十一WoSign <b class='flag-5'>SSL</b><b class='flag-5'>國</b><b class='flag-5'>密</b>RSA雙證書首購4折

    協議網關與IPSec VPN技術:保障數據安全傳輸的新途徑

    協議網關IPSecVPN隧道技術是一種結合了國家密碼管理局(簡稱)的加密算法和IPSecVPN隧道技術的安全通信解決方案。IPSec
    的頭像 發表于 05-28 14:24 ?1128次閱讀
    <b class='flag-5'>國</b><b class='flag-5'>密</b>協議網關與<b class='flag-5'>IPSec</b> VPN技術:保障<b class='flag-5'>數據</b>安全傳輸的新途徑

    SSL 、IPSec、MPLS和SD-WAN的對比分析

    ? VPN類型 實現方式? 應用場景? 優勢 SSL VPN 基于SSL/TLS協議 傳輸層加密 遠程訪問企業 內部資源 易于部署和管理 無需額外客戶端 IPSec VPN 基于IPsec
    的頭像 發表于 05-30 15:02 ?1440次閱讀

    恒訊科技分析IPSecSSL/TLS相比,安全性如何?

    IPSecSSL/TLS都是用于保護網絡通信安全的協議,但它們在實現方式、安全性側重點、兼容性以及使用場景上存在一些顯著的區別。1、安全性方面:IPSec主要關注網絡層的安全性,提供端到端的保護
    的頭像 發表于 10-23 15:08 ?257次閱讀
    恒訊科技<b class='flag-5'>分析</b>:<b class='flag-5'>IPSec</b>與<b class='flag-5'>SSL</b>/TLS相比,安全性如何?