Socket 威胁研究团队发现了一起新的供应链攻击,其目标是开发 Telegram 机器人的开发者。此次攻击涉及恶意的 npm(Node Package Manager,节点包管理器)软件包,这些软件包伪装成合法的 Telegram 机器人库,会植入 SSH后门并执行数据窃取程序。
Telegram 每月有超过 10 亿的活跃用户以及 1200 多万付费订阅者,已成为机器人开发者的一个强大平台。然而,其缺乏监管的机器人生态系统 ——“任何人都可以使用机器人应用程序编程接口(Bot API)创建和发布机器人,而无需经过正式的审核流程”—— 为滥用行为打开了方便之门。
报告中指出:“机器人竞赛(奖金高达 5 万美元)吸引了大量热情但往往缺乏经验的开发者。” 报告还补充道,由于没有官方应用商店,Telegram 机器人很容易成为供应链渗透的目标。
Socket 发现了三个恶意的 npm 软件包:node-telegram-utils、node-telegram-bots-api 和 node-telegram-util,它们模仿了广受信任的 node-telegram-bot-api 软件包(该软件包的下载量超过 420 万次)。这些仿冒库复制了README files,甚至还链接到合法的 GitHub 代码库,采用了一种被称为starjacking 的技术来伪造可信度。
尽管这些恶意软件包的总下载量只有 300 次,但风险仍然巨大。研究人员警告称:“只需一个被攻陷的环境,就可能为大规模渗透铺平道路。”
此次攻击的核心是一个名为 addBotId () 的隐藏函数,当调用软件包构造函数时,该函数会自动被调用,且无需用户交互。如果检测到操作系统是 Linux,该函数会执行以下操作:
1.向~/.ssh/authorized_keys 文件中注入两个 SSH 公钥,确保即使其中一个密钥被删除,仍能持续进行无密码访问。
2.从受害者的系统中提取外部 IP 地址和用户名。
3.将这些信息发送到一个托管在 solana [.] validator [.] blog 上的恶意端点。
报告强调:“仅删除软件包并不能移除已注入的 SSH 密钥,这会使系统持续面临未经授权的访问风险。”
这场恶意软件攻击活动的影响非常严重:
1.通过注入的 SSH 密钥可实现对服务器的持续访问。
2.通过悄然窃取数据导致敏感数据泄露。
3.有可能通过远程代码执行实现对整个系统的完全控制。
这次攻击清楚地提醒人们,受信任的开发工具是如何成为被利用的渠道的。
Socket 建议立即采取防御措施:
1.定期进行依赖项审计,以识别恶意或被篡改的软件包。
2.使用像 Socket 的人工智能驱动工具这样的自动化安全扫描程序,在集成之前检测威胁。
3.验证开源软件包的合法性,尤其是那些模仿流行库的软件包。
该团队警告称:“攻击者不断展现出适应能力,他们利用像 npm 这样受信任的开源生态系统,来分发伪装成合法工具的恶意软件。”
发表评论
您还未登录,请先登录。
登录