Socket 研究人员最近的一份报告揭示了一个令人担忧的供应链攻击,该攻击通过错别字抢注针对流行的 Node.js 库 chokidar 和 chalk。名为 “davn118 ”的攻击者创建了这些可信工具的恶意克隆,并嵌入了破坏性逻辑和数据渗入程序,以破坏开发人员的项目。
Chokidar 和 chalk 是重要的 Node.js 库:
- Chokidar 是一个文件监视库,每周下载量达 5600 万次。
- Chalk 用于终端字符串样式设计,每周下载量超过 2.65 亿次。
然而,名为 cschokidar-next 和 achalk-next 的恶意软件包打着 “最小、高效 ”替代品的幌子,隐藏着破坏性功能。报告称:“攻击者复制了每个库的全部合法代码,然后在底部添加破坏性和渗入逻辑。值得注意的是,每个假软件包都重复使用了与正版库相似的 README。”
木马库的工作原理
- 使用 “thanks() ”销毁文件: 两种克隆都使用名为 thanks() 的递归文件删除函数。对于 Chokidar 变种,该函数根据特定的环境条件触发。当 NODE_ENV 变量不等于 “development ”时,脚本会删除 .git、.vscode、src 和 node_modules 等关键目录。“脚本不仅会删除 .vscode 和 .package.json,如果密钥无效,还会删除更多文件夹:./library、./mock、./public 等。
- 白垩克隆中的数据渗透: 与 chokidar 不同,白垩克隆会窃取 VUE_APP_SECRET_KEY 和 VUE_GITHUB_USER_NAME 等环境变量,并将其发送到远程服务器(yc.cnzzsoft[.]com)。“如果服务器响应data.code == 202,代码就会在./.git和./node_modules等目录上调用thanks(),从而有效地让攻击者决定是否核爆你的项目。”
合法的库在开发管道中被广泛使用,这使得它们的克隆成为一种强大的威胁。Socket 强调说:“通过劫持 chokidar 和 chalk,攻击者 davn118 将值得信赖的开发工具变成了特洛伊木马,只要环境变量稍有不匹配,就会清除你的系统或窃取你的机密。”
有关详细见解,请访问 Socket 的官方报告。保持积极主动,确保您的依赖关系安全!
发表评论
您还未登录,请先登录。
登录