近日,Cloudflare在官方博客宣布支持一項(xiàng)新提議的DNS標(biāo)準(zhǔn)——Oblivious DNS。該標(biāo)準(zhǔn)由Cloudflare、Apple和Fastly三家公司的工程師共同撰寫,能夠?qū)P地址(創(chuàng)建)與查詢分開,從而確保沒有一個(gè)實(shí)體可以同時(shí)看到兩者(從而獲取用戶隱私)。
在過去的三十多年中,DNS這一互聯(lián)網(wǎng)基礎(chǔ)技術(shù)已經(jīng)對(duì)每天使用互聯(lián)網(wǎng)的數(shù)十億人構(gòu)成了隱私和安全威脅。Cloudflare、Apple和內(nèi)容交付網(wǎng)絡(luò)Fastly引入了一種新穎的方法來修復(fù)此問題,該技術(shù)可以防止服務(wù)提供商和網(wǎng)絡(luò)窺探看到最終用戶訪問或向其發(fā)送電子郵件的地址。
上述三家公司的工程師共同設(shè)計(jì)了Oblivious DNS,這是對(duì)當(dāng)前DNS域名系統(tǒng)的重大更改。其中兩家公司正在與互聯(lián)網(wǎng)工程任務(wù)組(IETF)合作,希望推動(dòng)其成為行業(yè)標(biāo)準(zhǔn)。
ODoH目前的主要代理合作伙伴
Oblivious DNS的縮寫是ODoH,是對(duì)DoH(DNS over HTTPS)的改進(jìn),目前仍處于應(yīng)用的早期階段。
對(duì)于ODoH,首批代理合作伙伴之一,SURF的技術(shù)產(chǎn)品經(jīng)理Joost van Dijk是這樣評(píng)價(jià)的:“我們正在與Cloudflare合作,以通過ODoH實(shí)現(xiàn)更好的用戶隱私。遷移到ODoH是一個(gè)真正的范式轉(zhuǎn)變,用戶的隱私或IP地址沒有暴露給任何提供者,從而實(shí)現(xiàn)了真正的隱私安全。遷移到ODoH不僅是一種范式轉(zhuǎn)變,而且還強(qiáng)調(diào)了隱私對(duì)任何用戶的重要性,尤其是在2020年。這與我們對(duì)隱私的核心關(guān)注和信念產(chǎn)生了共鳴。”
DNS的工作方式
當(dāng)有人訪問某網(wǎng)站(xxx.com)時(shí),瀏覽器必須首先獲取托管服務(wù)器使用的IP地址(例如3.128.236.93)。瀏覽器會(huì)聯(lián)系一個(gè)DNS解析器,該解析器通常由ISP或Google的8.8.8.8或Cloudflare的1.1.1.1之類的服務(wù)來操作。
但是,DNS存在兩個(gè)先天的關(guān)鍵缺陷。
首先,DNS查詢及其返回的響應(yīng)未加密。這樣一來,任何人都可以查看連接以監(jiān)視用戶正在訪問的站點(diǎn)。更糟糕的是,具有此功能的人也可能會(huì)篡改響應(yīng),以便用戶訪問偽裝(或釣魚)網(wǎng)站,而不是正牌網(wǎng)站。
為了解決此問題,Cloudflare和其他地方的工程師開發(fā)了DoH(DNS over HTTPS)和DoT(DNS over TLS)。這兩種協(xié)議都對(duì)DNS查詢進(jìn)行加密,從而使發(fā)送方和接收方之間的人無法查看或篡改流量。但業(yè)界對(duì)DoH和DoT褒貶不一,許多人仍然對(duì)其持懷疑態(tài)度,主要是因?yàn)橹挥猩贁?shù)提供商支持這種協(xié)議,這意味著少數(shù)幾個(gè)提供商有可能記錄潛在的數(shù)十億人的互聯(lián)網(wǎng)使用情況。
這也引出了DNS的第二個(gè)主要缺陷。即使部署了DoH或DoT,其加密并不能阻止DNS提供商同時(shí)看到查詢請(qǐng)求和發(fā)出請(qǐng)求的計(jì)算機(jī)IP地址,這使DNS服務(wù)商可以建立地址查詢者的全面檔案。如前所述,當(dāng)DoH或DoT提供商的數(shù)量很少時(shí),隱私泄露風(fēng)險(xiǎn)仍然更大。
ODoH旨在解決第二個(gè)缺陷。作為IETF正在開發(fā)的新協(xié)議,ODoH通過添加一層公共密鑰加密,并且在最終用戶和DoH服務(wù)器之間放置一個(gè)網(wǎng)絡(luò)代理,以確保只有該用戶才能同時(shí)訪問DNS請(qǐng)求信息以及發(fā)送和接收該信息的個(gè)人IP地址。如下圖所示:
Oblivious DNS的運(yùn)作機(jī)制
Cloudflare研究人員Tanya Verma和Sudheesh Singanamalla在介紹Obdovious DoH的博客文章(https://blog.cloudflare.com/oblivious-dns/)中寫道:整個(gè)過程從客戶端使用HPKE加密對(duì)目標(biāo)的查詢開始。客戶端通過DNS獲取目標(biāo)的公鑰,并將其捆綁到HTTPS資源記錄中并由DNSSEC保護(hù)。當(dāng)此密鑰的TTL過期時(shí),客戶端會(huì)根據(jù)需要請(qǐng)求密鑰的新副本(就像該記錄的TTL過期時(shí)對(duì)A/AAAA記錄的要求一樣)。使用目標(biāo)的經(jīng)DNSSEC驗(yàn)證的公共密鑰可確保只有目標(biāo)可以解密查詢并加密響應(yīng)(回復(fù))。
客戶端通過HTTPS連接將這些加密的查詢傳輸?shù)酱恚碓賹⒉樵冝D(zhuǎn)發(fā)到指定目標(biāo)。然后目標(biāo)解密該查詢,通過將查詢發(fā)送到遞歸解析器(例如1.1.1.1)來生成響應(yīng),然后將響應(yīng)加密到客戶端。來自客戶端的加密查詢包含封裝的密鑰材料,目標(biāo)可從中獲得響應(yīng)所需的對(duì)稱加密密鑰。
然后將目標(biāo)的響應(yīng)發(fā)送回代理,最后轉(zhuǎn)發(fā)給客戶端。盡管這些DNS消息是通過兩個(gè)單獨(dú)的HTTPS連接(客戶端代理和代理目標(biāo))傳輸?shù)模羞@些通信都經(jīng)過端到端加密,因此所有通信都是經(jīng)過身份驗(yàn)證的機(jī)密信息。
正在進(jìn)行的工作
工程師們?nèi)栽谠u(píng)估為DNS添加代理和加密的性能成本。但是,早期結(jié)果看上去前景不錯(cuò)。在DoH和ODoH的對(duì)比測(cè)試中,99%的ODoH查詢/響應(yīng)的代理開銷不到1毫秒,Cloudflare在其官方博客中提供了有關(guān)ODoH性能的更詳細(xì)的討論。
到目前為止,ODoH仍在進(jìn)行中。在Cloudflare的大力支持下,Apple和Fastly的貢獻(xiàn)以及Firefox和其他公司的關(guān)注使ODoH值得認(rèn)真對(duì)待。同時(shí),由于缺少Google、Microsoft和其他巨頭的支持,ODoH還有很長(zhǎng)的路要走。
總而言之,今天的DNS仍然非常脆弱。時(shí)間已經(jīng)來到2020年,DNS這個(gè)互聯(lián)網(wǎng)最基礎(chǔ)的技術(shù)機(jī)制之一并未得到普遍加密,這簡(jiǎn)直令人抓狂。批評(píng)者抵制DoH和DoT,原因是擔(dān)心它會(huì)犧牲隱私權(quán)來換取安全性。如果ODoH可以更有效地保護(hù)隱私,贏得“民意”,并且在此過程中不會(huì)破壞互聯(lián)網(wǎng),那將是值得期待的一次DNS變革。
參考資料
Improving DNS Privacy with Oblivious DoH in 1.1.1.1
https://blog.cloudflare.com/oblivious-dns/