安全協(xié)議第五章會(huì)話安全SSH.ppt_第1頁(yè)
安全協(xié)議第五章會(huì)話安全SSH.ppt_第2頁(yè)
安全協(xié)議第五章會(huì)話安全SSH.ppt_第3頁(yè)
安全協(xié)議第五章會(huì)話安全SSH.ppt_第4頁(yè)
安全協(xié)議第五章會(huì)話安全SSH.ppt_第5頁(yè)
已閱讀5頁(yè),還剩31頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第5章會(huì)話安全SSH 楊禮珍 作業(yè) P 179 思考題1 4 9 5 1SSH的歷史及現(xiàn)狀 SSH的提出SSH SecureShell 安全Shell 是基于TCP的應(yīng)用層協(xié)議 能對(duì)數(shù)據(jù)進(jìn)行加密處理 為保障遠(yuǎn)程登錄及交互式會(huì)話安全而提出 1995年 TatuYlonen首次設(shè)計(jì)并實(shí)現(xiàn)了SSH 該版本稱為SSH1 之后TatuYlonen創(chuàng)立了SSH通信安全公司 htt 提供企業(yè)級(jí)的SSH安全方案和產(chǎn)品 1998年 SSH通信公司推出SSH2 2005年 SSH通信公司推出SSHG3 2006年1月 SSH2正式成為IETF標(biāo)準(zhǔn) 文檔為RFC4250 4256 2008年2月 SecSh工作組公布兩個(gè)草案 描述了SSH如何使用ECC和UMAC 5 2SSH的功能及組成 SSH為應(yīng)用層協(xié)議 基于TCP 使用端口22 SSH所提供服務(wù) 機(jī)密性 完整性保護(hù) 身份認(rèn)證功能 必選的服務(wù)器認(rèn)證 可選的客戶端認(rèn)證 SSH所包含內(nèi)容 算法 包括加密 認(rèn)證和壓縮算法 協(xié)商 密鑰交換 服務(wù)器身份認(rèn)證 用戶身份認(rèn)證以及應(yīng)用層數(shù)據(jù)封裝處理等 5 2SSH的功能及組成 SSH協(xié)議組成 傳輸層協(xié)議 協(xié)商和數(shù)據(jù)處理 位于SSH協(xié)議套件的最底層 位于SSH協(xié)議套件的最底層 為SSH其它協(xié)議和高層應(yīng)用提供安全保護(hù) 包含了服務(wù)器身份認(rèn)證 用戶認(rèn)證協(xié)議 規(guī)定了服務(wù)器認(rèn)證客戶端用戶身份的流程和報(bào)文內(nèi)容 連接協(xié)議 將安全通道多路分解為多個(gè)邏輯通道 以便多個(gè)高層應(yīng)用共享SSH提供的安全服務(wù) SSH的組成協(xié)議關(guān)系圖 5 3SSH數(shù)據(jù)類型 SSH規(guī)定了7中數(shù)據(jù)類型來(lái)描述協(xié)議消息格式單字節(jié)整數(shù)布爾值32比特整數(shù)64比特整數(shù)字符串大整數(shù)列表 5 4SSH方法及算法描述 SSH用字符串描述算法 并給出了可用算法的標(biāo)準(zhǔn)字符串表示 如 3des cbc 表示使用CBC模式的3DES算法 blowfish cbc 表示使用CBC模式的blowfish算法 如果同時(shí)使用兩個(gè)算法 則用 列表 數(shù)據(jù)類型表示出來(lái) SSH規(guī)定了廠商實(shí)現(xiàn)中自定義名字的統(tǒng)一格式 5 5SSH傳輸協(xié)議 協(xié)議流程 5 2SSH傳輸協(xié)議 1 版本協(xié)商 協(xié)定最終使用的SSH版本 2 密鑰交換 包括算法協(xié)商 D H交換和計(jì)算密鑰 D H交換報(bào)文中包含了服務(wù)器認(rèn)證信息 SSH支持兩種認(rèn)證方法 顯式方法 報(bào)文包含數(shù)字簽名 客戶端必須獲取服務(wù)器公鑰 SSH也稱為熱鍵hotkey 隱式方法 報(bào)文包含利用預(yù)共享密鑰計(jì)算的MAC 5 2SSH傳輸協(xié)議 2 1 算法協(xié)商 通信雙方交互SSH MSG KEXINIT消息進(jìn)行算法協(xié)商 SSH MSG KEXINIT消息格式見(jiàn)p 153圖5 3 它包含以下內(nèi)容Cookie 為隨機(jī)數(shù) 用來(lái)和其它參數(shù)共同生成密鑰和會(huì)話ID 以防止重放攻擊 密鑰交換算法列表 服務(wù)器熱鍵算法列表 客戶端和服務(wù)器加密算法列表 客戶端和服務(wù)器MAC算法列表 客戶端和服務(wù)器壓縮算法列表 客戶端和服務(wù)器語(yǔ)言列表 標(biāo)志 5 2SSH傳輸協(xié)議 2 2 D H交換SSH MSG KEXDH INIT和SSH MSG KEXDH REPLY消息格式見(jiàn)p 155圖5 4 SSH MSG KEXDH REPLY消息完成以下功能 密鑰交換 雙方交換D H公開(kāi)值服務(wù)器身份認(rèn)證 對(duì)散列值H的簽名握手消息完整性 散列值H的輸入包含了 客戶端和服務(wù)器的版本信息 SSH MSG KEXINIT消息 包含了Cookie字段 熱鍵 雙方的D H公開(kāi)值以及共享密鑰 散列值H同時(shí)用于計(jì)算會(huì)話ID 可用來(lái)防止重放攻擊 5 2SSH傳輸協(xié)議 2 3 計(jì)算密鑰 SSH使用4個(gè)密鑰 通信雙方用來(lái)加密和認(rèn)證的密鑰 Ecs Esc Mcs Msc 以及分組加密中使用的IV IVcs IVsc 計(jì)算方法如下 IVcs HASH K H A 會(huì)話ID IVsc HASH K H B 會(huì)話ID Ecs HASH K H C 會(huì)話ID Esc HASH K H D 會(huì)話ID Mcs HASH K H E 會(huì)話ID Esc HASH K H F 會(huì)話ID 其中K為雙方的共享密鑰 由雙方的D H公開(kāi)值計(jì)算得到 H為消息完整性中計(jì)算的散列值 5 2SSH傳輸協(xié)議 2 4 密鑰再交換 通信雙方都可以發(fā)起密鑰再交換協(xié)商 與首次協(xié)商過(guò)程相同 2 5 密鑰交換完成后 通信雙方交互SSH MSG NEWKEYS消息以通告對(duì)等端隨后的通信流使用新的算法和密鑰保護(hù) 5 2SSH傳輸協(xié)議 3 服務(wù)請(qǐng)求 響應(yīng) 客戶端發(fā)送 SSH MSG SERVICE REQUEST消息 其中包含了所請(qǐng)求的服務(wù)名稱 服務(wù)器發(fā)送 如果同意提供客戶端提出服務(wù) 則返回SSH MSG SERVICE ACCEPT否則返回SSH MSG DISCONNECTSSH定義了兩種服務(wù) ssh userauth 用戶認(rèn)證 和ssh connection 連接請(qǐng)求 5 2SSH傳輸協(xié)議 2 報(bào)文格式Mac MAC Mcs 或Msc 序號(hào) 未加密的報(bào)文 MAC 消息驗(yàn)證碼算法未加密的報(bào)文 除mac以外的所有報(bào)文數(shù)據(jù)加密算法應(yīng)用于除mac外的其他部分 壓縮算法應(yīng)用于數(shù)據(jù)部分 注 如未協(xié)商壓縮算法則數(shù)據(jù)不需要壓縮 如未協(xié)商加密算法則不需要填充和加密 如未協(xié)商MAC算法則不需要計(jì)算mac 序號(hào)不包含在SSH報(bào)文中 SSH傳輸協(xié)議報(bào)文格式另一圖示 5 6SSH身份認(rèn)證協(xié)議 客戶利用傳輸層協(xié)議向服務(wù)器提出用戶身份認(rèn)證服務(wù)請(qǐng)求 若服務(wù)器接受請(qǐng)求 則雙方開(kāi)始執(zhí)行SSH身份認(rèn)證協(xié)議 身份認(rèn)證協(xié)議在傳輸層協(xié)議提供的安全通道上運(yùn)行 即身份認(rèn)證協(xié)議的消息封裝在傳輸層報(bào)文的數(shù)據(jù)區(qū)中 一次身份認(rèn)證失敗 客戶端可再次提出認(rèn)證請(qǐng)求 但重試的時(shí)間間隔和次數(shù)是有限制的 5 6 1身份認(rèn)證過(guò)程 身份認(rèn)證過(guò)程主要由三種消息完成 客戶端所發(fā)出的認(rèn)證請(qǐng)求 格式見(jiàn)p 159圖5 7SSH MSG USERAUTH REQUEST服務(wù)器應(yīng)答 格式見(jiàn)p 160圖5 8服務(wù)器接受認(rèn)證的應(yīng)答 SSH MSG USERAUTH SUCCESS服務(wù)器拒絕認(rèn)證的應(yīng)答 SSH MSG USERAUTH FAILURE 5 6 1身份認(rèn)證過(guò)程 SSH支持4種用戶身份認(rèn)證方法 publickey 公鑰認(rèn)證 客戶端向服務(wù)器提供簽名password 口令認(rèn)證 客戶端向服務(wù)器提供口令hostbased 基于主機(jī)的認(rèn)證 由用戶宿主機(jī)代理用戶完成身份認(rèn)證 用于主機(jī)有多個(gè)客戶的情形 none 不使用認(rèn)證 用于客戶端身份不敏感和查詢服務(wù)器支持的認(rèn)證方法的情形下 5 6 2公鑰認(rèn)證方法 第一輪交互用以通告簽名算法和證書(shū)SSH MSG USERAUTH REQUEST消息 認(rèn)證方法 名字段被設(shè)置為 publickey 與認(rèn)證方法相關(guān)的字段 的格式見(jiàn)P 161圖5 10 包含了標(biāo)志 設(shè)置為FLASE 簽名算法名 證書(shū) 第二輪進(jìn)行身份認(rèn)證SSH MSG USERAUTH REQUEST消息 認(rèn)證方法 名字段被設(shè)置為 publickey 與認(rèn)證方法相關(guān)的字段 的格式見(jiàn)P 161圖5 11 包含了標(biāo)志 設(shè)置為TRUE 簽名算法名 公鑰和簽名 5 6 2公鑰認(rèn)證方法 5 6 3口令認(rèn)證方法 認(rèn)證過(guò)程 客戶端發(fā)送的請(qǐng)求消息包含 password 認(rèn)證方法 標(biāo)志字段設(shè)置為FALSE 口令字符串 服務(wù)器的響應(yīng)可能為 成功失敗若口令過(guò)期 發(fā)送SSH MSG USERAUTH PASSWD CHANGEREQ客戶端再次發(fā)出請(qǐng)求消息 其中標(biāo)志字段設(shè)置為TRUE 包含原口令和新口令服務(wù)器響應(yīng) 5 6 4基于主機(jī)認(rèn)證方法 使用數(shù)字簽名驗(yàn)證身份流程與公鑰認(rèn)證相似和公鑰認(rèn)證的方法的不同之處 用客戶端主機(jī)的私鑰 公鑰認(rèn)證使用用戶的私鑰 進(jìn)行簽名 服務(wù)器用客戶端主機(jī)的公鑰 公鑰認(rèn)證使用用戶的公鑰 驗(yàn)證簽名 前提 主機(jī)已通過(guò)用戶身份驗(yàn)證 客戶端主機(jī)充當(dāng)用戶身份認(rèn)證代理 使用場(chǎng)合 主機(jī)有多個(gè)客戶 5 6 4基于主機(jī)認(rèn)證方法 認(rèn)證過(guò)程 客戶端的請(qǐng)求消息包含 認(rèn)證方法名 字段設(shè)置為hostbased 簽名算法 證書(shū) 用戶端主機(jī)的FQDN 用戶名 簽名 具體格式見(jiàn)P 1625 12 服務(wù)器根據(jù)以下內(nèi)容驗(yàn)證客戶端身份 證書(shū)是否合法給出的用戶是否允許在這臺(tái)主機(jī)登錄簽名是否正確客戶端主機(jī)的合格域名FQDN是否與報(bào)文的源地址一致 服務(wù)器給出成功或者失敗的應(yīng)答 5 7SSH連接協(xié)議 連接協(xié)議如何運(yùn)行 在傳輸層提供的安全通道上進(jìn)行客戶端通過(guò)SSH傳輸層協(xié)議發(fā)出連接協(xié)議服務(wù)請(qǐng)求后 即可開(kāi)始連接協(xié)議流程 隧道 傳輸層協(xié)議建立的安全通道稱為 隧道 通道 所有的終端會(huì)話和被轉(zhuǎn)發(fā)的連接稱為 通道 隧道和通道的關(guān)系 一個(gè)隧道可以包含多條隧道 即SSH的安全通道可以同時(shí)為多個(gè)不同的應(yīng)用提供安全服務(wù) SSH連接協(xié)議規(guī)定了四種通道類型 session 運(yùn)行遠(yuǎn)程程序 x11 X視窗系統(tǒng) 遠(yuǎn)程服務(wù)器運(yùn)行 在本地顯示 forwarded tcpip 遠(yuǎn)程端口轉(zhuǎn)發(fā) 和direct tcpip 本地端口轉(zhuǎn)發(fā) 5 7 1基本通道操作 所有通道操作都包含以下過(guò)程建立通道數(shù)據(jù)傳輸關(guān)閉通道不同通道存在細(xì)節(jié)差異下圖是基本通道操作流程 SSH連接協(xié)議基本通道操作 5 7 2交互式會(huì)話通道操作 如利用通道交互式會(huì)話操作 SSH MSG CHANNEL OPEN中指定通道類型為 session 通道建立后 發(fā)送SSH MSG CHANNEL REQUEST消息進(jìn)行各種交互式操作 該消息格式見(jiàn)p 171圖5 20 如該消息的標(biāo)志為 TRUE 時(shí)需要對(duì)方應(yīng)答 對(duì)方應(yīng)返回以下消息之一 SSH MSG CHANNEL SUCCESSSSH MSG CHANNEL FAILUE 5 7 2交互式會(huì)話通道操作 SSH MSG CHANNEL REQUEST消息格式中的 請(qǐng)求類型 有以下11種 偽終端請(qǐng)求 X11請(qǐng)求發(fā)送環(huán)境變量啟動(dòng)shell啟動(dòng)可執(zhí)行命令啟動(dòng)子系統(tǒng)窗口更改數(shù)據(jù)流控制信號(hào)退出狀態(tài)退出信號(hào) 5 7 3轉(zhuǎn)發(fā)TCP IP連接通道操作1 TCP IP端口轉(zhuǎn)發(fā)原理 用于保護(hù)SMTP IMAP等應(yīng)用安全 5 7 3轉(zhuǎn)發(fā)TCP IP連接通道操作2 TCP IP端口轉(zhuǎn)發(fā)流程 如何使用TCP IP端口轉(zhuǎn)發(fā)功能 若SSH客戶端向服務(wù)器轉(zhuǎn)發(fā)連接 不必提出請(qǐng)求若SSH客戶端需要服務(wù)器將到達(dá)其某個(gè)端口的連接轉(zhuǎn)發(fā)到本地 則必須使用 全局 請(qǐng)求消息SSH MSG GLOBAL REQUEST明確提出請(qǐng)求 格式見(jiàn)p 175圖5 22 以通告對(duì)方接受的IP地址和端口號(hào) 同時(shí)使用該消息取消端口轉(zhuǎn)發(fā)功能 5 8SSH應(yīng)用 SSH的兩類應(yīng)用 安全的交互式會(huì)話或遠(yuǎn)程執(zhí)行命令 SSH連接協(xié)議已有詳細(xì)定義 典型應(yīng)用有 SSH文件傳輸協(xié)議SFTP 基于SSH2 是SSH的子系統(tǒng) 啟動(dòng)過(guò)程 使用SSH MSG CHANN

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論