在线乱码卡一卡二卡新HD,最近韩国免费观看视频,国产色无码精品视频国产,亚洲男人的天堂久久香蕉

世界觀天下!抓 Https 加密數據,偷偷摸摸爽得很!
來源:小姐姐味道    時間:2022-08-30 19:52:11

HTTPS是安全通道。如果瀏覽器導航欄前面有一個綠如A股的小鎖,那么感覺就會非常的放心。

把自己見不得人的小心思和污言穢語,統統用這個小鎖鎖起來,為所欲為,想想就讓人激動。

但是等等,Charles為什么能抓到HTTPS的包呢?


(資料圖片僅供參考)

HTTPS簡單原理

我們希望數據傳輸過程,對用戶來說是個黑盒,對攻擊者來說也是個黑盒。這主要體現在兩方面。

用戶不希望自己的敏感數據被獲取到。比如自己的賬號密碼,比如自己發給女友的聊騷數據。開發者不希望自己的數據被用戶獲取到。比如自己的驗簽方式,被破解了用戶就能干很多非法的事情。

HTTP協議屬于一問一答的協議,在傳輸過程中是以明文方式傳遞的。

如果攻擊者截取了Web瀏覽器和網站服務器之間的傳輸報文,就可以直接讀懂其中的信息。比如通過代理方式或者局域網嗅探方式獲取了報文的內容。

相關的工具有很多,比如wireshark、tcpdump、dsniff等。

但如果傳輸的內容是加密的,那么即使你把所有的數據報文都抓到了,那么也沒有什么價值。

HTTPS就是一種傳輸加密數據的協議。如果我們在TCP與HTTP中間,加入一個TLS/SSL?層,那么就會變成HTTPS。

HTTPS包括握手階段和傳輸階段。其中握手階段是最重要的協商階段。

握手的目標,是安全的交換對稱密鑰,全程需要3個隨機數的參與。在Change Cipher Spec之后,傳輸的就都是加密后的內容了。

這個過程可以使用WireShark抓包工具輕易抓取,有大量的文章分析握手過程,在此不再贅述。

當然,HTTPS的效率是非常低的。這里稍微擴展一下。

HTTP3,也就是谷歌的QUIC,除了解決了隊頭阻塞問題,還可以作為TCP+TLS+HTTP/2?的一種替代方案。HTTP3默認就是安全通道,采用UDP協議。在DH秘鑰交換算法的加持下,它可以減少連接建立時間 - 在常見情況下為 0 次RTT往返。

這比HTTPS的握手速度快多了。

Charles抓包

雖然HTTPS的傳輸過程是加密的,但如果我們就是請求的發起方,設備也在自己手里,去抓包HTTPS連接中的內容,也是非常容易的。

這讓開發者很頭疼。比如我使用云平臺提供的AK、SK直接發起HTTPS調用,用戶是能夠抓到這兩個關鍵密碼的。所以一般開發者并不能直接把AK、SK在網絡上傳遞,即使這樣在功能上行得通。

我這里以在MacOS本機上抓包瀏覽器的HTTPS請求為例,來說明Charles的使用。

啟動Charles后,我們需要把它設置成系統代理。

然后,在Help/菜單下,找到Root證書進行安裝。

安裝完畢之后,我們還要信任這個證書。這樣,當你的瀏覽器訪問我們的Charles代理時,就可以暢通無阻。

安裝到System Keychains中,而且一定要信任它哦。

通常情況下,我訪問一個HTTPS連接,抓到的內容都是一團糟。

我們還差最后一步。默認情況下,Charles并沒有任何過濾,我么還需要把要抓包的網址,加入HTTPS的代理配置中才可以。

右鍵找到這個連接,然后選擇啟動SSL代理即可。

此時,我們再看一下這些連接的內容,就能夠變成人眼能夠識別的了。

當然,電腦上的代理沒有什么意義。我們做代理,一般是想要抓取手機上的應用產生的請求。

但方法是一樣的,你只需要把這個Root證書,安裝到你的手機中,然后信任它就可以了。

為什么能夠抓到數據?

在這個案例中,Charles是作為中間人而存在的。對于Charles來說,對于服務端的請求,是由它發起的。

你可以把它想象成一個瀏覽器,它發出的請求和返回的內容,對于Charles自身來說自然是可見的。欺騙服務器很容易,重要的欺騙客戶端。

Charles通過偽造一個CA證書,來冒充一個服務端。當瀏覽器或者移動手機訪問Charles冒充的服務端時,Charles會攜帶CA證書返回給客戶端。

對于普通的CA證書來說,瀏覽器和客戶端是不信任的。這也是為什么要進行HTTPS抓包,必須安裝CA證書的原因---我們需要把這個信任關系建立起來。

這兩部分是割裂的,可以說是由兩條完全不同的SSL通道。請求報文在全程是加密的,除了一個非常薄弱的交接點。

在通道的粘合處,所有的信息卻是明文的。Charles掌控了這個過程,自然就能夠把原始信息展示出來。

End

可以看到,Charles是可以抓取到HTTPS的明文信息的。在中間人場景中,它既作為客戶端發起請求,也作為服務端接收請求,然后在請求的轉發處獲取數據。

作為用戶,我們千萬不能隨意信任來歷不明的證書,否則你的很多隱私數據將暴露在陽光之下。

作為開發者,也不能把敏感數據直接放在URL或者請求體里,防止用戶抓包獲取到這些信息,對服務造成破壞。

當然,在CN,隱私可能是個偽命題。就比如xjjdog,雖然我一直在隱藏自己,但還是有很多朋友知道我到底是不是帶把的。

這個時候,HTTPS就沒什么用。

 

作者簡介:小姐姐味道(xjjdog),一個不允許程序員走彎路的公眾號。聚焦基礎架構和Linux。十年架構,日百億流量,與你探討高并發世界,給你不一樣的味道。

 

關鍵詞: 安全通道 我們需要 敏感數據 加密數據 建立時間

X 關閉

X 關閉

<蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <文本链> <文本链> <文本链> <文本链> <文本链> <文本链>