版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
實(shí)際上,幾乎所有的商業(yè)、大多數(shù)政府機(jī)構(gòu)和許多個(gè)人都有Web站點(diǎn)。訪問(wèn)互聯(lián)網(wǎng)的個(gè)人和公司的增長(zhǎng)速度非常快,且他們均使用圖形界面的Web瀏覽器。因此,許多公司都熱衷于在Web上進(jìn)行電子商務(wù)。但是,現(xiàn)實(shí)情況是互聯(lián)網(wǎng)和Web容易受到攻擊,大家越來(lái)越意識(shí)到這種現(xiàn)實(shí),因此安全Web服務(wù)應(yīng)運(yùn)而生。第17章傳輸層安全WWW本質(zhì)上是一種運(yùn)行于互聯(lián)網(wǎng)和TCP/IP的客戶/服務(wù)器應(yīng)用。同樣地,到目前為止,本書(shū)討論的安全工具和方法也適用于Web安全性。但是,Web使用情況的的以下特點(diǎn)表明需要量身定制的安全工具:雖然Web瀏覽器非常易于使用,Web服務(wù)器相對(duì)而言易于配置和管理,Web內(nèi)容也易于開(kāi)發(fā),但其底層的軟件卻非常復(fù)雜。復(fù)雜的軟件可能隱藏潛在的安全漏洞。在Web使用的短短歷史中,各種新的和升級(jí)的系統(tǒng)容易受到各種各樣的安全性攻擊。Web服務(wù)器可以作為公司或機(jī)構(gòu)整個(gè)計(jì)算機(jī)系統(tǒng)的核心。一旦Web服務(wù)器被攻陷,攻擊者不僅可以訪問(wèn)Web服務(wù),也可獲得與之相連的整個(gè)本地站點(diǎn)服務(wù)器的數(shù)據(jù)和系統(tǒng)訪問(wèn)權(quán)限。17.1Web安全性考思考第17章傳輸層安全Web安全威脅表17.1總結(jié)了在使用Web時(shí)將要面臨的一些安全威脅的類別。一種歸類的方式是將它們區(qū)分為被動(dòng)和主動(dòng)攻擊:被動(dòng)攻擊包括在瀏覽器和服務(wù)器通信時(shí)竊聽(tīng),獲得原本被限制使用的權(quán)限;主動(dòng)攻擊包括偽裝成其他用戶、篡改客戶和服務(wù)器之間的消息或篡改Web站點(diǎn)的信息。另一種分類方法是按威脅的位置分類:Web服務(wù)器、Web瀏覽器和服務(wù)器與瀏覽器之間的網(wǎng)絡(luò)通信。服務(wù)器與瀏覽器的安全問(wèn)題是計(jì)算機(jī)系統(tǒng)自身的安全性問(wèn)題,通信的安全則是本章將要論述的重點(diǎn)。17.1Web安全性考思考Web流量安全方法現(xiàn)在已有許多提供Web安全性的方法。這些方法的使用機(jī)理是相似的,只是各自的應(yīng)用范圍及在TCP/IP協(xié)議棧中的相對(duì)位置不同。下圖說(shuō)明了這些區(qū)別。提供Web安全性的一種方法是使用IP安全性(IPsec)[如下圖所示]。使用IPsec的優(yōu)點(diǎn)在于,它對(duì)終端用戶和應(yīng)用均是透明的,并且提供通用的解決方案。另外,IPsec還具有過(guò)濾功能,以便僅用IPsec處理所選的流量。17.1Web安全性考思考另一種解決方案就是在TCP之上實(shí)現(xiàn)安全性[如下圖所示]。這種方法最先的例子是安全套接層(SSL,SecureSocketsLayer)和被稱為第二代互聯(lián)網(wǎng)標(biāo)準(zhǔn)的傳輸層安全協(xié)議(TLS,TaansportLayerSecurity)。對(duì)應(yīng)的有兩種實(shí)現(xiàn)方法,一般來(lái)說(shuō),SSL(或TLS)可以作為潛在的協(xié)議對(duì)應(yīng)用透明,也可以在特定包中使用,如Netscape和IE瀏覽器均提供SSL,大多數(shù)Web服務(wù)器都實(shí)現(xiàn)了此協(xié)議。17.1Web安全性考思考特定安全服務(wù)在特定應(yīng)用中得以體現(xiàn)[如下圖所示]。這種方法的好處在于它是為給定應(yīng)用定制的。17.1Web安全性考思考安全服務(wù)中應(yīng)用最廣泛的是安全套接層(SSL)和后繼的被稱為傳輸層安全(TLS)的Internet標(biāo)準(zhǔn),后者在RFC5246中定義。SSL是一個(gè)通用服務(wù),由依賴于TCP的一組協(xié)議實(shí)現(xiàn)。在該層,有兩個(gè)實(shí)現(xiàn)選擇。對(duì)于完全通用,SSL(或者TLS)可以被作為下層協(xié)議套件,而且對(duì)應(yīng)用程序是透明的?;蛘撸琒SL可以被嵌入在特定的包里。比如說(shuō),絕大部分瀏覽器開(kāi)始配備了SSL,而且絕大部分Web服務(wù)器實(shí)施了這個(gè)協(xié)議。本節(jié)主要討論SSLv3。在下一節(jié),將介紹SSLv3和TLS的主要區(qū)別。17.2安全套接層第17章傳輸層安全SSL體系結(jié)構(gòu)SSL為T(mén)CP提供可靠的端到端安全服務(wù)。SSL不是簡(jiǎn)單的單個(gè)協(xié)議而是兩層協(xié)議,如下圖所示:17.2安全套接層SSL記錄協(xié)議(SSLRecordProtocol)為高層協(xié)議提供基本的安全服務(wù)。特別是為Web客戶端/服務(wù)器交互提供傳送服務(wù)的HTTP協(xié)議可以在上層訪問(wèn)SSL。SSL協(xié)議上定義了三個(gè)高層協(xié)議:握手協(xié)議、修改密碼規(guī)范協(xié)議和警報(bào)協(xié)議。這些SSL上層協(xié)議用于對(duì)SSL交換進(jìn)行管理。SSL中包含兩個(gè)重要概念:SSL會(huì)話和SSL連接。在規(guī)范中定義如下:連接:連接是提供核實(shí)服務(wù)類型的一種傳輸(OSI層次模型定義)。對(duì)SSL來(lái)說(shuō),連接表示的是對(duì)等網(wǎng)絡(luò)關(guān)系,且連接是短暫的,每個(gè)連接與一個(gè)會(huì)話相關(guān)。會(huì)話:SSL會(huì)話是一個(gè)可與段和服務(wù)器間的關(guān)聯(lián),會(huì)話是通過(guò)握手協(xié)議創(chuàng)建的,定義了一組多個(gè)連接共享的密碼安全參數(shù)。會(huì)話可用于減少為每次連接建立安全參數(shù)的昂貴協(xié)商費(fèi)用。17.2安全套接層在多方會(huì)談中(如客戶端和服務(wù)器間HTTP應(yīng)用),需要多個(gè)安全連接。從理論上說(shuō),可以在多方之間同時(shí)發(fā)生會(huì)話,但還沒(méi)有在實(shí)際中使用。每個(gè)會(huì)話實(shí)際上與多種狀態(tài)相關(guān),一旦會(huì)話建立,則進(jìn)入針對(duì)讀和寫(xiě)(如接收和發(fā)送)的當(dāng)前操作狀態(tài)。另外,在握手協(xié)議中,會(huì)創(chuàng)建讀掛起狀態(tài)和寫(xiě)掛起狀態(tài)。在握手協(xié)議成功完成后,掛起狀態(tài)成為當(dāng)前狀態(tài)。一個(gè)會(huì)話狀態(tài)由以下參數(shù)定義(參見(jiàn)SSL規(guī)范):會(huì)話標(biāo)志:服務(wù)器用于標(biāo)志為活動(dòng)或恢復(fù)的會(huì)話狀態(tài)所選的一個(gè)隨機(jī)字節(jié)序列。對(duì)等體證書(shū):對(duì)等體的X509.v3證書(shū),此狀態(tài)元素可以為空。壓縮方法:在加密前使用的壓縮數(shù)據(jù)的算法。17.2安全套接層密鑰規(guī)范:描述主要數(shù)據(jù)加密算法(如:AES等)和計(jì)算MAC的散列算法(MD5或SHA-1),同時(shí)也定義如散列大小等加密屬性。主密鑰:客戶和服務(wù)器間48字節(jié)的共享密碼??苫謴?fù)性:表明會(huì)話是否可被用于初始化新連接的標(biāo)志。連接狀態(tài)可以用以下參數(shù)定義:服務(wù)器和客戶端隨機(jī)數(shù):服務(wù)器和客戶端為每個(gè)連接選擇字節(jié)序列。服務(wù)器寫(xiě)MAC密碼:服務(wù)器發(fā)送數(shù)據(jù)時(shí)在MAC操作中使用的密碼。客戶端寫(xiě)MAC密碼:客戶端發(fā)送數(shù)據(jù)時(shí)在MAC操作中使用的密碼。17.2安全套接層
17.2安全套接層SSL記錄協(xié)議SSL記錄協(xié)議為SSL連接提供如下兩種服務(wù):保密性:握手協(xié)議定義了加密SSL載荷的傳統(tǒng)加密共享秘鑰。消息完整性:握手協(xié)議也定義了生成消息認(rèn)證代碼(MAC)的共享秘鑰。下圖為SSL記錄協(xié)議的整個(gè)操作過(guò)程。17.2安全套接層
17.2安全套接層
17.2安全套接層對(duì)流加密而言,壓縮消息和MAC一起被加密。注意,MAC在加密之前計(jì)算,然后將MAC和明文或壓縮后的明文一起壓縮。對(duì)分組加密而言,填充應(yīng)在MAC之后、加密之前進(jìn)行。填充的格式是一定長(zhǎng)度的填充字節(jié)后跟1字節(jié)的填充長(zhǎng)度。整個(gè)填充域的長(zhǎng)度是使得總長(zhǎng)度(明文+MAC+填充域的長(zhǎng)度)為規(guī)定的加密分組長(zhǎng)度整數(shù)倍的最小長(zhǎng)度。例如,明文(或如果使用了壓縮則為壓縮文本)長(zhǎng)度為58字節(jié),MAC長(zhǎng)度為20字節(jié)(使用SHA-1),使用分組長(zhǎng)度為8字節(jié)的加密算法(如DES),這加上填充長(zhǎng)度域的1字節(jié)總共79字節(jié),為了達(dá)到8的整數(shù)倍,這需要增加1字節(jié)的填充。17.2安全套接層
17.2安全套接層下圖為SSL記錄格式:17.2安全套接層修改密碼規(guī)范協(xié)議修改密碼規(guī)范協(xié)議是SSL三個(gè)特定協(xié)議之一,也是最簡(jiǎn)單的一個(gè)。協(xié)議由一個(gè)僅包含1字節(jié)的值為1的消息組成[如下圖所示],此消息使得掛起狀態(tài)被復(fù)制到當(dāng)前狀態(tài)中,用于更新此連接使用的密碼組。17.2安全套接層警報(bào)協(xié)議警報(bào)協(xié)議用于向?qū)Φ葘?shí)體傳遞SSL相關(guān)的警報(bào)。和使用SSL的其他應(yīng)用一樣,警報(bào)消息按照當(dāng)前狀態(tài)壓縮和加密。此協(xié)議的每個(gè)消息由2字節(jié)組成[如下圖所示]。第一個(gè)字節(jié),值1表示警告,值2表示致命錯(cuò)誤,傳遞消息出錯(cuò)的嚴(yán)重程度。如果級(jí)別為致命,則SSL將立即終止連接,而會(huì)話中的其他連接將繼續(xù)進(jìn)行,但不會(huì)在此會(huì)話中建立新連接。第二個(gè)字節(jié)包含描述特定警報(bào)信息的代碼。17.2安全套接層首先,我們將通常導(dǎo)致致命錯(cuò)誤的警報(bào)列舉如下:意外消息:接收到不正確的消息。MAC記錄出錯(cuò):接收到不正確的MAC。解壓失敗:解壓函數(shù)接收到不正確的輸入(如不能解壓或解壓長(zhǎng)度大于允許值的數(shù)據(jù)長(zhǎng)度)。握手失敗:發(fā)送者無(wú)法在給定選項(xiàng)中寫(xiě)上出一個(gè)可以接受的安全參數(shù)集。非法參數(shù):握手消息中的某個(gè)域超出范圍或與其他域不一致。17.2安全套接層其余的警報(bào)如下所示:結(jié)束通知:通知接收者,發(fā)送者將不再用此連接發(fā)送任何消息。各方在關(guān)閉連接的寫(xiě)端時(shí)均需發(fā)送結(jié)束通知。無(wú)證書(shū):如果無(wú)適當(dāng)?shù)淖C書(shū)可用,在給證書(shū)請(qǐng)求者的響應(yīng)中發(fā)送此警報(bào)。證書(shū)出錯(cuò):接收的證書(shū)被破壞(如簽名無(wú)法通過(guò)驗(yàn)證)。不支持的證書(shū):不支持接收的證書(shū)類型。證書(shū)撤銷:證書(shū)超過(guò)使用期限。未知證書(shū):在處理證書(shū)時(shí),出現(xiàn)其他錯(cuò)誤,使得證書(shū)不被接受。17.2安全套接層握手協(xié)議SSL的復(fù)雜性主要來(lái)自于握手協(xié)議。此協(xié)議允許客戶端和服務(wù)器端相互認(rèn)證、協(xié)商加密和MAC算法,保護(hù)數(shù)據(jù)使用的密鑰通過(guò)SSL記錄傳送。握手協(xié)議在傳遞應(yīng)用數(shù)據(jù)之前使用。握手協(xié)議由客戶端和服務(wù)器間交換的一系列消息組成,這些消息的格式如下圖所示。每個(gè)消息由三個(gè)域組成:類型(1字節(jié)):表明10種消息中的一種。長(zhǎng)度(3字節(jié)):消息的字節(jié)長(zhǎng)度。內(nèi)容(大于等于0字節(jié)):與消息相關(guān)的參數(shù)。17.2安全套接層17.2安全套接層右圖表明了在客戶端與服務(wù)器之間建立邏輯連接的初始交換。此次交換由4個(gè)階段組成。17.2安全套接層階段1.建立安全功能:此階段用于建立初始的邏輯連接,并建立與之相關(guān)聯(lián)的安全功能,客戶端發(fā)起這個(gè)交換,發(fā)送client_hello消息。客戶端發(fā)送出消息client_hello后,會(huì)等待包含與消息client_hello參數(shù)相同的server_hello消息的到來(lái)。階段2.服務(wù)器認(rèn)證和密鑰交換如果需要進(jìn)行認(rèn)證,則服務(wù)器開(kāi)始發(fā)送其證書(shū)。接著如果需要,可以發(fā)送服務(wù)器密鑰交換(server_key_exchange)消息。接下來(lái),向客戶端申請(qǐng)證書(shū)。發(fā)送server_done消息,表明服務(wù)器的hello和相關(guān)消息結(jié)束。17.2安全套接層階段3.客戶端認(rèn)證和密鑰交換:在接收到服務(wù)器完成消息之后,如果請(qǐng)求了證書(shū),客戶端需要驗(yàn)證服務(wù)器是否提供了合法證書(shū),并且檢查server_hello參數(shù)是否可以接受。如果所有的條件均滿足,則客戶端向服務(wù)器發(fā)回一個(gè)或多個(gè)消息:如果服務(wù)器請(qǐng)求了證書(shū),則在此階段,客戶端開(kāi)始發(fā)送一條證書(shū)消息certificate,如果未提供合適的證書(shū),則客戶端將發(fā)送一個(gè)“無(wú)證書(shū)警報(bào)”。接下來(lái)是此階段必須要有發(fā)的客戶端密鑰交換消息client_key_exchange消息,消息的內(nèi)容依賴于密鑰交換的類型。在此階段的最后,客戶端可以發(fā)送一個(gè)證書(shū)驗(yàn)證消息certificate_verify來(lái)提供對(duì)客戶端證書(shū)的精確認(rèn)證(若客戶端證書(shū)具有簽名能力)。其目的是使用私鑰驗(yàn)證客戶證書(shū)的客戶所有權(quán)。17.2安全套接層階段4.完成:此階段完成安全連接的設(shè)置??蛻舳税l(fā)送改變密碼規(guī)范消息change_cipher_spec。于是客戶端立即使用新的算法、密鑰和密碼發(fā)送新的完成消息finished。完成消息對(duì)密鑰交換和認(rèn)證過(guò)程的正確性進(jìn)行驗(yàn)證。在應(yīng)答這兩個(gè)消息時(shí),服務(wù)器發(fā)送自己的修改密碼規(guī)范change_cipher_spec,和完成消息finished。此時(shí),握手完成,客戶端和服務(wù)器即可開(kāi)始交換應(yīng)用層數(shù)據(jù)。17.2安全套接層密碼計(jì)算下面介紹通過(guò)密鑰交換創(chuàng)建共享主密鑰和使用主密鑰生成密碼參數(shù)。主密鑰的創(chuàng)建:共享主密鑰是利用安全密鑰交換為此會(huì)話建立的一個(gè)一次性48字節(jié)的值(384位)。生成此密鑰共分為兩個(gè)階段:首先,交換次密鑰;其次,雙方共同計(jì)算主密鑰,對(duì)于次密鑰有如下兩種可能:RSA:由客戶端生成48字節(jié)的次密鑰,用服務(wù)器的RSA公鑰加密后,發(fā)往服務(wù)器。服務(wù)器用其私鑰解密密文,得到次密鑰。Diffie-Hellman:客戶端和服務(wù)器同時(shí)生成Diffie-Hellman公鑰。密鑰交換后,各方執(zhí)行Diffie-Hellman計(jì)算,創(chuàng)建共享次密鑰。17.2安全套接層
17.2安全套接層生成密碼參數(shù):CipherSpecs(在階段1中創(chuàng)建)需要在客戶端寫(xiě)MAC密鑰、服務(wù)器寫(xiě)MAC密鑰、客戶端寫(xiě)密鑰、服務(wù)器寫(xiě)密鑰、客戶端寫(xiě)初始向量和服務(wù)器寫(xiě)初始向量,均是通過(guò)主密鑰生成的。主密鑰通過(guò)Hash函數(shù)把所有參數(shù)映射為足夠長(zhǎng)的安全字節(jié)序列。從主密鑰生成各主要參數(shù)的方法與從次密鑰中生成主密鑰的方法相同:直到生成足夠的輸出。17.2安全套接層
17.2安全套接層TLS是IETF標(biāo)準(zhǔn)的初衷。他們的目標(biāo)是編寫(xiě)SSL的互聯(lián)網(wǎng)標(biāo)準(zhǔn)。當(dāng)前TLS的草案RFC5246與SSLv3非常相似。在本節(jié)中將把主要精力集中在它們的區(qū)別上。版本號(hào)TLS記錄格式與SSL記錄格式相同,頭中的各域的含義也相同。其區(qū)別在于版本值。目前,在TLS目前版本中,其主版本號(hào)為3,從版本號(hào)為3。17.3傳輸層安全第17章傳輸層安全
17.3傳輸層安全
17.3傳輸層安全
17.3傳輸層安全
17.3傳輸層安全
17.3傳輸層安全
17.3傳輸層安全
17.3傳輸層安全密碼套件SSLv3和TLS提供的密碼組有如下一些小的差別:密鑰交換:TLS支持除Fortezza外的所有SSLv3的秘鑰交換技術(shù)。對(duì)稱加密算法:TLS包括除Fortezza外的所有SSLv3的對(duì)稱加密算法。17.3傳輸層安全客戶端證書(shū)類型TLS定義了以下證書(shū)請(qǐng)求消息中需要的證書(shū)類型:rsa_sign、dss_sign、rsa_fixed_dh和dss
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- GGFG-PAB-Exatecan-TFA-生命科學(xué)試劑-MCE-7805
- 2025年度私教健身中心教練團(tuán)隊(duì)合作協(xié)議
- 2025年度水產(chǎn)養(yǎng)殖技術(shù)支持租地合同
- 二零二五年度私人酒店健身教練用工協(xié)議
- 材料采購(gòu)合同
- 食堂操作間衛(wèi)生與消毒措施
- 河道清淤施工方案6篇
- 個(gè)人不服勞動(dòng)合同糾紛仲裁起訴狀范本
- 上海簡(jiǎn)易離婚合同模板
- 上海市商品住宅銷售合同模板
- 公司實(shí)際經(jīng)營(yíng)地與公司注冊(cè)地不一致的說(shuō)明
- 貴州省工傷待遇申請(qǐng)表(綜合柜員)
- 籍貫對(duì)照表完整版
- 畢業(yè)生就業(yè)推薦表word模板
- a320飛機(jī)剎車系統(tǒng)原理及故障分析
- GB 5009.228-2016食品安全國(guó)家標(biāo)準(zhǔn)食品中揮發(fā)性鹽基氮的測(cè)定
- 并聯(lián)電容器課件
- 彼得圣吉:第五項(xiàng)修煉課件
- 色素性皮膚病
- 《社會(huì)主義市場(chǎng)經(jīng)濟(jì)理論(第三版)》第二章社會(huì)主義市場(chǎng)經(jīng)濟(jì)改革論
- 學(xué)校預(yù)算管理內(nèi)部控制制度
評(píng)論
0/150
提交評(píng)論