11个Ruby库被植入挖矿后门代码 删除前已被下载3584次

RubyGems 工作人员表示,他们已经移除了 18 个包含后门机制的恶意版本 Ruby 库。自 7 月 8 日以来,其已被下载 3584 次。如剔除同一库的不同版本,则有 11 个 Ruby 库被污染。这些 Ruby 库被软件包存储库的恶意维护者破解并植入了后门代码,可在其他人启用的 Ruby 项目中开展隐匿的加密货币挖掘任务。

(图自:GitHub,via ZDNet)

昨天,人们在四个版本的 rest-client 中首次发现。作为一个相当流行的 Ruby 库,荷兰开发人者 Jan DIntel 分析称:

恶意代码会收集受感染系统的 URL 和环境变量,并将之发送到位于乌克兰的远程服务器。

根据用户的设置,这可能包括当前使用的服务凭证,数据库和支付服务提供商都该倍加小心。

此外,代码包含了一个后门机制,允许攻击者将 cookie 文件发送回受感染的项目中,并执行恶意命令。

RubyGems 工作人员在后续的一次调查中发现,这种机制被滥用并植入了加密货币的挖矿代码,然后又在另外 10 个项目中发现了类似的代码。

据悉,除了 rest-clint 之外的所有库,都调用了另一个功能齐全的库来添加恶意代码,然后以新名称在 RubyGems 重新上传以实现创建。

受影响的 11 个库名如下(具体版本号请移步至官网公告查看 / GitHub 传送门https://github.com/rubygems/rubygems.org/issues/2097):

rest-clint、bitcoin_canity、lita_coin、coming-soon、omniauth_amazon、cron_parser、coin_base、blockchain_wallet、awesome-bot、doge-coin、以及 capistrano-colors 。

遗憾的是,这个隐匿的计划已经活跃了一个多月,结果期间一直未被他人发现。

到黑客设法访问其中一位客户端开发人员的 RubyGems 账户时,人们才惊觉其在 RubyGems 上推送了四个恶意版本的 rest-clint 。

最终,在所有 18 个恶意库版本被 RubyGems 删除之前,其已经累积了 3584 次下载。

在此,官方建议在关系树中对这些库有依赖的项目开发者,务必采取相应的升级或降级措施,以用上相对安全的版本。