npm 生态遭大范围投毒:TanStack、Mistral AI、UiPath 等受波及,可窃取云密钥与 GitHub 令牌

TL;DR · AI 摘要
npm 生态遭大规模供应链攻击,超 160 个包受影响,攻击者通过 GitHub Actions 漏洞利用 OIDC 令牌实现合法发布,窃取云密钥与 GitHub 令牌。
核心要点
- 攻击者利用 GitHub Actions 的 pull_request_target 漏洞与跨 fork 缓存投毒,绕过双重验证完成恶意发布。
- @tanstack/react-router 周下载量超 1200 万次,影响范围极广。
- 恶意代码通过 prepare 钩子执行,窃取 AWS/GCP/K8s/Vault 等 10+ 类凭据并加密外传。
结构提纲
按章节快速跳转。
- §事件概述
npm 生态出现大规模投毒事件,涉及 TanStack、Mistral AI、UiPath 等多个知名项目,超过 160 个软件包被植入恶意代码。
攻击者通过伪造 GitHub 提交和利用 OIDC 受信任发布者身份,在不泄露 NPM 凭证的情况下直接推送恶意包至注册表。
新增 2.3MB 混淆 JS 文件 router_init.js,通过 prepare 钩子在安装时自动执行,窃取包括云密钥与 GitHub 令牌在内的多种敏感信息。
恶意版本覆盖 @tanstack、@mistralai、@uipath 等 10 余个命名空间,共 373 个恶意条目,波及企业级工具包。
所有恶意版本已被弃用,NPM 安全团队已移除恶意包,GitHub 缓存条目也已完成清理。
思维导图
用一张图看清主题之间的关系。
查看大纲文本(无障碍 / 无 JS 友好)
- npm 生态大规模投毒事件
- 攻击目标
- TanStack
- Mistral AI
- UiPath
- Squawk
- TallyUI
- 攻击手段
- GitHub Actions 漏洞利用
- OIDC 令牌劫持
- 跨 fork 缓存投毒
- prepare 钩子执行恶意代码
- 恶意行为
- 窃取云密钥与 GitHub 令牌
- 加密外传数据(Session/Oxen)
- 植入持久化监控组件
- 影响规模
- 超 160 个包
- 近 373 个恶意版本
- 周下载量超 1200 万
金句 / Highlights
值得收藏与分享的关键句。
攻击者利用 pull_request_target 模式与跨 fork 缓存投毒,结合 OIDC 令牌实现合法发布,绕过了双重身份验证。
@tanstack/react-router 周下载量超 1200 万次,使得本次攻击具备极强传播力。
恶意代码从 AWS IMDS、GCP 元数据、Kubernetes 服务账户、Vault、~/.npmrc 等 10 多个位置窃取凭据并加密上传。
感谢IT之家网友 阿狗 的线索投递!
IT之家 5 月 12 日消息,网络安全检测机构 Socket 于当地时间 5 月 11 日发出警报,在开源工具库 TanStack 旗下约 84 个 NPM 软件包的恶意版本中发现疑似凭证窃取恶意代码。
受影响软件包覆盖 42 个 @tanstack/* 命名空间下的项目,其中 @tanstack / react-router 的周下载量超 1200 万次,此类工具包在 NPM 生态中被广泛直接或间接引用,使得本次供应链攻击具有极广的传播范围。

分析发现,被篡改的软件包中新增了一个约 2.3MB、经过高强度 JavaScript 混淆的文件 router_init.js,同时 package.json 中增加了一个指向 GitHub 特定提交的 optionalDependencies 依赖项。
该提交来自一个名为 voicproducoes 的 GitHub 账户,是一个无历史记录的单根提交,包含伪造的包 @tanstack / setup 及其 prepare 生命周期钩子,后者在被安装时会执行任意恶意代码。当开发者或 CI 系统执行包安装操作时,该钩子自动运行,从多个常用位置窃取密钥、令牌和凭据,包括 AWS IMDS 与 Secrets Manager、GCP 元数据、Kubernetes 服务账户令牌、Vault 令牌、~/.npmrc、GitHub 令牌以及 SSH 私钥。窃取的数据通过 Session / Oxen 加密文件上传网络外泄,攻击者同时植入持久化监控组件,能够在受害者机器上维持长期访问。
TanStack 在事后技术复盘中将攻击链归因于三种 GitHub Actions 漏洞的组合利用:攻击者利用 pull_request_target“Pwn Request”模式、跨 fork 缓存投毒以及从 GitHub Actions 运行器进程的内存中实时提取 OIDC 令牌。
在此过程中,NPM 凭证并未泄露,合法发布工作流也未遭攻破,恶意发布是通过项目的 OIDC 受信任发布者绑定进行身份验证后直接推送到 NPM 注册表完成的。
官方同时声明,受影响成员账户均启用了双重身份验证,但攻击者利用 Git 环境下孤儿提交方式绕过了现有的发布保护机制。所有恶意版本已被弃用,TanStack 已联系 NPM 安全团队从注册表中移除恶意压缩包,GitHub Actions 缓存条目也已清理。
本次攻击被安全机构归为正在蔓延的大规模“Mini Shai-Hulud”供应链攻击的一部分。此前该攻击曾针对 SAP 生态系统的 NPM 包,现已扩展为波及更广泛的 NPM 投毒活动。
据不完全统计,目前已受影响的软件包覆盖 @squawk、@tanstack、@uipath、@tallyui、@beproduct、@mistralai 等多个命名空间,共计超过 160 个包名、近 373 个恶意版本条目。
其中 @mistralai / mistralai(官方 TypeScript 客户端)和 @uipath / apollo-core 等企业级工具包亦被植入同类型窃取凭证的蠕虫,采用相同的下载 Bun 运行时并执行恶意载荷的传播机制。
软件包 版本 pypi mistralai 2.4.6 pypi mistralai 2.4.6 npm@opensearch-project opensearch 3.5.3 npm@opensearch-project opensearch 3.8.0 npm@opensearch-project opensearch 3.7.0 pypi guardrails-ai 0.10.1 pypi guardrails-ai 0.10.1 npm@opensearch-project opensearch 3.6.2 npm cross-stitch 1.1.7 npm@squawk fix-data 0.6.8 npm@squawk weather 0.5.10 npm@squawk icao-registry-data 0.8.8 npm@squawk airport-data 0.7.8 npm@squawk flightplan 0.5.6 npm@squawk units 0.4.7 npm@squawk flight-math 0.5.8 npm@squawk mcp 0.9.5 npm@squawk fixes 0.3.6 npm@squawk airspace-data 0.5.7 npm@squawk procedure-data 0.7.7 npm@squawk navaids 0.4.6 npm@squawk procedures 0.5.6 npm@squawk notams 0.3.10 npm@squawk airways 0.4.6 npm@squawk airports 0.6.6 npm ts-dna 3.0.5 npm@squawk types 0.8.5 npm@squawk icao-registry 0.5.6 npm@squawk airspace 0.8.5 npm@squawk geo 0.4.8 npm@squawk navaid-data 0.6.8 npm@squawk airway-data 0.5.8 npm@mistralai mistralai 2.2.4 npm@squawk mcp 0.9.4 npm@squawk types 0.8.3 npm@beproduct nestjs-auth 0.1.18 npm@squawk airspace-data 0.5.5 npm ts-dna 3.0.4 npm git-git-git 1.0.12 npm@squawk airway-data 0.5.7 npm@squawk airports 0.6.5 npm git-branch-selector 1.3.7 npm@tallyui pos 0.1.3 npm@tallyui connector-vendure 1.0.3 npm cross-stitch 1.1.5 npm@supersurkhet cli 0.0.7 npm@squawk mcp 0.9.3 npm@squawk flightplan 0.5.5 npm@squawk fix-data 0.6.7 npm@squawk airspace-data 0.5.6 npm git-branch-selector 1.3.6 npm@taskflow-corp cli 0.1.29 npm@squawk icao-registry-data 0.8.6 npm@squawk geo 0.4.7 npm@squawk airport-data 0.7.7 npm@squawk weather 0.5.8 npm@squawk geo 0.4.6 npm@squawk flight-math 0.5.7 npm@squawk icao-registry 0.5.5 npm@beproduct nestjs-auth 0.1.19 npm nextmove-mcp 0.1.7 npm@squawk airways 0.4.4 npm@tolka cli 1.0.5 npm@squawk airways 0.4.5 npm@squawk fixes 0.3.5 npm cmux-agent-mcp 0.1.8 npm@tallyui connector-shopify 1.0.3 npm@squawk flight-math 0.5.6 npm@squawk icao-registry 0.5.4 npm@tallyui components 1.0.3 npm@squawk navaids 0.4.5 npm cross-stitch 1.1.6 npm@squawk notams 0.3.9 npm@squawk notams 0.3.8 npm@tallyui theme 0.2.3 npm@squawk navaids 0.4.4 npm wot-api 0.8.3 npm@squawk icao-registry-data 0.8.7 npm@tolka cli 1.0.6 npm@supersurkhet sdk 0.0.7 npm@squawk airspace 0.8.3 npm@squawk procedure-data 0.7.5 npm@squawk types 0.8.4 npm@squawk units 0.4.5 npm@squawk airspace 0.8.4 npm@squawk procedures 0.5.4 npm@squawk flightplan 0.5.4 npm@squawk fixes 0.3.4 npm@squawk procedures 0.5.5 npm@tallyui storage-sqlite 0.2.3 npm@tallyui connector-woocommerce 1.0.3 npm@squawk units 0.4.6 npm@tallyui database 1.0.3 npm@squawk navaid-data 0.6.7 npm@squawk airport-data 0.7.6 npm@squawk procedure-data 0.7.6 npm@squawk airports 0.6.4 npm@tallyui connector-medusa 1.0.3 npm@squawk airway-data 0.5.6 npm git-git-git 1.0.11 npm nextmove-mcp 0.1.6 npm wot-api 0.8.4 npm@squawk weather 0.5.9 npm ts-dna 3.0.3 npm@squawk navaid-data 0.6.6 npm@squawk fix-data 0.6.6 npm@tallyui core 0.2.3 npm@mistralai mistralai 2.2.3 npm@mistralai mistralai 2.2.2 npm@mistralai mistralai-azure 1.7.3 npm@mistralai mistralai-gcp 1.7.3 npm git-git-git 1.0.10 npm nextmove-mcp 0.1.5 npm@supersurkhet sdk 0.0.6 npm@taskflow-corp cli 0.1.28 npm cmux-agent-mcp 0.1.7 npm@squawk mcp 0.9.2 npm cross-stitch 1.1.4 npm@supersurkhet cli 0.0.6 npm@squawk airspace-data 0.5.4 npm@tallyui theme 0.2.2 npm@squawk types 0.8.2 npm@squawk geo 0.4.5 npm@tallyui connector-medusa 1.0.2 npm@squawk airspace 0.8.2 npm@tallyui connector-woocommerce 1.0.2 npm@squawk airway-data 0.5.5 npm@tallyui pos 0.1.2 npm@tallyui components 1.0.2 npm@squawk flight-math 0.5.5 npm@squawk fix-data 0.6.5 npm@squawk fixes 0.3.3 npm@tallyui connector-vendure 1.0.2 npm@squawk procedures 0.5.3 npm@squawk weather 0.5.7 npm@squawk icao-registry 0.5.3 npm@tallyui database 1.0.2 npm@squawk airways 0.4.3 npm@squawk airport-data 0.7.5 npm@squawk flightplan 0.5.3 npm@tallyui connector-shopify 1.0.2 npm@tallyui storage-sqlite 0.2.2 npm ts-dna 3.0.2 npm wot-api 0.8.2 npm@squawk units 0.4.4 npm@squawk procedure-data 0.7.4 npm@squawk navaid-data 0.6.5 npm@squawk notams 0.3.7 npm@squawk icao-registry-data 0.8.5 npm@squawk airports 0.6.3 npm@squawk navaids 0.4.3 npm@beproduct nestjs-auth 0.1.17 npm git-branch-selector 1.3.5 npm@tolka cli 1.0.4 npm@mistralai mistralai-gcp 1.7.1 npm@mistralai mistralai-gcp 1.7.2 npm@mistralai mistralai-azure 1.7.1 npm@mistralai mistralai-azure 1.7.2 npm@tallyui core 0.2.2 npm@mesadev saguaro 0.4.22 npm@mesadev sdk 0.28.3 npm@mesadev rest 0.28.3 npm cross-stitch 1.1.3 npm ts-dna 3.0.1 npm@squawk mcp 0.9.1 npm wot-api 0.8.1 npm@squawk notams 0.3.6 npm@squawk airways 0.4.2 npm@squawk flightplan 0.5.2 npm@squawk weather 0.5.6 npm@squawk flight-math 0.5.4 npm@squawk airway-data 0.5.4 npm@squawk procedures 0.5.2 npm@squawk icao-registry-data 0.8.4 npm@squawk units 0.4.3 npm@squawk navaids 0.4.2 npm@squawk types 0.8.1 npm@squawk fix-data 0.6.4 npm@squawk navaid-data 0.6.4 npm@squawk icao-registry 0.5.2 npm@squawk fixes 0.3.2 npm@squawk geo 0.4.4 npm@squawk procedure-data 0.7.3 npm@squawk airspace-data 0.5.3 npm@squawk airports 0.6.2 npm@squawk airspace 0.8.1 npm@squawk airport-data 0.7.4 npm@tolka cli 1.0.3 npm git-branch-selector 1.3.4 npm nextmove-mcp 0.1.4 npm git-git-git 1.0.9 npm@tallyui theme 0.2.1 npm@tallyui pos 0.1.1 npm@tallyui connector-medusa 1.0.1 npm@tallyui components 1.0.1 npm@tallyui connector-shopify 1.0.1 npm@tallyui core 0.2.1 npm@tallyui database 1.0.1 npm@tallyui connector-vendure 1.0.1 npm@tallyui storage-sqlite 0.2.1 npm@tallyui connector-woocommerce 1.0.1 npm@uipath apollo-react 4.24.5 npm@uipath agent.sdk 0.0.18 npm@uipath apollo-core 5.9.2 npm@uipath apollo-wind 2.16.2 npm@uipath tool-workflowcompiler 0.0.12 npm@uipath filesystem 1.0.1 npm@uipath robot 1.3.4 npm@uipath telemetry 0.0.7 npm@uipath integrationservice-sdk 1.0.2 npm@uipath ap-chat 1.5.7 npm@uipath widget.sdk 1.2.3 npm@uipath agent-sdk 1.0.2 npm@uipath packager-tool-apiworkflow 0.0.19 npm@uipath case-tool 1.0.1 npm@uipath codedagents-tool 0.1.12 npm@uipath api-workflow-tool 1.0.1 npm@uipath context-grounding-tool 0.1.1 npm@uipath packager-tool-workflowcompiler-browser 0.0.34 npm@uipath packager-tool-workflowcompiler 0.0.16 npm@uipath aops-policy-tool 0.3.1 npm@uipath flow-tool 1.0.2 npm@uipath resourcecatalog-tool 0.1.1 npm@uipath vertical-solutions-tool 1.0.1 npm@uipath data-fabric-tool 1.0.2 npm@uipath packager-tool-case 0.0.9 npm@uipath codedagent-tool 1.0.1 npm@uipath ui-widgets-multi-file-upload 1.0.1 npm@uipath docsai-tool 1.0.1 npm@uipath insights-tool 1.0.1 npm@uipath solutionpackager-sdk 1.0.11 npm@uipath auth 1.0.1 npm@uipath maestro-tool 1.0.1 npm@uipath cli 1.0.1 npm@uipath llmgw-tool 1.0.1 npm@uipath resource-tool 1.0.1 npm@uipath packager-tool-flow 0.0.19 npm@uipath common 1.0.1 npm@uipath gov-tool 0.3.1 npm@uipath traces-tool 1.0.1 npm@uipath packager-tool-bpmn 0.0.9 npm@uipath insights-sdk 1.0.1 npm@uipath admin-tool 0.1.1 npm@uipath packager-tool-webapp 1.0.6 npm@uipath solutionpackager-tool-core 0.0.34 npm@uipath vss 0.1.6 npm@uipath orchestrator-tool 1.0.1 npm@uipath solution-packager 0.0.35 npm@uipath uipath-python-bridge 1.0.1 npm@uipath codedapp-tool 1.0.1 npm@uipath project-packager 1.1.16 npm@uipath integrationservice-tool 1.0.2 npm@uipath packager-tool-functions 0.1.1 npm@uipath tasks-tool 1.0.1 npm@uipath solution-tool 1.0.1 npm@uipath packager-tool-connector 0.0.19 npm@uipath maestro-sdk 1.0.1 npm@uipath test-manager-tool 1.0.2 npm@uipath agent-tool 1.0.1 npm@uipath functions-tool 1.0.1 npm@uipath identity-tool 0.1.1 npm@uipath access-policy-tool 0.3.1 npm@uipath resources-tool 0.1.11 npm@uipath rpa-tool 0.9.5 npm@uipath rpa-legacy-tool 1.0.1 npm@uipath access-policy-sdk 0.3.1 npm@uipath platform-tool 1.0.1 npm@beproduct nestjs-auth 0.1.16 npm@beproduct nestjs-auth 0.1.15 npm@dirigible-ai sdk 0.6.3 npm@dirigible-ai sdk 0.6.2 npm@beproduct nestjs-auth 0.1.13 npm@beproduct nestjs-auth 0.1.14 npm@beproduct nestjs-auth 0.1.8 npm@beproduct nestjs-auth 0.1.6 npm@beproduct nestjs-auth 0.1.9 npm@beproduct nestjs-auth 0.1.2 npm@beproduct nestjs-auth 0.1.5 npm@beproduct nestjs-auth 0.1.11 npm@beproduct nestjs-auth 0.1.4 npm@beproduct nestjs-auth 0.1.3 npm@beproduct nestjs-auth 0.1.7 npm@beproduct nestjs-auth 0.1.10 npm@beproduct nestjs-auth 0.1.12 npm@ml-toolkit-ts preprocessing 1.0.2 npm@ml-toolkit-ts preprocessing 1.0.3 npm@ml-toolkit-ts xgboost 1.0.3 npm ml-toolkit-ts 1.0.5 npm@ml-toolkit-ts xgboost 1.0.4 npm ml-toolkit-ts 1.0.4 npm agentwork-cli 0.1.4 npm agentwork-cli 0.1.5 npm@taskflow-corp cli 0.1.27 npm cmux-agent-mcp 0.1.6 npm@supersurkhet cli 0.0.5 npm@supersurkhet sdk 0.0.5 npm@taskflow-corp cli 0.1.26 npm@supersurkhet cli 0.0.4 npm cmux-agent-mcp 0.1.5 npm@supersurkhet sdk 0.0.4 npm@draftlab auth 0.24.2 npm@draftlab auth 0.24.1 npm@draftauth core 0.13.1 npm@draftauth core 0.13.2 npm@draftauth client 0.2.2 npm@draftauth client 0.2.1 npm@draftlab db 0.16.2 npm safe-action 0.8.4 npm@draftlab auth-router 0.5.1 npm@draftlab auth-router 0.5.2 npm@draftlab db 0.16.1 npm safe-action 0.8.3 npm@taskflow-corp cli 0.1.25 npm cmux-agent-mcp 0.1.4 npm@supersurkhet cli 0.0.3 npm@supersurkhet sdk 0.0.3 npm@taskflow-corp cli 0.1.24 npm@supersurkhet cli 0.0.2 npm cmux-agent-mcp 0.1.3 npm@supersurkhet sdk 0.0.2 npm git-git-git 1.0.8 npm@tolka cli 1.0.2 npm git-branch-selector 1.3.3 npm nextmove-mcp 0.1.3 npm@tanstack react-router 1.169.8 npm@tanstack solid-router 1.169.8 npm@tanstack router-core 1.169.8 npm@tanstack start-plugin-core 1.169.26 npm@tanstack vue-router 1.169.8 npm@tanstack router-plugin 1.167.41 npm@tanstack vue-start-client 1.166.49 npm@tanstack react-start-rsc 0.0.50 npm@tanstack start-client-core 1.168.8 npm@tanstack eslint-plugin-start 0.0.7 npm@tanstack react-start 1.167.71 npm@tanstack router-generator 1.166.48 npm@tanstack eslint-plugin-router 1.161.12 npm@tanstack router-devtools-core 1.167.9 npm@tanstack vue-start 1.167.64 npm@tanstack start-server-core 1.167.36 npm@tanstack solid-start-server 1.166.57 npm@tanstack start-storage-context 1.166.41 npm@tanstack solid-start-client 1.166.53 npm@tanstack solid-start 1.167.68 npm@tanstack router-ssr-query-core 1.168.6 npm@tanstack virtual-file-routes 1.161.13 npm@tanstack react-router-ssr-query 1.166.18 npm@tanstack nitro-v2-vite-plugin 1.154.15 npm@tanstack vue-start-server 1.166.53 npm@tanstack solid-router-ssr-query 1.166.18 npm@tanstack react-start-server 1.166.58 npm@tanstack react-start-client 1.166.54 npm@tanstack start-fn-stubs 1.161.12 npm@tanstack router-utils 1.161.14 npm@tanstack react-router-devtools 1.166.19 npm@tanstack solid-router-devtools 1.166.19 npm@tanstack history 1.161.12 npm@tanstack router-cli 1.166.49 npm@tanstack arktype-adapter 1.166.15 npm@tanstack vue-router-devtools 1.166.19 npm@tanstack zod-adapter 1.166.15 npm@tanstack vue-router-ssr-query 1.166.18 npm@tanstack start-static-server-functions 1.166.47 npm@tanstack router-vite-plugin 1.166.56 npm@tanstack valibot-adapter 1.166.15 npm@tanstack router-devtools 1.166.19 npm@tanstack solid-router 1.169.5 npm@tanstack start-plugin-core 1.169.23 npm@tanstack router-core 1.169.5 npm@tanstack vue-router 1.169.5 npm@tanstack react-router 1.169.5 npm@tanstack router-plugin 1.167.38 npm@tanstack eslint-plugin-start 0.0.4 npm@tanstack eslint-plugin-router 1.161.9 npm@tanstack react-start-rsc 0.0.47 npm@tanstack react-start 1.167.68 npm@tanstack router-generator 1.166.45 npm@tanstack start-client-core 1.168.5 npm@tanstack router-devtools-core 1.167.6 npm@tanstack router-utils 1.161.11 npm@tanstack vue-router-ssr-query 1.166.15 npm@tanstack arktype-adapter 1.166.12 npm@tanstack start-server-core 1.167.33 npm@tanstack solid-start 1.167.65 npm@tanstack react-router-devtools 1.166.16 npm@tanstack solid-router-devtools 1.166.16 npm@tanstack router-cli 1.166.46 npm@tanstack solid-start-server 1.166.54 npm@tanstack vue-router-devtools 1.166.16 npm@tanstack virtual-file-routes 1.161.10 npm@tanstack router-ssr-query-core 1.168.3 npm@tanstack router-vite-plugin 1.166.53 npm@tanstack nitro-v2-vite-plugin 1.154.12 npm@tanstack start-fn-stubs 1.161.9 npm@tanstack history 1.161.9 npm@tanstack react-router-ssr-query 1.166.15 npm@tanstack zod-adapter 1.166.12 npm@tanstack valibot-adapter 1.166.12 npm@tanstack solid-router-ssr-query 1.166.15 npm@tanstack react-start-client 1.166.51 npm@tanstack router-devtools 1.166.16 npm@tanstack react-start-server 1.166.55 npm@tanstack solid-start-client 1.166.50 npm@tanstack vue-start 1.167.61 npm@tanstack start-storage-context 1.166.38 npm@tanstack start-static-server-functions 1.166.44 npm@tanstack vue-start-client 1.166.46 npm@tanstack vue-start-server 1.166.50 composer intercom intercom-php 5.0.2 npm intercom-client 7.0.4 pypi lightning 2.6.3 pypi lightning 2.6.2 npm@cap-js db-service 2.10.1 npm@cap-js postgres 2.2.2 npm@cap-js sqlite 2.2.2 npm mbt 1.2.48
对于开发者和运维团队,官方与安全机构给出了多项立即执行的应急措施:
- 对受影响的安装主机,应立即按优先级轮换 NPM 令牌、GitHub 个人访问令牌、云服务密钥(IT之家注:AWS / GCP / Azure)、Kubernetes 服务账户令牌以及 SSH 私钥;
- 审查开发者和项目根目录下的.claude/ 与.vscode/ 文件夹,移除 router_runtime.js 等陌生条目;
- 使用 git log --all --author=claude@users.noreply.github.com 审核仓库是否存在未授权的提交;
- 限制 GitHub Actions 中 OIDC 令牌的作用域,对所有不需要 OIDC 发布的工作流设置 permissions: id-token:none;
此外,开发者不应单纯信任 Sigstore 来源证明作为安全信号,因为攻击者在具备 GitHub Actions 执行能力后,同样能够生成有效的 Sigstore 证明用于恶意包。
安全团队通过 SHA-256 校验命令 shasum -a 256 在所有依赖树中搜索标识为 ab4fcada…… 的 router_init.js 文件,亦可用于确认是否引入恶意版本。
广告声明:文内含有的对外跳转链接(包括不限于超链接、二维码、口令等形式),用于传递更多信息,节省甄选时间,结果仅供参考,IT之家所有文章均包含本声明。