2023 年 9 月 11 日更新。Google 已通知我们所有应用程序均已从 Google Play 商店中删除
不久前,我们在 Google Play 上发现了一堆带有繁体中文、简体中文和维吾尔文描述的 Telegram 模组。该供应商表示,这些是最快的应用程序,使用世界各地的分布式数据处理中心网络。
经过 Google Play 正式测试并可通过官方商店购买的 Telegram 模组可能存在什么问题?事实上,有很多事情:威胁行为者不仅想办法渗透 Google Play,而且还出售他们的东西。那么,我们继续分析Messenger模块。
启动后,该应用程序与原始 Telegram 没有什么不同。
不过为了安全起见,我们还是看一下它的代码吧。
乍一看,它给人的印象是一个完全普通的 Telegram 模组:大多数软件包看起来与标准软件包相同。但是,仔细检查后,您可以看到名为com.wsys的包,这对于 Telegram 来说并不常见。让我们看看哪些函数调用了这个包的方法。
调用 com.wsys 的函数列表表明这段代码意味着访问用户的联系人。至少可以说,考虑到该软件包不是信使标准功能集的一部分,这看起来很可疑。
com.wsys 库在添加到负责应用程序开始屏幕的主活动类中的 connectSocket() 方法中运行。当您启动应用程序或切换到另一个帐户时,会调用该方法。它收集与用户相关的信息,例如姓名、用户 ID 和电话号码,然后应用程序连接到命令服务器。
当用户收到消息时,还有一个令人不快的惊喜等待着用户:在传入消息处理代码中,威胁参与者添加了对 uploadTextMessageToService 方法的调用。
比较:干净的 Telegram 版本不包含同一代码区域中的方法。
接收消息时,uploadTextMessageToService 会收集消息内容、聊天/频道标题和 ID,以及发送者的姓名和 ID。然后,收集的信息被加密并缓存到名为 tgsync.s3 的临时文件中。应用程序以一定的时间间隔将此临时文件发送到命令服务器。
该应用程序的恶意功能并不仅限于窃取消息。对 uploadFriendData 方法的调用已添加到联系人处理代码中。
该方法用于收集有关用户联系人的信息:ID、昵称、姓名和电话号码。所有这些都以大致相同的方式发送到命令服务器。
如果用户决定更改他们的电话号码名称,这些信息最终也会落入流氓之手。
当用户接收或发送文件时,应用程序会创建该文件的加密副本,然后将其转发到位于流行云存储之一的攻击者帐户。
结论
最近,使用各种非官方 Telegram 模组的攻击呈上升趋势。他们通常会替换用户消息中的加密钱包地址或进行广告欺诈。与这些不同的是,本文中描述的应用程序来自一类成熟的间谍软件,针对特定区域(中国)的用户,能够窃取受害者的全部信件、个人数据和联系人。然而,他们的代码与原始 Telegram 代码仅略有不同,以实现顺利的 Google Play 安全检查。 如您所见,成为官方商店商品并不能保证应用程序的安全,因此请警惕第三方通讯模组,甚至是由 Google Play 分发的模组。我们向谷歌报告了这一威胁,但截至撰写本文时,某些应用程序仍然可供下载。
(文章内容由Google 翻译)