欢迎访问 内存溢出 —— 独立后端与系统工程技术博客

专注于分布式系统、Linux内核、数据库存储与后端工程实践

供应链投毒:npm 依赖混淆(Dependency Confusion)与私有源加固

发表于:|最后更新:|分类:DevSecOps|阅读:908 次

当企业私有包名未在公共 npm 源占位时,攻击者可抢注同名高版本包,利用包管理器“取最高版本”的策略让构建流水线拉取恶意公共包。

npm 依赖树

一、锁定私有源并禁用公共回退

ini
# .npmrc 强制私有 scope 只走内部源
@company:registry=https://npm.internal.example.com/
registry=https://registry.npmjs.org/
# 禁止私有 scope 回退到公共源
@company:always-auth=true
json
{
  "overrides": {
    "@company/internal-lib": "1.4.2"
  }
}