91精品色婷,日韩少妇中出,国产 精一区二区三,欧美视频精品在线二区,婷婷久久日韩欧美,亚洲天堂性爱视频,亚洲香蕉一区,国产自产观看精品一区,日本 大胆成人

設(shè)置
  • 日夜間
    隨系統(tǒng)
    淺色
    深色
  • 主題色

npm 生態(tài)遭大范圍投毒:TanStack、Mistral AI、UiPath 等受波及,可竊取云密鑰與 GitHub 令牌

2026/5/12 11:42:03 來源:IT之家 作者:問舟 責(zé)編:問舟
感謝IT之家網(wǎng)友 阿狗 的線索投遞!

IT之家 5 月 12 日消息,網(wǎng)絡(luò)安全檢測機構(gòu) Socket 于當(dāng)?shù)貢r間 5 月 11 日發(fā)出警報,在開源工具庫 TanStack 旗下約 84 個 NPM 軟件包的惡意版本中發(fā)現(xiàn)疑似憑證竊取惡意代碼。

受影響軟件包覆蓋 42 個 @tanstack/* 命名空間下的項目,其中 @tanstack / react-router 的周下載量超 1200 萬次,此類工具包在 NPM 生態(tài)中被廣泛直接或間接引用,使得本次供應(yīng)鏈攻擊具有極廣的傳播范圍。

分析發(fā)現(xiàn),被篡改的軟件包中新增了一個約 2.3MB、經(jīng)過高強度 JavaScript 混淆的文件 router_init.js,同時 package.json 中增加了一個指向 GitHub 特定提交的 optionalDependencies 依賴項。

該提交來自一個名為 voicproducoes 的 GitHub 賬戶,是一個無歷史記錄的單根提交,包含偽造的包 @tanstack / setup 及其 prepare 生命周期鉤子,后者在被安裝時會執(zhí)行任意惡意代碼。當(dāng)開發(fā)者或 CI 系統(tǒng)執(zhí)行包安裝操作時,該鉤子自動運行,從多個常用位置竊取密鑰、令牌和憑據(jù),包括 AWS IMDS 與 Secrets Manager、GCP 元數(shù)據(jù)、Kubernetes 服務(wù)賬戶令牌、Vault 令牌、~/.npmrc、GitHub 令牌以及 SSH 私鑰。竊取的數(shù)據(jù)通過 Session / Oxen 加密文件上傳網(wǎng)絡(luò)外泄,攻擊者同時植入持久化監(jiān)控組件,能夠在受害者機器上維持長期訪問。

TanStack 在事后技術(shù)復(fù)盤中將攻擊鏈歸因于三種 GitHub Actions 漏洞的組合利用:攻擊者利用 pull_request_target“Pwn Request”模式、跨 fork 緩存投毒以及從 GitHub Actions 運行器進程的內(nèi)存中實時提取 OIDC 令牌。

在此過程中,NPM 憑證并未泄露,合法發(fā)布工作流也未遭攻破,惡意發(fā)布是通過項目的 OIDC 受信任發(fā)布者綁定進行身份驗證后直接推送到 NPM 注冊表完成的。

官方同時聲明,受影響成員賬戶均啟用了雙重身份驗證,但攻擊者利用 Git 環(huán)境下孤兒提交方式繞過了現(xiàn)有的發(fā)布保護機制。所有惡意版本已被棄用,TanStack 已聯(lián)系 NPM 安全團隊從注冊表中移除惡意壓縮包,GitHub Actions 緩存條目也已清理。

本次攻擊被安全機構(gòu)歸為正在蔓延的大規(guī)模“Mini Shai-Hulud”供應(yīng)鏈攻擊的一部分。此前該攻擊曾針對 SAP 生態(tài)系統(tǒng)的 NPM 包,現(xiàn)已擴展為波及更廣泛的 NPM 投毒活動。

據(jù)不完全統(tǒng)計,目前已受影響的軟件包覆蓋 @squawk、@tanstack、@uipath、@tallyui、@beproduct、@mistralai 等多個命名空間,共計超過 160 個包名、近 373 個惡意版本條目。

其中 @mistralai / mistralai(官方 TypeScript 客戶端)和 @uipath / apollo-core 等企業(yè)級工具包亦被植入同類型竊取憑證的蠕蟲,采用相同的下載 Bun 運行時并執(zhí)行惡意載荷的傳播機制。

軟件包版本
pypi
mistralai2.4.6
pypi
mistralai2.4.6
npm@opensearch-projectopensearch3.5.3
npm@opensearch-projectopensearch3.8.0
npm@opensearch-projectopensearch3.7.0
pypi
guardrails-ai0.10.1
pypi
guardrails-ai0.10.1
npm@opensearch-projectopensearch3.6.2
npm
cross-stitch1.1.7
npm@squawkfix-data0.6.8
npm@squawkweather0.5.10
npm@squawkicao-registry-data0.8.8
npm@squawkairport-data0.7.8
npm@squawkflightplan0.5.6
npm@squawkunits0.4.7
npm@squawkflight-math0.5.8
npm@squawkmcp0.9.5
npm@squawkfixes0.3.6
npm@squawkairspace-data0.5.7
npm@squawkprocedure-data0.7.7
npm@squawknavaids0.4.6
npm@squawkprocedures0.5.6
npm@squawknotams0.3.10
npm@squawkairways0.4.6
npm@squawkairports0.6.6
npm
ts-dna3.0.5
npm@squawktypes0.8.5
npm@squawkicao-registry0.5.6
npm@squawkairspace0.8.5
npm@squawkgeo0.4.8
npm@squawknavaid-data0.6.8
npm@squawkairway-data0.5.8
npm@mistralaimistralai2.2.4
npm@squawkmcp0.9.4
npm@squawktypes0.8.3
npm@beproductnestjs-auth0.1.18
npm@squawkairspace-data0.5.5
npm
ts-dna3.0.4
npm
git-git-git1.0.12
npm@squawkairway-data0.5.7
npm@squawkairports0.6.5
npm
git-branch-selector1.3.7
npm@tallyuipos0.1.3
npm@tallyuiconnector-vendure1.0.3
npm
cross-stitch1.1.5
npm@supersurkhetcli0.0.7
npm@squawkmcp0.9.3
npm@squawkflightplan0.5.5
npm@squawkfix-data0.6.7
npm@squawkairspace-data0.5.6
npm
git-branch-selector1.3.6
npm@taskflow-corpcli0.1.29
npm@squawkicao-registry-data0.8.6
npm@squawkgeo0.4.7
npm@squawkairport-data0.7.7
npm@squawkweather0.5.8
npm@squawkgeo0.4.6
npm@squawkflight-math0.5.7
npm@squawkicao-registry0.5.5
npm@beproductnestjs-auth0.1.19
npm
nextmove-mcp0.1.7
npm@squawkairways0.4.4
npm@tolkacli1.0.5
npm@squawkairways0.4.5
npm@squawkfixes0.3.5
npm
cmux-agent-mcp0.1.8
npm@tallyuiconnector-shopify1.0.3
npm@squawkflight-math0.5.6
npm@squawkicao-registry0.5.4
npm@tallyuicomponents1.0.3
npm@squawknavaids0.4.5
npm
cross-stitch1.1.6
npm@squawknotams0.3.9
npm@squawknotams0.3.8
npm@tallyuitheme0.2.3
npm@squawknavaids0.4.4
npm
wot-api0.8.3
npm@squawkicao-registry-data0.8.7
npm@tolkacli1.0.6
npm@supersurkhetsdk0.0.7
npm@squawkairspace0.8.3
npm@squawkprocedure-data0.7.5
npm@squawktypes0.8.4
npm@squawkunits0.4.5
npm@squawkairspace0.8.4
npm@squawkprocedures0.5.4
npm@squawkflightplan0.5.4
npm@squawkfixes0.3.4
npm@squawkprocedures0.5.5
npm@tallyuistorage-sqlite0.2.3
npm@tallyuiconnector-woocommerce1.0.3
npm@squawkunits0.4.6
npm@tallyuidatabase1.0.3
npm@squawknavaid-data0.6.7
npm@squawkairport-data0.7.6
npm@squawkprocedure-data0.7.6
npm@squawkairports0.6.4
npm@tallyuiconnector-medusa1.0.3
npm@squawkairway-data0.5.6
npm
git-git-git1.0.11
npm
nextmove-mcp0.1.6
npm
wot-api0.8.4
npm@squawkweather0.5.9
npm
ts-dna3.0.3
npm@squawknavaid-data0.6.6
npm@squawkfix-data0.6.6
npm@tallyuicore0.2.3
npm@mistralaimistralai2.2.3
npm@mistralaimistralai2.2.2
npm@mistralaimistralai-azure1.7.3
npm@mistralaimistralai-gcp1.7.3
npm
git-git-git1.0.10
npm
nextmove-mcp0.1.5
npm@supersurkhetsdk0.0.6
npm@taskflow-corpcli0.1.28
npm
cmux-agent-mcp0.1.7
npm@squawkmcp0.9.2
npm
cross-stitch1.1.4
npm@supersurkhetcli0.0.6
npm@squawkairspace-data0.5.4
npm@tallyuitheme0.2.2
npm@squawktypes0.8.2
npm@squawkgeo0.4.5
npm@tallyuiconnector-medusa1.0.2
npm@squawkairspace0.8.2
npm@tallyuiconnector-woocommerce1.0.2
npm@squawkairway-data0.5.5
npm@tallyuipos0.1.2
npm@tallyuicomponents1.0.2
npm@squawkflight-math0.5.5
npm@squawkfix-data0.6.5
npm@squawkfixes0.3.3
npm@tallyuiconnector-vendure1.0.2
npm@squawkprocedures0.5.3
npm@squawkweather0.5.7
npm@squawkicao-registry0.5.3
npm@tallyuidatabase1.0.2
npm@squawkairways0.4.3
npm@squawkairport-data0.7.5
npm@squawkflightplan0.5.3
npm@tallyuiconnector-shopify1.0.2
npm@tallyuistorage-sqlite0.2.2
npm
ts-dna3.0.2
npm
wot-api0.8.2
npm@squawkunits0.4.4
npm@squawkprocedure-data0.7.4
npm@squawknavaid-data0.6.5
npm@squawknotams0.3.7
npm@squawkicao-registry-data0.8.5
npm@squawkairports0.6.3
npm@squawknavaids0.4.3
npm@beproductnestjs-auth0.1.17
npm
git-branch-selector1.3.5
npm@tolkacli1.0.4
npm@mistralaimistralai-gcp1.7.1
npm@mistralaimistralai-gcp1.7.2
npm@mistralaimistralai-azure1.7.1
npm@mistralaimistralai-azure1.7.2
npm@tallyuicore0.2.2
npm@mesadevsaguaro0.4.22
npm@mesadevsdk0.28.3
npm@mesadevrest0.28.3
npm
cross-stitch1.1.3
npm
ts-dna3.0.1
npm@squawkmcp0.9.1
npm
wot-api0.8.1
npm@squawknotams0.3.6
npm@squawkairways0.4.2
npm@squawkflightplan0.5.2
npm@squawkweather0.5.6
npm@squawkflight-math0.5.4
npm@squawkairway-data0.5.4
npm@squawkprocedures0.5.2
npm@squawkicao-registry-data0.8.4
npm@squawkunits0.4.3
npm@squawknavaids0.4.2
npm@squawktypes0.8.1
npm@squawkfix-data0.6.4
npm@squawknavaid-data0.6.4
npm@squawkicao-registry0.5.2
npm@squawkfixes0.3.2
npm@squawkgeo0.4.4
npm@squawkprocedure-data0.7.3
npm@squawkairspace-data0.5.3
npm@squawkairports0.6.2
npm@squawkairspace0.8.1
npm@squawkairport-data0.7.4
npm@tolkacli1.0.3
npm
git-branch-selector1.3.4
npm
nextmove-mcp0.1.4
npm
git-git-git1.0.9
npm@tallyuitheme0.2.1
npm@tallyuipos0.1.1
npm@tallyuiconnector-medusa1.0.1
npm@tallyuicomponents1.0.1
npm@tallyuiconnector-shopify1.0.1
npm@tallyuicore0.2.1
npm@tallyuidatabase1.0.1
npm@tallyuiconnector-vendure1.0.1
npm@tallyuistorage-sqlite0.2.1
npm@tallyuiconnector-woocommerce1.0.1
npm@uipathapollo-react4.24.5
npm@uipathagent.sdk0.0.18
npm@uipathapollo-core5.9.2
npm@uipathapollo-wind2.16.2
npm@uipathtool-workflowcompiler0.0.12
npm@uipathfilesystem1.0.1
npm@uipathrobot1.3.4
npm@uipathtelemetry0.0.7
npm@uipathintegrationservice-sdk1.0.2
npm@uipathap-chat1.5.7
npm@uipathwidget.sdk1.2.3
npm@uipathagent-sdk1.0.2
npm@uipathpackager-tool-apiworkflow0.0.19
npm@uipathcase-tool1.0.1
npm@uipathcodedagents-tool0.1.12
npm@uipathapi-workflow-tool1.0.1
npm@uipathcontext-grounding-tool0.1.1
npm@uipathpackager-tool-workflowcompiler-browser0.0.34
npm@uipathpackager-tool-workflowcompiler0.0.16
npm@uipathaops-policy-tool0.3.1
npm@uipathflow-tool1.0.2
npm@uipathresourcecatalog-tool0.1.1
npm@uipathvertical-solutions-tool1.0.1
npm@uipathdata-fabric-tool1.0.2
npm@uipathpackager-tool-case0.0.9
npm@uipathcodedagent-tool1.0.1
npm@uipathui-widgets-multi-file-upload1.0.1
npm@uipathdocsai-tool1.0.1
npm@uipathinsights-tool1.0.1
npm@uipathsolutionpackager-sdk1.0.11
npm@uipathauth1.0.1
npm@uipathmaestro-tool1.0.1
npm@uipathcli1.0.1
npm@uipathllmgw-tool1.0.1
npm@uipathresource-tool1.0.1
npm@uipathpackager-tool-flow0.0.19
npm@uipathcommon1.0.1
npm@uipathgov-tool0.3.1
npm@uipathtraces-tool1.0.1
npm@uipathpackager-tool-bpmn0.0.9
npm@uipathinsights-sdk1.0.1
npm@uipathadmin-tool0.1.1
npm@uipathpackager-tool-webapp1.0.6
npm@uipathsolutionpackager-tool-core0.0.34
npm@uipathvss0.1.6
npm@uipathorchestrator-tool1.0.1
npm@uipathsolution-packager0.0.35
npm@uipathuipath-python-bridge1.0.1
npm@uipathcodedapp-tool1.0.1
npm@uipathproject-packager1.1.16
npm@uipathintegrationservice-tool1.0.2
npm@uipathpackager-tool-functions0.1.1
npm@uipathtasks-tool1.0.1
npm@uipathsolution-tool1.0.1
npm@uipathpackager-tool-connector0.0.19
npm@uipathmaestro-sdk1.0.1
npm@uipathtest-manager-tool1.0.2
npm@uipathagent-tool1.0.1
npm@uipathfunctions-tool1.0.1
npm@uipathidentity-tool0.1.1
npm@uipathaccess-policy-tool0.3.1
npm@uipathresources-tool0.1.11
npm@uipathrpa-tool0.9.5
npm@uipathrpa-legacy-tool1.0.1
npm@uipathaccess-policy-sdk0.3.1
npm@uipathplatform-tool1.0.1
npm@beproductnestjs-auth0.1.16
npm@beproductnestjs-auth0.1.15
npm@dirigible-aisdk0.6.3
npm@dirigible-aisdk0.6.2
npm@beproductnestjs-auth0.1.13
npm@beproductnestjs-auth0.1.14
npm@beproductnestjs-auth0.1.8
npm@beproductnestjs-auth0.1.6
npm@beproductnestjs-auth0.1.9
npm@beproductnestjs-auth0.1.2
npm@beproductnestjs-auth0.1.5
npm@beproductnestjs-auth0.1.11
npm@beproductnestjs-auth0.1.4
npm@beproductnestjs-auth0.1.3
npm@beproductnestjs-auth0.1.7
npm@beproductnestjs-auth0.1.10
npm@beproductnestjs-auth0.1.12
npm@ml-toolkit-tspreprocessing1.0.2
npm@ml-toolkit-tspreprocessing1.0.3
npm@ml-toolkit-tsxgboost1.0.3
npm
ml-toolkit-ts1.0.5
npm@ml-toolkit-tsxgboost1.0.4
npm
ml-toolkit-ts1.0.4
npm
agentwork-cli0.1.4
npm
agentwork-cli0.1.5
npm@taskflow-corpcli0.1.27
npm
cmux-agent-mcp0.1.6
npm@supersurkhetcli0.0.5
npm@supersurkhetsdk0.0.5
npm@taskflow-corpcli0.1.26
npm@supersurkhetcli0.0.4
npm
cmux-agent-mcp0.1.5
npm@supersurkhetsdk0.0.4
npm@draftlabauth0.24.2
npm@draftlabauth0.24.1
npm@draftauthcore0.13.1
npm@draftauthcore0.13.2
npm@draftauthclient0.2.2
npm@draftauthclient0.2.1
npm@draftlabdb0.16.2
npm
safe-action0.8.4
npm@draftlabauth-router0.5.1
npm@draftlabauth-router0.5.2
npm@draftlabdb0.16.1
npm
safe-action0.8.3
npm@taskflow-corpcli0.1.25
npm
cmux-agent-mcp0.1.4
npm@supersurkhetcli0.0.3
npm@supersurkhetsdk0.0.3
npm@taskflow-corpcli0.1.24
npm@supersurkhetcli0.0.2
npm
cmux-agent-mcp0.1.3
npm@supersurkhetsdk0.0.2
npm
git-git-git1.0.8
npm@tolkacli1.0.2
npm
git-branch-selector1.3.3
npm
nextmove-mcp0.1.3
npm@tanstackreact-router1.169.8
npm@tanstacksolid-router1.169.8
npm@tanstackrouter-core1.169.8
npm@tanstackstart-plugin-core1.169.26
npm@tanstackvue-router1.169.8
npm@tanstackrouter-plugin1.167.41
npm@tanstackvue-start-client1.166.49
npm@tanstackreact-start-rsc0.0.50
npm@tanstackstart-client-core1.168.8
npm@tanstackeslint-plugin-start0.0.7
npm@tanstackreact-start1.167.71
npm@tanstackrouter-generator1.166.48
npm@tanstackeslint-plugin-router1.161.12
npm@tanstackrouter-devtools-core1.167.9
npm@tanstackvue-start1.167.64
npm@tanstackstart-server-core1.167.36
npm@tanstacksolid-start-server1.166.57
npm@tanstackstart-storage-context1.166.41
npm@tanstacksolid-start-client1.166.53
npm@tanstacksolid-start1.167.68
npm@tanstackrouter-ssr-query-core1.168.6
npm@tanstackvirtual-file-routes1.161.13
npm@tanstackreact-router-ssr-query1.166.18
npm@tanstacknitro-v2-vite-plugin1.154.15
npm@tanstackvue-start-server1.166.53
npm@tanstacksolid-router-ssr-query1.166.18
npm@tanstackreact-start-server1.166.58
npm@tanstackreact-start-client1.166.54
npm@tanstackstart-fn-stubs1.161.12
npm@tanstackrouter-utils1.161.14
npm@tanstackreact-router-devtools1.166.19
npm@tanstacksolid-router-devtools1.166.19
npm@tanstackhistory1.161.12
npm@tanstackrouter-cli1.166.49
npm@tanstackarktype-adapter1.166.15
npm@tanstackvue-router-devtools1.166.19
npm@tanstackzod-adapter1.166.15
npm@tanstackvue-router-ssr-query1.166.18
npm@tanstackstart-static-server-functions1.166.47
npm@tanstackrouter-vite-plugin1.166.56
npm@tanstackvalibot-adapter1.166.15
npm@tanstackrouter-devtools1.166.19
npm@tanstacksolid-router1.169.5
npm@tanstackstart-plugin-core1.169.23
npm@tanstackrouter-core1.169.5
npm@tanstackvue-router1.169.5
npm@tanstackreact-router1.169.5
npm@tanstackrouter-plugin1.167.38
npm@tanstackeslint-plugin-start0.0.4
npm@tanstackeslint-plugin-router1.161.9
npm@tanstackreact-start-rsc0.0.47
npm@tanstackreact-start1.167.68
npm@tanstackrouter-generator1.166.45
npm@tanstackstart-client-core1.168.5
npm@tanstackrouter-devtools-core1.167.6
npm@tanstackrouter-utils1.161.11
npm@tanstackvue-router-ssr-query1.166.15
npm@tanstackarktype-adapter1.166.12
npm@tanstackstart-server-core1.167.33
npm@tanstacksolid-start1.167.65
npm@tanstackreact-router-devtools1.166.16
npm@tanstacksolid-router-devtools1.166.16
npm@tanstackrouter-cli1.166.46
npm@tanstacksolid-start-server1.166.54
npm@tanstackvue-router-devtools1.166.16
npm@tanstackvirtual-file-routes1.161.10
npm@tanstackrouter-ssr-query-core1.168.3
npm@tanstackrouter-vite-plugin1.166.53
npm@tanstacknitro-v2-vite-plugin1.154.12
npm@tanstackstart-fn-stubs1.161.9
npm@tanstackhistory1.161.9
npm@tanstackreact-router-ssr-query1.166.15
npm@tanstackzod-adapter1.166.12
npm@tanstackvalibot-adapter1.166.12
npm@tanstacksolid-router-ssr-query1.166.15
npm@tanstackreact-start-client1.166.51
npm@tanstackrouter-devtools1.166.16
npm@tanstackreact-start-server1.166.55
npm@tanstacksolid-start-client1.166.50
npm@tanstackvue-start1.167.61
npm@tanstackstart-storage-context1.166.38
npm@tanstackstart-static-server-functions1.166.44
npm@tanstackvue-start-client1.166.46
npm@tanstackvue-start-server1.166.50
composerintercomintercom-php5.0.2
npm
intercom-client7.0.4
pypi
lightning2.6.3
pypi
lightning2.6.2
npm@cap-jsdb-service2.10.1
npm@cap-jspostgres2.2.2
npm@cap-jssqlite2.2.2
npm
mbt1.2.48

對于開發(fā)者和運維團隊,官方與安全機構(gòu)給出了多項立即執(zhí)行的應(yīng)急措施:

  • 對受影響的安裝主機,應(yīng)立即按優(yōu)先級輪換 NPM 令牌、GitHub 個人訪問令牌、云服務(wù)密鑰(IT之家注:AWS / GCP / Azure)、Kubernetes 服務(wù)賬戶令牌以及 SSH 私鑰;

  • 審查開發(fā)者和項目根目錄下的.claude/ 與.vscode/ 文件夾,移除 router_runtime.js 等陌生條目;

  • 使用 git log --all --author=claude@users.noreply.github.com 審核倉庫是否存在未授權(quán)的提交;

  • 限制 GitHub Actions 中 OIDC 令牌的作用域,對所有不需要 OIDC 發(fā)布的工作流設(shè)置 permissions: id-token:none;

此外,開發(fā)者不應(yīng)單純信任 Sigstore 來源證明作為安全信號,因為攻擊者在具備 GitHub Actions 執(zhí)行能力后,同樣能夠生成有效的 Sigstore 證明用于惡意包。

安全團隊通過 SHA-256 校驗命令 shasum -a 256 在所有依賴樹中搜索標(biāo)識為 ab4fcada…… 的 router_init.js 文件,亦可用于確認(rèn)是否引入惡意版本。

廣告聲明:文內(nèi)含有的對外跳轉(zhuǎn)鏈接(包括不限于超鏈接、二維碼、口令等形式),用于傳遞更多信息,節(jié)省甄選時間,結(jié)果僅供參考,IT之家所有文章均包含本聲明。

相關(guān)文章

關(guān)鍵詞:npm,供應(yīng)鏈攻擊TanStack

軟媒旗下網(wǎng)站: IT之家 最會買 - 返利返現(xiàn)優(yōu)惠券 iPhone之家 Win7之家 Win10之家 Win11之家

軟媒旗下軟件: 軟媒手機APP應(yīng)用 魔方 最會買 要知

邯郸县| 炎陵县| 改则县| 富顺县| 屯昌县| 吉首市| 珲春市| 西贡区| 区。| 南京市| 五河县| 紫金县| 涪陵区| 衡东县| 平阳县| 抚顺市| 崇阳县| 定安县| 平陆县| 阳江市| 眉山市| 张北县| 旌德县| 栾川县| 象州县| 富蕴县| 合水县| 泽普县| 来安县| 公安县| 周口市| 菏泽市| 依安县| 枣阳市| 清苑县| 通许县| 宜兴市| 高尔夫| 乌鲁木齐市| 开封县| 纳雍县|