連結預覽可說是幾乎所有聊天和即時訊息 App 普遍必備的功能,當然流行事物都有充分理由,透過提供與連結檔案有關的圖像和文字,使線上對話更簡單輕鬆。
但不幸的是,當然會洩漏用戶的敏感資料,消耗有限的頻寬,耗盡手機電池,並在某種情況下,會在聊天公開端到端加密連結。根據 10 月 26 日研究指出,資料外洩狀況最嚴重的即時訊息軟體包括 Facebook、Instagram、LinkedIn 和 LINE。
可能下載導致 App 停擺、消耗電池或頻寬的惡意軟體
當發送者訊息包含連結時,這類 App 會顯示對話以及伴隨連結的文字(通常是標題)和圖像。要做到這點,App 本身(或由 App 指定的代理程式)必須存取連結、開啟檔案,並查看其中內容。這麼做會讓使用者受到攻擊。最嚴重的惡意行為莫過於下載惡意軟體。其他形式的惡意行為可能會迫使 App 下載過大檔案,導致 App 停擺、耗盡電池或消耗有限頻寬。在這種情況下,連結也會指向私人資料(例如,將報稅單發佈到私人 OneDrive 或 DropBox 帳號),App 伺服器便有機會無限期查看並儲存這些資料。
撰寫研究報告的研究人員 Talal Haj Bakry 和 Tommy Mysk 發現,Facebook Messenger 和 Instagram 的表現最糟。這兩個 App 都會將整個連結檔案下載並複製(即使檔案大小高達好幾 Gigabyte 也是如此)。同樣的,如果使用者想保密的檔案,勢必會引起很大的問題。
另一個問題是,這些 App 會消耗大量頻寬和電池電量。這兩個 App 也會運行連結中任何 JavaScript。這是一個問題,因為使用者無法審查 JavaScript 的安全性,且無法期望 Messenger 擁有現代瀏覽器擁有的相同漏洞入侵防護機制。
請將連結預覽的資安問題納入考量,否則好功能也會變成大問題
Haj Bakry 和 Mysk 向 Facebook 通報研究結果,然而卻表示這兩個 App 的運作都很正常。至於 LinkedIn 的表現也只稍微好一點,唯一的區別是,沒有將任何檔案整個複製,只複製前 50Megabyte。
接下來看看 LINE App 的狀況。App 打開加密訊息並找到連結時,似乎會將連結發送到 LINE 伺服器以生成預覽。Haj Bakry 和 Mysk 寫道:「我們認為這違反了端到端加密的用意與目的,因為 LINE 伺服器知道所有透過 App 發送的連結,以及誰分享哪些連結給誰。」雖然 Discord、Google Hangouts、Slack、Twitter 和 Zoom 也都會複製檔案,但將複製的資料量限制在 15~50MB。
總而言之,這項研究帶給大家好消息,因顯示大多數即時通訊 App 都有做正確的事。如 Signal、Threema、TikTok 和 WeChat 都為使用者提供可接收無連結預覽的選項。對真正敏感的訊息和想隱身獲得盡可能保護的使用者來說,這才是最佳設置。即使提供預覽,這些 App 會使用相對安全的方式渲染。
不論如何,26 日的貼文無疑清楚提醒我們,私人訊息並不總是隱密的。「每當你構建新功能時,請務必牢記可能會對隱私和安全造成什麼影響,尤其是被全球成千上萬的人使用。」研究人員寫道。「連結預覽是使用者通常受益的不錯功能,但在這裡,我們展示了如果不仔細考慮隱私和安全問題,這功能有可能造成牽連層面甚廣的問題出現。」
(首圖來源:科技新報)