全球CDN服务“jsdelivr”使用户遭受网络钓鱼攻击

在Web开发的互联世界中,开源组件发挥着至关重要的作用,促进了开发人员社区内的协作和代码共享。然而,最近发生的事件暴露了供应链中的漏洞,恶意行为者利用开源内容交付网络(CDN)来提供危险的软件包,即使这些软件包已被标记并从软件包注册表中删除。

NPM(节点包管理器)长期以来一直是JavaScript编程语言的首选包管理器,也是Node.js项目的默认选择。NPM的集中式注册表中提供了超过一百万个开源JavaScript包,使开发人员能够轻松安装、管理和共享代码包。为了保护开发人员,NPM采用了安全措施,例如自动漏洞扫描、建议以及审核已安装软件包是否存在已知安全缺陷的能力。

jsdelivr是一个开源内容交付网络,为开发人员提供了一种快速可靠的方式来托管和分发文件,包括Web项目的外部库和资源。jsdelivr作为全球CDN运行,服务器分布在世界各地,可确保从最靠近用户位置的服务器获取文件,从而优化性能并减少延迟。它对版本控制的支持允许开发人员引用特定的库版本,确保项目在更新期间的稳定性。

最近发现的恶意软件包“reactenz”引起了人们对系统中一个令人担忧的缺陷的关注。该包伪装成流行的“react-enzyme”包的合法替代品,在GitHub代码片段中广泛使用。但经进一步调查,发现“reactenz”不怀好意。

一旦集成到网页中,“reactenz”就会从jsdelivr CDN服务下载编码的.txt文件,并将其解码为HTML。.txt文件的内容是经典的网络钓鱼HTML代码,旨在诱骗用户重置其Microsoft密码并窃取其更新的凭据。特别令人不安的是,即使在NPM上被标记为恶意之后,“reactenz”仍然可以通过CDN访问。

这一事件暴露了两个关键问题。首先,虽然NPM尝试快速删除恶意软件包,但通过CDN提供的内容在检测后很长时间内仍然可以访问。其次,威胁行为者可以利用CDN服务来提供恶意内容,同时躲避传统的安全工具,这些工具通常会监控网络下载是否存在潜在的恶意指标。

另一个令人震惊的发现是恶意软件包“standforusz”,即使在NPM上被标记为恶意一个月后,仍然可以通过jsdelivr CDN访问该软件包。“markedjs”软件包也发现了类似的情况,该软件包一年多前就被识别为恶意软件,但在CDN上仍然存在可访问的恶意组件。

Check Point CloudGuard数据科学主管Ori Abramovsky在博客文章中表示,研究人员立即向NPM和jsdelivr报告了调查结果,从而从其平台上删除了恶意软件包和内容。然而,这一事件强调了开源组件所带来的持续风险,敦促开发人员保持警惕并验证其依赖项的完整性。

解决供应链攻击风险需要开发者社区的集体努力。开发人员在使用开源包时必须谨慎行事,验证其真实性并采取安全的开发实践。安全工具和软件包注册表也需要加强措施,防止供应链攻击并及时删除恶意软件包。

总之,最近对jsdelivr CDN的利用强调了开源社区需要持续保持警惕和协作。通过维护安全的开发流程并随时了解潜在风险,开发人员可以共同努力保护项目的完整性和最终用户的安全。

发表评论

评论已关闭。

相关文章