挖洞经验 | Telegram消息撤回功能存在BUG可导致用户隐私泄露(€2,500)
字数 1106 2025-08-18 11:39:00
Telegram消息撤回功能隐私泄露漏洞分析报告
漏洞概述
Telegram的消息撤回功能存在隐私泄露问题(CVE-2019-16248),即使用户撤回了一对一或群组聊天中的消息(特别是图片和文档),这些文件仍会保留在接收方的设备存储中。该漏洞在Telegram for Android 5.10.0 (1684)版本中被确认存在,Telegram在5.11版本中修复了此问题,并向报告者支付了€2,500欧元奖金。
技术细节
漏洞表现
-
文件存储路径:
- 图片存储在接收方设备的
/Telegram/Telegram Images/路径下 - 文档类文件也有类似的存储行为
- 图片存储在接收方设备的
-
撤回功能失效:
- 撤回操作仅删除聊天窗口中的消息显示
- 不会删除已存储在接收设备上的实际文件
-
权限问题:
- Telegram已获得设备USB存储的'读/写/更改'权限
- 技术上完全有能力删除这些文件但未实现
影响场景
-
一对一聊天:
- 用户A发送图片给用户B后撤回
- 用户B仍可通过文件系统访问该图片
-
群组聊天(特别是超级群组):
- 撤回操作不会删除群组成员设备上已存储的文件
- 影响范围随群组规模扩大而增加
对比分析
WhatsApp的实现
- 撤回消息时会同时删除存储在
/Whatsapp/Whatsapp Media/Whatsapp Images/路径下的文件 - 同样拥有必要的存储权限但实现了完整删除
- 提供了更彻底的隐私保护
解决方案
官方修复
- Telegram在5.11版本中修复了此问题
- 建议用户更新到最新版本
临时解决方案
-
使用加密聊天:
- 启用"New Secret Chat"功能
- 不会在设备上留下永久痕迹
- 提供端到端加密
-
手动清理:
- 接收方可手动删除
/Telegram/Telegram Images/下的文件 - 需要用户具备一定的技术知识
- 接收方可手动删除
技术建议
-
应用开发建议:
- 实现撤回功能时应考虑文件系统的清理
- 权限获取应与功能实现相匹配
- 隐私功能的设计应进行端到端测试
-
用户防护建议:
- 敏感信息优先使用加密聊天功能
- 定期检查应用权限设置
- 保持应用为最新版本
漏洞披露信息
- 漏洞编号:CVE-2019-16248
- 报告途径:security@telegram.org
- 奖励金额:€2,500欧元
- PoC视频:https://www.com/watch?v=_S64ApkqH1Y
总结
此漏洞揭示了即时通讯应用中"撤回"功能实现不完整可能导致严重的隐私泄露问题。开发者在设计类似功能时,必须考虑消息在界面层和存储层的完整生命周期管理,确保隐私保护承诺与实际行为一致。用户也应了解不同聊天模式的安全特性,根据需求选择适当的功能。