您现在的位置是:系统运维 >>正文

天塌了!NPM 又被 投毒‼️

系统运维1942人已围观

简介就在七天前,npm才刚刚经历一场“史诗级”供应链大屠杀:攻击者篡改大名鼎鼎的chalk依赖,把挖矿木马 + 系统信息窃取脚本塞进每周下载量 6000 万次的流行包,导致全球无数 CI 瞬间变矿场详见《 ...

就在 七天前 ,天塌npm 才刚刚经历一场 “史诗级”供应链大屠杀 :

攻击者篡改大名鼎鼎的被投 chalk 依赖,把 挖矿木马 + 系统信息窃取脚本 塞进 每周下载量 6000 万次的毒‼流行包,导致 全球无数 CI 瞬间变矿场(详见《npm 大屠杀:6000 万下载量 chalk 系被投毒》)。天塌

社区惊魂未定 ,被投官方连道歉信都没写完——第二把刀闪电般捅到 :

48 小时内“双连击”9/15 傍晚:220 万周下载量的毒‼ @ctrl/tinycolor 被劫持发布恶意版本 ,postinstall 自动执行 bundle.js,天塌扫描并外泄本地机密 。被投

9/16 凌晨:同一攻击链已 横向感染 40+ 包,毒‼涵盖 Angular 生态、天塌颜色工具 、被投甚至企业安全厂商包 。建站模板毒‼

9/16 早上 :第二波投毒 启动,天塌目标直指 CrowdStrike 相关 npm 包,被投可自动触发恶意 GitHub Actions 。毒‼

一句话总结 :上周投毒 chalk ,本周轮到你离不开的配色小工具 + 安全大厂 SDK ,连“守门员”都成了输送后门的人 。

攻击手法拆解

(1) 入口:钓鱼或泄露 maintainer 的 npm 令牌 → 劫持发布通道 。

(2) 植入  :在 package.json 的 postinstall 字段调用 node bundle.js  。

(3) 执行:

扫描 ~/.aws、~/.npmrc 、亿华云~/.env、GITHUB_TOKEN 、DOCKER_AUTH 。把机密拼接到 webhook.site 公开地址 ,无需自建服务器。若运行在 GitHub Actions,还会 创建新的 workflow 文件,持续驻留 。

(4) 扩散:利用依赖平级提升(hoist)(node_modules/@ctrl/tinycolor 被上百个包引用),一次投毒 ,万人中招。

哪些包已确认“含毒”

以下名称均来自 Socket 团队实时推文 ,列表仍在增加:

@ctrl/tinycolor(≥4.0.3)crowdstrike-* 系列今早更新的云计算所有版本任何在 9/14-9/16 突然发 patch 的 Angular 配色周边包名称带 -color、-theme、-ui 且 版本号异常跳升 的小众包(典型特征 :上周下载 <1000 ,突然发 2.0.0)自查与急救三步走

(1) 停装

复制# 全局关闭脚本 npm config set ignore-scripts true # 如果 CI 里用的是 yarn,也加 yarn config set ignore-scripts true1.2.3.4.

(2) 锁死

复制# 把现有可用版本写死 npm shrinkwrap # 或者把 lock 文件设为只读  ,禁止自动刷新 git add package-lock.json && git commit -m "freeze clean deps"1.2.3.4.

(3) 清密

立刻轮换:

GitHub Personal Access TokenNPM 访问令牌Docker Hub、AWS、Vault 等任何在 ~/.npmrc 或 env 里出现过的密钥

审查 GitHub Actions 日志,看是免费模板否出现陌生 workflow_run 或对外 HTTP 200 到 webhook.site。

以后还能不能 npm i?

可以,但 别手滑 。给出三条“保命”默认配置 :

npm:npm ci --ignore-scripts --audit signaturesyarn :yarn install --ignore-scriptspnpm:pnpm install --ignore-scripts(pnpm 默认会弹窗让你审脚本 ,最安全)

再加一道 Socket 插件 :

复制npx socket@latest scan1.

可在 install 前给出 实时风险评分,9 月以来的所有投毒包均被标为 Critical。

写在最后

npm 的“便利”是把双刃剑 :一个 postinstall 就能让任何开发者的电脑变成矿机 、泄密器 、C2 跳板。

供应链攻击已进入 “小时级”迭代 时代,源码库靠 npm 官方人工下架根本来不及 。真正的安全阀只有两道:

开发者自己的手指——别一键 npm i;自动化审查工具——让机器先跑,确认无毒再装。

记住 :每一次 npm i,都是把别人写的代码直接跑在你的笔记本、CI 、生产服务器上 。

Tags:

相关文章

  • 采用零信任架构抵御勒索攻击的八个理由

    系统运维

    勒索软件已经存在了几十年,但其流行程度直到最近两年才出现爆炸式增长。这些攻击由一些专门的攻击组织发起,并通过相互买卖专业的勒索工具和服务包,不断降低勒索攻击的准入门槛。在此背景下,勒索软件攻击已经成为 ...

    系统运维

    阅读更多
  • win10桌面图标有白色小块

    系统运维

    我们打开电脑的时候发现桌面图标上有一个白色的框框,这让很多小伙伴图标难受,但是又不知道如何解决,今天小编带来一个非常有效的解决方法,用360的人工服务删除快捷方式小箭头就可以了,具体的教程下面跟我一起 ...

    系统运维

    阅读更多
  • win10商店无法连接网络

    系统运维

    在使用win10商店的时候,很多的用户们发现电脑网络并没有什么问题,但是win10商店却无法连接网络了,这个问题需要怎么去解决呢,快来看看详细的解决教程吧~win10商店无法连接网络:1、键盘上按下【 ...

    系统运维

    阅读更多

滇ICP备2023006006号-40