預設設定下的Telegram撥打電話會洩露IP地址
Telegram Messenger是一款通訊應用程式,允許通過Internet與其他使用者建立加密聊天和打電話。該程式將自己描述為一個安全的私人通訊應用程式,但研究人員已經證明,在預設配置中,在撥打電話時它會洩露使用者的IP地址。
這是由Telegram中的預設設定引起的,其語音呼叫通過P2P進行。但是,當使用P2P發起Telegram呼叫時,通話另一方的IP地址將顯示在Telegram控制檯日誌中。並非所有版本都包含控制檯日誌。例如,在我們的測試中Windows版本不顯示控制檯日誌,而Linux版本則顯示。
Telegram應用程式確實表明使用者可以通過更改Settings -> Private and Security -> Voice Calls -> Peer-To-Peer為 Never或Nobody來阻止他們的IP地址被洩露。執行此操作將導致使用者的呼叫通過Telegram的伺服器進行路由,這將隱藏IP地址,但代價是音訊質量略有下降。
iOS版Telegram的P2P設定
問題是,雖然可以在iOS和Android中禁用P2P呼叫和相關的IP地址洩漏,但安全研究人員 ofollow,noindex">Dhiraj 發現官方的Telegram for Desktop(tdesktop)和Telegram Messenger for Windows應用程式無法禁用P2P通話。
這意味著只要使用者使用Telegram撥打電話,這些使用者的IP地址就會洩露。 可以在Ubuntu上看到Telegram for Desktop控制檯中洩露的IP地址示例。
Telegram控制檯日誌中洩露了IP地址
在與Dhiraj的對話中,研究人員與BleepingComputer分享了一個PoC視訊,說明了IP地址是如何洩露的。
Dhiraj解釋道,
在我的視訊PoC中可以看到3個IP洩漏:1.電報Telegram伺服器IP。2.你自己的IP。3.終端使用者的IP。
在向Telegram警告有關Telegram for Windows和Telegram for Windows缺失該設定後,Dhiraj獲得了2,000歐元的獎金,他的報告漏洞被分配了ID號CVE-2018-17780。
此問題已在1.3.17測試版和1.4.0版本的Telegram for Desktop中得到修復,其中有一個設定可以禁用新增到程式中的P2P呼叫。
Telegram原始碼更改
為什麼Telegram一個以安全性和隱私為傲的應用程式,預設情況下會啟用P2P呼叫,因為它知道洩漏IP地址沒有意義。 當BleepingComputer向Dhiraj詢問Telegram是否有理由這樣做時,他告訴我們“不就此事提供任何評論。”
BleepingComputer已聯絡Telegram徵求意見,但在本文釋出時尚未收到回覆。