
15歲高三學(xué)生發(fā)布報(bào)告分析Signal和Cloudflare架構(gòu)中的漏洞
Signal 是個(gè)曾經(jīng)都被埃隆馬斯克推薦的加密通訊應(yīng)用,該應(yīng)用在默認(rèn)情況下就采用端到端加密用戶數(shù)據(jù)確保不會被劫持,而 Telegram 則是默認(rèn)不加密用戶必須手動建立加密會話。
一位自稱丹尼爾的 15 歲高三學(xué)生日前發(fā)布了一份報(bào)告揭露 Signal 和 Discord 等數(shù)百款應(yīng)用中存在的架構(gòu)漏洞,這里的架構(gòu)指的是這些平臺使用的網(wǎng)絡(luò)基礎(chǔ)架構(gòu)。
簡單來說就是 Signal 使用 Cloudflare 作為 CDN 平臺,而 Cloudfalre 在全球大多數(shù)地方都有數(shù)據(jù)中心節(jié)點(diǎn),可以通過探測節(jié)點(diǎn)的方式將某個(gè)用戶所處的范圍縮小到 200 英里。
盡管 Cloudflare 采用任播方式進(jìn)行 CDN 并且禁止用戶請求不在附近的數(shù)據(jù)中心,但借助 Cloudflare Worker 使用的內(nèi)部 IP 地址,攻擊者仍然可以實(shí)現(xiàn) Cloudflare 數(shù)據(jù)中心穿越。
實(shí)現(xiàn)數(shù)據(jù)中心穿越后實(shí)際上就可以采集到不同數(shù)據(jù)中心的 IP 地址以及這些 IP 地址對應(yīng)的位置,接下來只需要向目標(biāo)用戶發(fā)送文件等著這個(gè)文件被初次訪問和緩存到 Cloudflare 邊緣節(jié)點(diǎn)即可。
以 iPhone 系統(tǒng)和 Signal 為例,當(dāng)向目標(biāo)用戶發(fā)送一個(gè) 1*1 像素的圖片時(shí),Signal 首先會幫助請求 Cloudflare 邊緣節(jié)點(diǎn),Cloudflare 不會一次性將文件緩存到所有節(jié)點(diǎn),而是讓距離用戶最近的節(jié)點(diǎn)去拉取文件。
當(dāng)成功拉去文件并將其返回給 Signal 后,Signal 會利用蘋果的推送系統(tǒng)將包含這個(gè)圖片的新消息通知推送給用戶,實(shí)際這個(gè)步驟更早, 因?yàn)?Signal 檢測到有新消息才會通知用戶,但通知用戶需要在通知里包含消息概覽因此也就需要請求這個(gè)圖片。
也就是在用戶完全沒有點(diǎn)擊這個(gè)消息的情況下,Cloudflare 已經(jīng)根據(jù) Signal 的請求使用距離用戶最近的邊緣節(jié)點(diǎn)拉取了文件,接下來只需要檢測哪個(gè)節(jié)點(diǎn)包含這個(gè)文件即可。
通過這種方式攻擊者可以將目標(biāo)用戶的真實(shí)位置鎖定在大約 200 英里的范圍內(nèi),這可能造成用戶的隱私泄露,尤其是對于某些高價(jià)值用戶來說。
那么這個(gè)漏洞被確認(rèn)了嗎?
大約在 1 年前已經(jīng)有另一位研究人員將 Cloudflare 穿越漏洞上報(bào),但 Cloudflare 認(rèn)為這不是問題所以直接將漏洞通報(bào)給關(guān)了,再接到丹尼爾的再次反饋后,Cloudflare 將原始漏洞報(bào)告重新開啟,然后進(jìn)行了處理。
Cloudflare 給原始報(bào)告者和丹尼爾 200 美元的漏洞獎金,但這個(gè)修復(fù)不夠徹底,丹尼爾再次測試后大約還能獲得 54% 的邊緣節(jié)點(diǎn),也就是準(zhǔn)確性沒那么高但仍然可以實(shí)現(xiàn)猜測部分目標(biāo)用戶的位置。
在收到丹尼爾的再次報(bào)告后 Cloudflare 表示不會再進(jìn)行處理,Cloudflare 認(rèn)為這不是他們系統(tǒng)里的問題,消費(fèi)者有責(zé)任自己保護(hù)自己。
丹尼爾也將漏洞反饋給了 Signal 并遭到 Signal 的強(qiáng)烈否決,該應(yīng)用表示這不是他們系統(tǒng)的問題;Discord 同樣不認(rèn)為這是他們的問題,而是 Cloudflare 的問題,也就是最終結(jié)果是 Discord 甩鍋給 Cloudflare,Cloudflare 甩鍋給用戶自己。
Telegram 不存在這個(gè)問題,因?yàn)樵搼?yīng)用不使用 Cloudflare CDN,而且 Telegram 使用不依賴 HTTP 協(xié)議的內(nèi)部系統(tǒng),所以無法通過 CDN 節(jié)點(diǎn)這種方式猜測位置,當(dāng)然前提是 Telegram 并未默認(rèn)加密,用戶必須自己每次開啟 E2EE 加密會話。
對網(wǎng)絡(luò)安全有興趣的朋友強(qiáng)烈閱讀丹尼爾的報(bào)告原文:https://gist.github.com/hackermondev/45a3cdfa52246f1d1201c1e8cdef6117
[超站]友情鏈接:
四季很好,只要有你,文娛排行榜:https://www.yaopaiming.com/
關(guān)注數(shù)據(jù)與安全,洞悉企業(yè)級服務(wù)市場:https://www.ijiandao.com/

隨時(shí)掌握互聯(lián)網(wǎng)精彩
- 1 像石榴籽一樣緊緊抱在一起 7903987
- 2 廣東部分商超被搬空 只有辣椒被剩下 7808066
- 3 深圳宣布停工停業(yè)停市停課停運(yùn) 7711850
- 4 唱著民歌迎豐收 7616495
- 5 268萬翡翠標(biāo)錯(cuò)價(jià)按26.8萬賣出 7521159
- 6 全球最強(qiáng)臺風(fēng)明日登陸廣東 7424266
- 7 護(hù)網(wǎng):社交賬號不受控制?木馬在作祟 7330584
- 8 中國訂單至今為零 美國豆農(nóng)感受痛苦 7232262
- 9 牛彈琴:以色列的最大麻煩來了 7136739
- 10 空間站拍到樺加沙臺風(fēng)眼 壓迫感十足 7044149