[Security] HTTPS標頭是否已加密?


Answers

整批都加密 - 所有標題。 這就是為什麼虛擬主機上的SSL不能正常工作的原因 - 您需要一個專用IP地址,因為主機頭已加密。

服務器名稱標識(SNI)標準意味著如果您使用TLS,則可能不會對主機名進行加密。 另外,無論您是否使用SNI,TCP和IP標頭都不會被加密。 (如果他們是,你的數據包將不可路由。)

Question

當通過HTTPS發送數據時,我知道內容是加密的,但是我聽到關於頭文件是否被加密或頭文件被加密多少的混合答案。

多少個HTTPS標頭加密?

包括GET / POST請求URL,Cookies等




HTTPS(基於SSL的HTTP)通過SSL tunel發送所有HTTP內容,因此HTTP內容和標頭也會被加密。




該URL也是加密的,您實際上只有IP,端口以及SNI(未加密的主機名)。




HTTP版本1.1添加了一種特殊的HTTP方法CONNECT--旨在創建SSL隧道,包括必要的協議握手和加密設置。
之後的常規請求都發送包裝在SSL隧道,標頭和正文中。




使用SSL時,加密處於傳輸級別,因此它在發送請求之前發生。

因此請求中的所有內容都被加密。




是的,標題被加密。 它寫here

HTTPS消息中的所有內容都已加密,包括標頭和請求/響應加載。




標頭完全加密。 通過網絡“清除”的唯一信息與SSL設置和D / H密鑰交換有關。 這種交換經過精心設計,不會為竊聽者提供任何有用的信息,一旦發生,所有數據都會被加密。




老問題的新答案,對不起。 我想我會添加我的$ .02

OP詢問報頭是否被加密。

它們是:在途中。

他們不是:不在途中。

所以,你的瀏覽器的URL(在某些情況下,標題)可以顯示查詢字符串(通常包含最敏感的細節)和標題中的一些細節; 瀏覽器知道一些頭信息(內容類型,unicode等); 瀏覽器歷史記錄,密碼管理,收藏夾/書籤和緩存頁面都將包含查詢字符串。 遠程端的服務器日誌還可以包含查詢字符串以及一些內容詳細信息。

另外,URL並不總是安全的:域,協議和端口是可見的 - 否則路由器不知道在哪裡發送請求。

另外,如果你有一個HTTP代理,代理服務器知道地址,通常他們不知道完整的查詢字符串。

所以如果數據正在移動,它通常受到保護。 如果它不在傳送中,則不加密。

不要挑選,但最後的數據也被解密,並且可以隨意解析,讀取,保存,轉發或丟棄。 而且,任何一端的惡意軟件都可以捕獲進入(或退出)SSL協議的數據快照 - 例如HTTPS中頁面內的(壞)Javascript,它可以秘密地對記錄網站進行http(或https)調用(因為訪問本地硬盤通常是受限制的並且沒有用處)。

此外,Cookie在HTTPS協議下也未加密。 希望將敏感數據存儲在Cookie(或其他任何地方)的開發人員需要使用他們自己的加密機制。

至於緩存,大多數現代瀏覽器不會緩存HTTPS頁面,但這個事實並不是由HTTPS協議定義的,它完全依賴於瀏覽器的開發者,以確保不緩存通過HTTPS接收的頁面。

所以如果你擔心數據包嗅探,你可能沒問題。 但是,如果您擔心惡意軟件或某人在瀏覽您的歷史記錄,書籤,Cookie或緩存等問題,您還沒有出現問題。