过去一年,发生了一连串开源软件遭受供应链攻击的事件,并且态势愈演愈烈。就在最近,甚至发现 2 个独立的后门漏洞进入数十万服务器管理员下载的库中。
第一个曝光的后门来自 Webmin,这是一个安装量超过 100 万,基于 Web 的管理工具。根据 Webmin 开发人员 Jamie Cameron 称,去年 4 月左右,攻击者破坏了用于开发新版本程序的服务器。然后,恶意使用访问权分发了一个后门,导致这个后门被下载超过 900,000 次,并且可能已被数万个服务器主动使用。
未知的攻击者对名为 password_change.cgi 的 webmin 脚本进行了细微更改,此更改让攻击者能够通过特殊 URL 发送命令。
随后,受感染的 Webmin 服务器将以 root 权限执行该 URL。从 2018 年 6 月到上周末,1.890 版本下载次数超过 421,000 次,并在默认情况下启用后门。在 1.90、1.91、和 1.92 版本上,则有超过 942,000 多次下载,只有当管理员改了“允许更改过期密码”的默认设置时,后门才处于活动状态。而 sourceforge 是此次的主要分发源。
从 Shodan 搜索引擎收集的统计数据显示,成千上万的联网服务器运行了这些版本的 Webmin,尽管不排除其中一些服务器运行的 Webmin 是由 Github 或其他版本未经修改的代码构建的,不包括后门的来源,但造成的影响依旧巨大。
RubyGems 后门置入
RubyGems 存储库的十一个库中出现了第二个后门。
根据开发人员 Jan Dintel 的分析,该后门允许攻击者使用预先选择的凭据在受感染的服务器上远程执行命令。
该恶意软件包括各种其他功能,包括将环境变量(包含用于访问数据库、服务提供商和其他敏感资源的凭据)上传到位于 mironanoru.zzz.com.ua 服务器的代码里。并且,Rubygems 的工作人员还发现其中含有加密货币挖掘代码。
总而言之,Rubygems 数据显示,后门库的下载次数已经接近 3600 次。
目前,尚不清楚其余的 RubyGems 库是如何被感染的。RubyGems 工作人员也没有公开回复。
利用信任
Webmin 和 RubyGems 库的结果都是最新供应链攻击针对开源软件的表现。大多数人从已知开发人员的官方网站安装软件或更新的时候,不会深思。
因此,在过去几年,黑客越来越多地利用这种信任,通过源代码来传播恶意软件。
去年 10 月,发生了一连串的攻击事件,仅在一周之内就发生了 2 起针对开源项目的供应链攻击。第一个是 vestapp 控制面板接口,另一个是名为“Colourama”的软件包,它被放入了官方 Python 存储库。
一个月后,又出现了一个旨在从比特币钱包窃取资金的恶意代码,拥有 200 万下载量,被财富 500 强企业和小型初创企业使用。
负责后台软件的开源项目经理说,该恶意代码是针对使用 Copay 开发的比特币钱包的人而设计的,而 Copay 只是该恶意软件的受害者之一。
去年三月,研究人员发现另一个叫做 bootstrap-sasswa 的的 RubyGems 库也被置入后门。历史总是惊人地相似,上个月初,一个叫做 strong_password.的 RubyGems 库也发生类似感染。就像最近发现的感染 11 个 RubyGem 项目的事件一样,bootstrap-sass,strong_password 后门使用浏览器 cookie 功能,让攻击者能在受感染的服务器上执行代码。strong_password 后门还与 smiley.zzz.com.ua 域名进行了互动,而这个域名又与最近攻击中使用的 mironanoru.zzz.com.ua 非常相似。
供应链攻击变得更“容易”
事实上,除了开源软件,闭源软件也属于供应链攻击的牺牲品。
华硕两次被入侵,恶意更新税务会计软件 M.E.Doc 导致 2017 年 NotPetya 爆发,以及同年感染了 CCleaner 的另一个后门,这些事件都可以证明。为什么针对开源软件/项目的供应链攻击似乎更容易?因为很多公司不会在其庞大的贡献者群体中进行多因素身份验证和代码签名。
Atredis Partners 研发副总裁 HD Moore 表示:“最近的发现表明,这些问题越来越频繁,围绕软件包发布和管理的安全生态系统没有得到足够的改善。可怕的是,这些实例中的每一个都可能导致更多的开发人员帐户受到攻击(通过捕获的密码、授权令牌、API 密钥和 SSH 密钥)。攻击者可能有足够的凭据可以反复执行此操作,直到所有凭据都重置并放置了适当的 MFA 和签名。”
Moore 认为,开源供应链感染的影响通常难以衡量,因为后门应用程序可以被另一个软件包作为上游依赖项包含在内。而默认情况下,依赖管理工具推送最新软件包的方式,使得在后端依赖的情况下成功进行攻击的可能性更大。而开源攻击也会造成很大的损失,因为它们会影响用于执行电子邮件和提供网页等功能的服务器。
一旦服务器安装了一个后门应用程序,唯一办法就是执行一个完整的重建,但是这个任务非常繁琐艰巨, 在收到恶意篡改包的 100000 个或更多系统中肯定会有很多部分被忽略,从而导致重建困难。“如果不彻底重装操作系统和应用程序,以及轮换密钥和凭证,系统将有很大的风险并且继续受到威胁,但是运营商认为他们可以通过文件差异手动检查系统,并自己进行有效评估。”Open Crypto Audit 项目主管 Kenn White 表示,“但不得不说,这太天真了!”(本文转自freebuf.com)
原文链接:
https://www.freebuf.com/articles/network/212434.html
评论 1 条评论