/ 中存储网

开源 NPM 存储库发现大量恶意代码,下载量已超27000次

2022-07-10 15:33:30 来源:科技号

科技号消息,来自国外媒体报道:ReversingLabs 的研究人员表示,在开源 NPM 存储库中可用的软件包中发现了更多恶意 Javascript 代码,并强调了最近在开源站点上发现的不可信库。

该公司表示,它已经发现了超过 20 个坏包,可追溯到 6 个月前,其中包含混淆的 Javascript,旨在从使用部署了恶意包的应用程序或网站的个人那里窃取表单数据。

研究人员将其描述为“协同供应链攻击”。

报告称:“虽然尚不清楚这次攻击的全部范围,但我们发现的恶意程序包可能被数百甚至数千个下游移动和桌面应用程序以及网站使用。” “在一个案例中,恶意程序包已被下载超过 17,000 次。”

攻击者依靠拼写错误,用与合法包相似或常见拼写错误的名称来命名他们的包。被模仿的有高流量模块,如雨伞js (假模块称为雨伞)和由ionic.io发布的包。

报告补充说,用于泄露数据的域之间的相似性表明,该活动中的各个模块都在单个参与者的控制之下。

NPM 是开发人员在其应用程序中使用的众多开源软件包库之一。其他的是 PyPI、Ruby 和 NuGet。

最近在这些库中发现的不良代码只是强调了应用程序开发人员需要仔细审查他们从开源网站下载的代码。他们可以使用的一个工具是一个 javascript 反混淆器来检查混淆代码——这本身就是一个可疑的迹象。

ReversingLabs 使用它发现的可疑模块做到了这一点,发现它们都使用 jQuery Ajax 函数收集表单数据并将其发送到恶意作者控制的各个域。

不仅恶意包的名称与合法包相似,包链接到的网站在某些情况下也是精心制作的真实网站的副本。这也欺骗了那些下载软件包的人。例如,这是链接到 ReversingLabs 发现的恶意程序包之一的假 Ionic 页面……

“这次攻击标志着软件供应链攻击的显着升级,”报告称。“捆绑在 NPM 模块中的恶意代码在未知数量的移动和桌面应用程序和网页中运行,收集了无数的用户数据。

“我们团队确定的 NPM 模块的总下载量已超过 27,000 次。由于很少有开发组织能够检测开源库和模块中的恶意代码,因此攻击持续了几个月才引起我们的注意。虽然一些命名包已从 NPM 中删除,但在本报告发布时大部分仍可供下载。”