sha.js 是无幸 JavaScript 生态里最常用的轻量级加密库 。 它由 Browserify 社区维护 ,免严体积不足 20 KB,重漏却实现了 SHA-1、洞速SHA-224
、源码库无幸SHA-256
、免严SHA-384、重漏SHA-512 全系列算法
,洞速是无幸 crypto-browserify
、webpack、建站模板免严web3.js 等数百个流行包的重漏“根依赖”
。 而就在前几天,洞速美国 NVD(国家漏洞库)正式发布 CVE-2025-9288,无幸指向 JavaScript 加密库 sha.js 。免严 美国 NVD(国家漏洞库)正式发布 CVE-2025-9288 指向 JavaScript 加密库 sha.js。服务器租用重漏该漏洞被评定为 严重级(CVSS 9.1),影响 每周 1 400 万次下载 的 Node.js 与浏览器端项目,堪称 2025 年波及面最广的前端供应链事件之一
。 sha.js 在处理输入时 未校验数据类型与长度,模板下载攻击者通过构造畸形对象 : 即可触发 : 我们综合 NVD、GitHub Advisory 、npm 依赖树 以及 主流安全媒体 的交叉验证,整理出 35 条 确认受影响的云计算库与场景. 覆盖 Web3 、前端
、Node 服务、桌面与移动开发全链路
。 # 典型受感染版本 备注 1 browserify ≤17.0.0 打包器 2 create-hash ≤1.2.0 被大量加密库二次封装 3 create-hmac ≤1.1.7 HMAC 封装 4 crypto-browserify ≤3.12.0 Web 环境 crypto polyfill 5 crypto-js ≤4.1.1 重新打包 sha.js 旧代码 6 elliptic ≤6.5.4 椭圆曲线运算 7 ethers ≤4.0.47 / 5.6.8 以太坊 JS SDK 8 ganache-cli ≤6.12.2 本地区块链 9 hash.js ≤1.1.7 sha.js 的别名发布 10 keccak ≤3.0.2 以太坊 Keccak 封装 11 merkle-patricia-tree ≤4.2.4 以太坊状态树 12 mocha ≤9.2.2 测试框架(开发依赖) 13 parcel-bundler ≤2.8.3 零配置打包器 14 web3 ≤1.7.0 以太坊官方 JS SDK 15 webpack ≤4.46.0 / ≤5.74.0 构建工具 # 包名 / 组件 场景说明 16 @solana/web3.js Solana 链 JS SDK(历史版本锁定) 17 @truffle/contract Truffle 测试套件 18 @vue/cli-service Vue CLI 打包链 19 @angular-devkit/build-angular Angular CLI 20 @react-native-community/cli React Native CLI 21 hardhat 以太坊本地开发框架 22 remix-dev Remix 全栈框架 23 next Next.js SSR 框架 24 nuxt Nuxt.js SSR 框架 25 expo-cli Expo RN 开发工具 26 serverless Serverless Framework 27 electron-builder Electron 打包器 28 @babel/preset-env Babel 转译链 29 jest-environment-jsdom Jest 测试环境 30 ts-node TypeScript 运行时 31 lerna Monorepo 管理 32 gulp-cli 流式构建工具 33 rollup-plugin-node-polyfills Rollup Node Polyfill 34 vite Vite 构建工具(部分插件) 35 astro Astro 静态站点生成器 临时缓解(无法立即升级时):在调用 sha.js 前加入类型校验,仅允许 string 或 Buffer 类型输入 。 官方参考链接
:

