成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

可怕,原來(lái) HTTPS 也沒用

安全 應(yīng)用安全
HTTPS,也稱作 HTTP over TLS,TLS 前身是 SSL,會(huì)有各個(gè)版本。

 [[377183]]

背景

最近發(fā)生了幾個(gè)事情,想必有的你已經(jīng)看到過了:

  • 網(wǎng)傳 某PDD員工在某匿名社區(qū)發(fā)布同事被抬上救護(hù)車的照片被抓出來(lái)并辭退?
  • 某運(yùn)營(yíng)同學(xué)在試用期期間因?yàn)樵诠ぷ髌陂g上了某 1024 網(wǎng)站,導(dǎo)致試用期不過。(恰好今天瀏覽到一個(gè)知乎問題)

 

 


試用期不過因在公司瀏覽 1024 網(wǎng)站

 

 

  • 前兩天還看到不少公眾號(hào)推文,大意是:看小電影前一定要注意網(wǎng)址是不是 HTTPS 的,因?yàn)?HTTPS 是加密的,別人就不知道了。

看到上面幾個(gè)問題,我不禁想問(這腦回路也是……):

  • 通過瀏覽器訪問 HTTPS 站點(diǎn),其他人真的沒法知道嗎?
  • 通過 App 訪問匿名論壇(HTTPS),公司怎么知道的?(他是不是接入了公司 WiFi?)

總之就是,上班時(shí)間上網(wǎng)摸魚嗎?哪怕用 HTTPS 訪問,如果公司知道,是通過什么手段?

 

本文談?wù)勎业目捶ǎ饕譃橐韵聨讉€(gè)方面:

  • HTTPS 為什么安全。
  • HTTPS 真的安全嗎?
  • App 如何保證信息安全,不被爬走?
  • 公司可能的監(jiān)控手段有哪些?我們?nèi)绾巫霾拍艽_保自己的隱私泄露?

HTTPS 為什么安全

HTTPS,也稱作 HTTP over TLS,TLS 前身是 SSL,會(huì)有各個(gè)版本。

TLS協(xié)議在TCP/IP協(xié)議棧中的關(guān)系

 

上圖描述了在TCP/IP協(xié)議棧中TLS(各子協(xié)議)和 HTTP 的關(guān)系。HTTP+TLS 也就是 HTTPS,和 HTTP 相比,HTTPS的優(yōu)勢(shì):

  • 數(shù)據(jù)完整性:內(nèi)容傳輸經(jīng)過完整性校驗(yàn)
  • 數(shù)據(jù)隱私性:內(nèi)容經(jīng)過對(duì)稱加密,每個(gè)連接生成一個(gè)唯一的加密密鑰
  • 身份認(rèn)證:第三方無(wú)法偽造服務(wù)端(客戶端)身份

上面內(nèi)容參考了HTTPS工作原理[1]。(石頭在N 久前用印象筆記收藏的,現(xiàn)在好多原文訪問不了了)

 

 


HTTPS 原理

 

 

上圖就是大致介紹了 HTTPS 的握手流程,感興趣的同學(xué)可以用 WireShark 抓包詳細(xì)看看其中的每一個(gè)步驟,有助于理解 HTTPS 的完整流程。

大致就是客戶端和服務(wù)端通過“握手會(huì)談”商量出一個(gè)雙方支持的加密算法和相應(yīng)隨機(jī)參數(shù),得到一對(duì)密鑰,后續(xù)的傳輸?shù)膬?nèi)容都通過這對(duì)密鑰進(jìn)行加解密。

這對(duì)密鑰很牛皮,比如要加密傳輸消息『tangleithu』,客戶端通過公鑰加密得到的密文『xyyaabbccdd』進(jìn)行傳輸,服務(wù)端用自己的私鑰對(duì)密文解密,恰好能得到『tangleithu』。中間錯(cuò)一位都不行,這樣就保證了數(shù)據(jù)完整和隱私性。

這個(gè)過程比較復(fù)雜,本文不詳述,類似的原理可參考石頭多年前寫的這篇文章 —— RSA算法。

因此,你在通過 HTTPS 訪問網(wǎng)站的時(shí)候,就算流量被截取監(jiān)聽,獲取到的信息也是加密的,啥實(shí)質(zhì)性的內(nèi)容也看不到。

例如,如下圖所示,當(dāng)我訪問某個(gè)網(wǎng)站,此時(shí)通過 wireshark 抓包得到的信息,能獲得僅僅是一些通信的IP地址而已。

HTTPS加密傳輸

 

這下放心了嗎?

摸魚的過程中,就算訪問的 IP 地址被知道了,好像也無(wú)關(guān)緊要?

其實(shí),有了 IP 地址也能獲取不少信息了。

 

還好這個(gè) IP 搜出來(lái)是 github,而不是……

 

你或許會(huì)高興,連個(gè)網(wǎng)站域名都看不到,可以放心摸魚了。不過,這是真的嗎?

 

HTTPS 真的安全嗎?

HTTPS 真的完全安全嗎?連訪問的域名都獲取不到?答案是否定的。

上述 HTTPS 在握手階段有一個(gè)很重要的東西 —— 證書。

SNI —— 域名裸奔

當(dāng)訪問 HTTPS 站點(diǎn)時(shí),會(huì)首先與服務(wù)器建立 SSL 連接,第一步就是請(qǐng)求服務(wù)器的證書。

當(dāng)一個(gè) Server IP 只對(duì)應(yīng)一個(gè)域名(站點(diǎn))時(shí),很方便,任意客戶端請(qǐng)求過來(lái),無(wú)腦返回該域名(服務(wù))對(duì)應(yīng)的證書即可。但 IP 地址(IPv4)是有限的呀,多個(gè)域名復(fù)用同一個(gè) IP 地址的時(shí)候怎么辦?

服務(wù)器在發(fā)送證書時(shí),不知道瀏覽器訪問的是哪個(gè)域名,所以不能根據(jù)不同域名發(fā)送不同的證書。

因此 TLS 協(xié)議升級(jí)了,多了 SNI 這個(gè)東西,SNI 即 Server Name Indication,是為了解決一個(gè)服務(wù)器使用多個(gè)域名和證書的 SSL/TLS 擴(kuò)展。

現(xiàn)在主流客戶端都支持這個(gè)協(xié)議的。別問我怎么知道這個(gè)點(diǎn)的,之前工作上因?yàn)檫@個(gè)事情還費(fèi)了老大勁兒……

它的原理是:在與服務(wù)器建立 SSL 連接之前,先發(fā)送要訪問站點(diǎn)的域名(Hostname),這樣服務(wù)器會(huì)根據(jù)這個(gè)域名返回一個(gè)合適的證書。此時(shí)還沒有辦法進(jìn)行加解密,因此至少這個(gè)域名是裸奔的。

如下圖所示,上面的截圖其實(shí)是訪問我的個(gè)人博客(www.tanglei.name)的抓包情況,客戶端發(fā)送握手請(qǐng)求時(shí),很自覺帶上了自己的域名。

HTTPS SNI

 

因此,即便是 HTTPS,訪問的域名信息也是裸奔狀態(tài)。你上班期間訪問小電影網(wǎng)站,都留下了痕跡,若接入了公司網(wǎng)絡(luò),就自然而然被抓個(gè)正著。

除了域名是裸奔外,其實(shí)還有更嚴(yán)重的風(fēng)險(xiǎn),那就是中間人攻擊。

中間人攻擊

前面也提到 HTTPS 中的關(guān)鍵其實(shí)在于這個(gè)證書。從名字可以看出來(lái),中間人攻擊就是在客戶端、服務(wù)器之間多了個(gè)『中介』,『中介』在客戶端、服務(wù)器雙方中偽裝對(duì)方,如下圖所示,這個(gè)『MitmProxy』充當(dāng)了中間人,互相欺騙:

中間人攻擊,來(lái)源 evil0x

 

可以安裝 MitmProxy 或者 Fiddler 之類的抓包軟件嘗試一把,然后開啟代理。

此時(shí)用手機(jī)訪問百度,得到的信息如下:

證書信任前

 

提示,連接不是私密連接,其實(shí)就是瀏覽器識(shí)別了證書不太對(duì)勁,沒有信任。而如果此時(shí)手機(jī)安裝了 Fiddler 的證書,就會(huì)正常訪問。

證書信任后可正常訪問

 

因此,當(dāng)你信任證書后,在中間人面前,又是一覽無(wú)余了。

而如果你用了公司電腦,估計(jì)你有相應(yīng)的操作讓信任證書吧,或者手機(jī)上是否有安裝類似的客戶端軟件吧?

抓緊時(shí)間看看手機(jī)的證書安裝明細(xì)(比如我手機(jī)上的)。

 

我前任公司在信息安全這塊做得就非常謹(jǐn)慎,手機(jī)會(huì)有工作手機(jī),未授權(quán)的任何 App 都不能安裝,誰(shuí)知道 App 會(huì)悄悄干些什么事情呢。(最新熱點(diǎn),QQ掃描瀏覽器歷史記錄,你可知道)

當(dāng)然各種 App 肯定也不是吃素的,不會(huì)讓『中間人攻擊』這么容易就得逞的,咱們接著看。

如何防止信息安全,反爬

前面提到,要實(shí)施中間人攻擊,關(guān)鍵在于證書是否得到信任。瀏覽器的行為是證書可以讓用戶授權(quán)是否信任,而 APP 就可以開發(fā)者自己控制。

比如我嘗試通過類似的方式對(duì)某匿名社區(qū)進(jìn)行抓包解密 HTTPS,但最終失敗了,為什么呢?

 

這就要談到『SSL Pinning』技術(shù)。

App 可以自己檢驗(yàn) SSL 握手時(shí)服務(wù)端返回的證書是否合法,“SSL pinning” 技術(shù)說(shuō)的就是在 App 中只信任固定的證書或者公鑰。

因?yàn)樵谖帐蛛A段服務(wù)端的證書必須返回給客戶端,如果客戶端在打包的時(shí)候,就把服務(wù)端證書放到本地,在握手校驗(yàn)證書的環(huán)節(jié)進(jìn)行比較,服務(wù)端返回的證書和本地內(nèi)置的證書一模一樣,才發(fā)起網(wǎng)絡(luò)請(qǐng)求。否則,直接斷開連接,不可用。

當(dāng)然,一般情況下,用這種技術(shù)也就能防止 HTTPS 信息被解密了。

不過,也還有其他的技術(shù)能夠破解這種方法,比如 Android 下的一些 Hook 技術(shù),具體而言就是繞過本地證書強(qiáng)校驗(yàn)的邏輯。感興趣的同學(xué)可以抱著學(xué)習(xí)目的研究一下。不過據(jù)說(shuō)這種方式需要對(duì)系統(tǒng)進(jìn)行 Root、越獄等,需要一些更高權(quán)限的設(shè)置。

因此,也告誡我們,一定不要亂安裝一些軟件,稍不注意可能就中招,讓自己在互聯(lián)網(wǎng)上進(jìn)行裸奔。一方面?zhèn)€人隱私信息等泄露,另外一個(gè)方面可能一些非常重要的如賬戶密碼等也可能被竊取。

可能的監(jiān)控手段有哪些?

辦公電腦當(dāng)然要接入公司網(wǎng)絡(luò),通過上面介紹的內(nèi)容,你也應(yīng)該知道,你在什么時(shí)候?yàn)g覽了哪些網(wǎng)站,公司其實(shí)都是一清二楚的。

若自己的手機(jī)如果接入了公司網(wǎng)絡(luò)也是一模一樣(連 Agent 軟件都不需要裝)。這就提醒我們,私人上網(wǎng)盡量用自己的移動(dòng)網(wǎng)絡(luò)呀。

 


瀏覽記錄,來(lái)源知乎

 

 

上面提到,如一些涉及隱私的敏感信息,如一些 PC 軟件、手機(jī) App 自己內(nèi)部加密傳輸?shù)脑挘瑑?nèi)容加密(包括但不限于 HTTPS)不被破解也問題不大。

不過,這當(dāng)然依賴這些軟件設(shè)計(jì)者的水平了。比如同一個(gè)匿名用戶對(duì)外展示的 ID 不能相同,如果是同一個(gè)的話也恰好暴露了邏輯漏洞。

當(dāng)然,我們還是不要抱有僥幸心理,在監(jiān)管的要求下,如果確實(shí)有一些違法等不恰當(dāng)?shù)难哉摰龋冀K還是有門路找到你的。

 

更何況,一般辦公電腦都會(huì)預(yù)安裝一些公司安全軟件,至于這些軟件究竟都干了些什么,有沒有進(jìn)行傳說(shuō)中悄悄截圖什么的,這就因人(公司)而異了。(不討論類似行為是否涉及到侵犯了員工隱私等問題)

圖源知乎

 

不過,個(gè)人認(rèn)為,咱也沒必要過度擔(dān)心。一般公司也不會(huì)因?yàn)槟闵习嗯紶柮€(gè)魚,逛逛淘寶、看看微博來(lái)找你麻煩的。畢竟沒必要這么點(diǎn)芝麻事情來(lái)『大動(dòng)干戈』。

但最好是不是對(duì)照員工手冊(cè)來(lái)看看,是否有明令禁止的行為?自己的行為是不是太過了,免得被抓住把柄,正所謂『常在河邊走哪有不濕鞋』,『欲加之罪、何患無(wú)辭』。

后記

本人才疏學(xué)淺,文章難免有所疏漏,如有相應(yīng)問題,還望大家指教。最后,祝大家一輩子都不要因文中提到的類似事情掉坑里。

覺得本號(hào)分享的文章有價(jià)值,記得添加星標(biāo)哦。周更很累,不要白 piao,需要來(lái)點(diǎn)正反饋,安排個(gè) “一鍵三連”(點(diǎn)贊、在看、分享)如何?😝 這將是我持續(xù)輸出優(yōu)質(zhì)文章的最強(qiáng)動(dòng)力。

 

關(guān)于作者:程序猿石頭(ID: tangleithu),阿里P7,清華學(xué)渣,前大疆后端 Leader。用不同的視角分享高質(zhì)量技術(shù)文章,歡迎關(guān)注,交流和指導(dǎo)!掃碼回復(fù)關(guān)鍵字 “1024” 獲取程序員大廠面試指南。

參考資料:

HTTPS工作原理: https://cattail.me/tech/2015/11/30/how-https-works.html

如何評(píng)價(jià)互聯(lián)網(wǎng)公司監(jiān)控員工日常上網(wǎng)的行為?: https://www.zhihu.com/question/46818840/answer/103329958

網(wǎng)傳拼多多員工因在網(wǎng)上發(fā)布同事被抬上救護(hù)車的照片,被管理層逼迫主動(dòng)辭職、趕出公司?事件真實(shí)性如何?: https://www.zhihu.com/question/438581129/answer/1670519587

HTTPS工作原理: https://cattail.me/tech/2015/11/30/how-https-works.html

淺析HTTPS中間人攻擊與證書校驗(yàn): http://www.evil0x.com/posts/26569.html

Mac/Windows Wireshark/tcpdump抓包TCP3次握手,4次揮手實(shí)例: https://www.tanglei.name/blog/example-show-3-times-handshaking-of-tcp-in-mac-or-windows.html

本文轉(zhuǎn)載自微信公眾號(hào)「程序猿石頭」,可以通過以下二維碼關(guān)注。轉(zhuǎn)載本文請(qǐng)聯(lián)系程序猿石頭公眾號(hào)。

 

責(zé)任編輯:武曉燕 來(lái)源: 程序猿石頭
相關(guān)推薦

2020-09-24 06:44:54

HTTPS網(wǎng)站 HTTP

2020-11-27 10:34:01

HTTPHTTPS模型

2024-03-22 12:22:50

Vue前端

2024-04-10 11:59:20

隱私蘋果

2010-08-02 13:55:20

2020-10-23 10:46:03

緩存雪崩擊穿

2014-05-28 10:55:11

Windows XP安全補(bǔ)丁

2022-12-18 22:11:46

2018-03-29 22:50:50

2014-11-04 10:02:33

2022-07-21 10:02:47

SonarQube代碼Java

2014-11-12 09:58:48

2021-08-12 06:52:02

谷歌面試ArrayList

2023-07-17 09:19:20

CSSCSS 漸變

2019-07-03 15:50:19

華為任正非美國(guó)

2015-09-07 10:04:11

數(shù)據(jù)中心數(shù)據(jù)中心優(yōu)化

2022-01-13 08:31:55

操作系統(tǒng)控制臺(tái)時(shí)間

2016-12-28 11:13:16

無(wú)線路由器信號(hào)

2018-11-27 15:09:36

HTTPS網(wǎng)絡(luò)安全攻擊

2019-04-03 08:52:50

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 久久精品国产久精国产 | 国产精品毛片一区二区三区 | 九色一区 | 久久大 | 国产高清视频一区二区 | 日韩www视频 | 黄视频网址 | 久久精品亚洲 | 欧美一区二区免费 | 亚洲福利在线视频 | 亚洲天堂999 | 成人在线不卡 | 亚洲狠狠 | 国产欧美一区二区三区久久人妖 | 青草青草久热精品视频在线观看 | 九九在线 | 亚洲午夜小视频 | 日韩精品成人免费观看视频 | 精品乱子伦一区二区三区 | 精品久久久久香蕉网 | 91精品一区二区三区久久久久久 | 成人在线播放网站 | 亚洲 精品 综合 精品 自拍 | 成人午夜视频在线观看 | 96av麻豆蜜桃一区二区 | 国产日韩欧美在线 | 亚洲精品成人网 | 久久一二区 | 国产成人精品久久 | 欧美激情欧美激情在线五月 | 免费看国产精品视频 | 国产高清在线观看 | 伦理一区二区 | 久热久热| 黑人性hd | 91麻豆精品国产91久久久更新资源速度超快 | 一级黄色av电影 | 欧美jizzhd精品欧美巨大免费 | 成人免费日韩 | 国产中文字幕在线 | 国产日韩欧美一区 |