天天看點

《圖解HTTP[上野宣]》讀書筆記七

第7章 確定Web安全的HTTPS

 1.http的缺點

 -通信使用明文(不加密),内容可能會被竊聽

 -不驗證通信方身份,是以有可能遭遇僞裝

 -無法證明封包的完整性,是以有可能已遭篡改

 2.通信使用明文可能會被竊聽

 由于HTTP本身不具備加密的功能,是以無法做到對通信整體進行加密。

 3.TCP/IP是可能被竊聽的網絡

 按TCP/IP協定族的工作機制,通信内容在所有的通信線路上都有可能遭到窺視。

 4.加密處理防止被竊聽

 -通信的加密

 HTTP協定中沒有加密機制,但可以通過和SSL(Secure Socket Layer,安全套接層)或TLS(Transport Layer Security,安全層傳輸協定)的組合使用,加密HTTP的通信内容。

 -内容的加密

 把HTTP封包裡所含的内容進行加密處理。

 由于不同于SSL或TLS将整個通信線路加密處理,是以内容仍有被篡改的風險。

 5.不驗證通信方的身份就可能遭遇僞裝

 HTTP協定中的請求和響應不會對通信方進行确認

 6.任何人都可能發起請求

 隐患:

 -無法确定是否是僞裝的Web伺服器

 -無法确定是否是僞裝的用戶端

 -無法确定正在通信的對方是否具備通路權限

 -無法判定請求是來自何方、出自誰手

 -即使是無意義的請求也會照單全收。無法阻止海量請求下的DoS攻擊(Denial of Service,拒絕服務攻擊)

 7.查明對手的證書

 隻要能夠确認通信方(伺服器或用戶端)持有的證書,即可判斷通信方的真實意圖。

 8.無法證明封包完整性,可能已遭篡改

 若無法證明資訊完整性,也就意味着無法判斷資訊是否準确

 9.接收到的内容可能有誤

 請求或響應在傳輸途中,遭攻擊者攔截并篡改内容的攻擊稱為中間人攻擊(Man-in-the-Middle attack,MITM)

 10.如何防止篡改

 常用的是MD5和SHA-1等散列值校驗的方法

 11.HTTP+加密+認證+完整性保護 = HTTPS

 12.HTTPS是身披SSL外殼的HTTP

 HTTPS并非是應用層的一種新協定。隻是HTTP通信接口部分用SSL和TLS協定代替而已

 13.SSL采用一種公開密鑰加密的加密處理方式

 14.HTTPS采用共享密鑰加密和公開密鑰加密兩者并用的混合加密機制。

 15.公開密鑰加密方式存在一些問題,就是無法證明公開密鑰本身就是貨真價實的公開密鑰。

 為了解決這個問題,可以使用由數字證書認證機構(CA,Certificate Authority)和其相關相關頒發的公開密鑰證書。

 16.可證明組織真實性的EV SSL證書

 EV SSL證書是基于國際标準的認證指導方針頒發的證書。

 17.由自認證機構頒發的證書稱為自簽名證書

 在網際網路上不可作為證書使用。

 18.HTTPS也存在一些問題,當使用SSL時,處理速度會變慢。

 -通信慢

 -處理慢(大量消耗CPU及記憶體等資源)

繼續閱讀