每週我們的惡意軟體偵測系統會掃描 npm 和 PyPI 等公共註冊表中的數千個新增和更新的軟體包。
本週尤其繁忙。
我們已確認 93 個惡意軟體包主要是在 NPM,還有其他病例 的PyPI, OpenVSX以及 作曲家其中一些惡意程式以協同叢集的形式出現,重複發布以相同名稱或密切相關的軟體包系列為名的惡意程式。許多程式模仿了… 支付和結帳模組, enterprise 以及內部網路包, 分析客戶, UI基礎, 開發人員工具, 元件瀏覽器, 雲端和Google主題軟體包以及其他在現代開發工作流程中常用的模組。
這些並非孤立的異常情況。本週最引人注目的是同一軟體包系列中重複發布的規模之大、命名模式的重用,以及惡意軟體如何偽裝成合法依賴項,嵌入到真實的軟體交付環境中。 pipelines.
這份每週簡報是我們持續進行的工作的一部分。 惡意程式碼摘要我們會驗證新的威脅,並提供可操作的情報來協助 DevSecOps 團隊 保護他們的 pipeline在損害發生之前。
讓我們來分析一下本週的發現以及它為何重要。
| 生態系統 | 小包裝 | 日期 |
|---|---|---|
| NPM | pa-marked:99.1.10 | 2026 年 4 月 27 日 |
| pi | moonbit-locale-compat:0.2.3 | 2026 年 4 月 27 日 |
| NPM | @alfa.life.mapp/app.web:99.0.13 | 2026 年 4 月 27 日 |
| NPM | @sbt_gitverse/analytics-client:99.0.1 | 2026 年 4 月 27 日 |
| NPM | @frengki0707/google-cloud-clone:1.33.1 | 2026 年 4 月 27 日 |
| NPM | @alfa.life.mapp/app.web:99.0.14 | 2026 年 4 月 27 日 |
| NPM | @tochka-ui/foundation:99.0.2 | 2026 年 4 月 27 日 |
| openvsx | arcane-spark/ubel:0.1.0 | 2026 年 4 月 28 日 |
| NPM | @2011-08-19/n:99.9.9 | 2026 年 4 月 28 日 |
| NPM | @frengki0707/google-cloud-clone:1.38.0 | 2026 年 4 月 27 日 |
| NPM | @frengki0707/google-cloud-clone:1.38.1 | 2026 年 4 月 27 日 |
| NPM | @frengki0707/google-cloud-clone:1.39.0 | 2026 年 4 月 27 日 |
| NPM | @frengki0707/google-cloud-clone:1.43.0 | 2026 年 4 月 27 日 |
| NPM | @frengki0707/google-cloud-clone:1.44.0 | 2026 年 4 月 27 日 |
| NPM | google-logging-utils-internal:9.9.9 | 2026 年 4 月 27 日 |
| NPM | google-logging-utils-internal:1.1.4 | 2026 年 4 月 27 日 |
| NPM | @combinezone/theme:99.9.10 | 2026 年 4 月 28 日 |
| NPM | maninos:1.3.0 | 2026 年 4 月 28 日 |
| NPM | @inheritdoc/n:99.9.9 | 2026 年 4 月 28 日 |
| NPM | @mts-pay/web-sdk:99.9.9 | 2026 年 4 月 28 日 |
| NPM | @cashback/how-it-works-widget:99.9.9 | 2026 年 4 月 28 日 |
| NPM | @cashback/postal-premium:99.9.9 | 2026 年 4 月 28 日 |
| NPM | @toprimitive/nif:99.9.9 | 2026 年 4 月 28 日 |
| NPM | @tostringtag/nsettostringtag:99.9.9 | 2026 年 4 月 28 日 |
| NPM | rtms-manager:1.4.0 | 2026 年 4 月 28 日 |
| NPM | vscode-component-explorer:99.9.15 | 2026 年 4 月 28 日 |
| NPM | js-component-explorer:99.9.16 | 2026 年 4 月 27 日 |
| NPM | js-component-explorer:99.9.17 | 2026 年 4 月 27 日 |
| NPM | @alfa.life.mapp/app.web:99.0.15 | 2026 年 4 月 27 日 |
| NPM | @tochka-ui/foundation:99.0.3 | 2026 年 4 月 27 日 |
| NPM | @alfa.life.mapp/app.web:99.0.16 | 2026 年 4 月 27 日 |
| NPM | @sbt_gitverse/analytics-client:99.0.4 | 2026 年 4 月 27 日 |
| NPM | @tochka-ui/foundation:99.0.4 | 2026 年 4 月 27 日 |
| NPM | kl-b2c-ui-kit:99.0.1 | 2026 年 4 月 27 日 |
| 撰寫 | dot-env-it/laravel-core-helper:v1.0.0 | 2026 年 4 月 28 日 |
| NPM | uipath-ui-widgets:1.0.1 | 2026 年 4 月 28 日 |
| NPM | 獨立應用程式:1.0.1 | 2026 年 4 月 28 日 |
| NPM | @tw-utils/static:99.0.1 | 2026 年 4 月 27 日 |
| NPM | @tw-models/storage:99.0.1 | 2026 年 4 月 27 日 |
| NPM | @tw-marionette/clipboard:99.0.1 | 2026 年 4 月 27 日 |
| NPM | @tw-marionette/input:99.0.1 | 2026 年 4 月 27 日 |
| NPM | 阿波羅登月:1.0.1 | 2026 年 4 月 28 日 |
| NPM | process-app-task:1.0.1 | 2026 年 4 月 28 日 |
| NPM | apollo-vertex:1.0.1 | 2026 年 4 月 28 日 |
| NPM | @ozon-complt/split:99.0.1 | 2026 年 4 月 27 日 |
| NPM | @apple-pay-trust/destroy:99.0.1 | 2026 年 4 月 27 日 |
| NPM | @apple-pay-trust/merchant-session:99.0.1 | 2026 年 4 月 27 日 |
| NPM | @apple-pay-trust/start:99.0.1 | 2026 年 4 月 27 日 |
| NPM | @google-pay-trust/finish:99.0.1 | 2026 年 4 月 27 日 |
| NPM | @apple-pay-trust/finish:99.0.1 | 2026 年 4 月 27 日 |
| NPM | @apple-pay-trust/validate-merchant:99.0.1 | 2026 年 4 月 27 日 |
| NPM | @alfa.life.mapp/app.web:99.0.17 | 2026 年 4 月 27 日 |
| NPM | @zirutan/utils:1.0.2 | 2026 年 4 月 27 日 |
| NPM | @zirutan/utils:1.0.4 | 2026 年 4 月 27 日 |
| NPM | report-ng:1.0.2 | 2026 年 4 月 27 日 |
| NPM | kl-b2c-ui-kit:99.0.2 | 2026 年 4 月 27 日 |
| NPM | @apple-pay-trust/authorize-payment:99.0.2 | 2026 年 4 月 27 日 |
| NPM | @google-pay-trust/authorize-payment:99.0.2 | 2026 年 4 月 27 日 |
| NPM | @ozon-complt/antibot-handler:99.0.2 | 2026 年 4 月 27 日 |
| NPM | @sbt_gitverse/analytics-client:99.0.5 | 2026 年 4 月 27 日 |
| NPM | @tw-models/storage:99.0.2 | 2026 年 4 月 27 日 |
| NPM | frank-bot-gogle-cloning:1.1.0 | 2026 年 4 月 27 日 |
| NPM | frank-research-poc-apple:1.1.4 | 2026 年 4 月 27 日 |
| NPM | @google-pay-trust/init-google-pay-result:99.0.2 | 2026 年 4 月 27 日 |
| NPM | @google-pay-trust/start:99.0.2 | 2026 年 4 月 27 日 |
| NPM | @b2b_blocker/show_activation_error:99.0.2 | 2026 年 4 月 27 日 |
| NPM | @business_promocode/cancel_promocode:99.0.2 | 2026 年 4 月 27 日 |
| NPM | @business_promocode/apply_promocode:99.0.2 | 2026 年 4 月 27 日 |
| NPM | @b2b_blocker/hide_activation_error:99.0.2 | 2026 年 4 月 27 日 |
| NPM | apple-internal-pki-utils:1.0.1 | 2026 年 4 月 27 日 |
| NPM | apple-internal-pki-trust-v5:1.0.0 | 2026 年 4 月 27 日 |
| NPM | @taxmonir/taxmon:99.0.6 | 2026 年 4 月 28 日 |
| NPM | @alfa.life.mapp/app.web:99.0.19 | 2026 年 4 月 28 日 |
| NPM | @apiary-annex/meta:99.0.4 | 2026 年 4 月 28 日 |
| NPM | @apple-pay-trust/cancelled:99.0.3 | 2026 年 4 月 28 日 |
| NPM | @apple-pay-trust/check-apple-pay:99.0.3 | 2026 年 4 月 28 日 |
| NPM | @apple-pay-trust/check-apple-pay:99.0.4 | 2026 年 4 月 28 日 |
| NPM | @apple-pay-trust/finish:99.0.3 | 2026 年 4 月 28 日 |
| NPM | @apple-pay-trust/merchant-session:99.0.4 | 2026 年 4 月 28 日 |
| NPM | @apple-pay-trust/merchant-session:99.0.3 | 2026 年 4 月 28 日 |
| NPM | @apple-pay-trust/finish:99.0.4 | 2026 年 4 月 28 日 |
| NPM | @apple-pay-trust/destroy:99.0.4 | 2026 年 4 月 28 日 |
| NPM | @apple-pay-trust/destroy:99.0.3 | 2026 年 4 月 28 日 |
| NPM | @pyme-web/web-api:99.0.4 | 2026 年 4 月 28 日 |
| NPM | @google-pay-trust/authorize-payment:99.0.4 | 2026 年 4 月 28 日 |
| NPM | @google-pay-trust/finish:99.0.3 | 2026 年 4 月 28 日 |
| NPM | @google-pay-trust/init-google-pay:99.0.4 | 2026 年 4 月 28 日 |
| NPM | @google-pay-trust/start:99.0.4 | 2026 年 4 月 28 日 |
| NPM | kl-b2c-ui-kit:99.0.3 | 2026 年 4 月 28 日 |
| NPM | @ozon-complt/antibot-handler:99.0.3 | 2026 年 4 月 28 日 |
| NPM | @ozon-complt/antibot-handler:99.0.4 | 2026 年 4 月 28 日 |
| NPM | @tw-models/storage:99.0.3 | 2026 年 4 月 28 日 |
| NPM | @w3m-app/is_connected:99.0.4 | 2026 年 4 月 28 日 |
| NPM | @w3m-frame/session_update:99.0.4 | 2026 年 4 月 28 日 |
| NPM | 訪問角度緩存破壞者:99.9.0 | 2026 年 4 月 29 日 |
| NPM | 訪問角度緩存破壞者:99.0.0 | 2026 年 4 月 29 日 |
| NPM | hpsetup:2.0.0 | 2026 年 4 月 29 日 |
保護您的開源依賴項免受漏洞和惡意程式碼的侵害
使用以下方式最大限度地降低風險並保護您的應用程式免受惡意軟體的侵害: Xygeni早期惡意軟體檢測優先解決最重要的漏洞。我們全面的解決方案可對您的依賴項進行即時監控,以便在威脅影響您的軟體之前檢測並緩解它們。
在目前的軟體開發環境中,由於漏洞和惡意程式碼威脅日益增多,管理開源元件至關重要。 Xygeni 的 Open Source Security 此解決方案會在有害軟體包發佈時立即掃描和攔截,從而顯著降低惡意軟體和漏洞入侵系統的風險。我們全面的監控涵蓋多個公共註冊表,確保所有依賴項都經過安全性和完整性審查。 Xygeni 透過根據上下文確定關鍵問題的優先順序並簡化修復流程,增強團隊維護安全可靠軟體專案的能力。
Xygeni採用多層技術來阻止惡意程式碼的傳播。首先,靜態程式碼分析可以偵測混淆模式、隱藏的有效載荷和腳本濫用。此外,行為沙箱也會分析安裝過程。 hooks此外,它還能偵測運行時命令和持久化技巧。機器學習偵測還能辨識簽章掃描器遺漏的零時差 npm 惡意軟體和 pypi 惡意軟體變種。最後,預警系統即時監控公共程式碼庫,驗證偵測結果,並立即向 DevOps 團隊發出警報。
因此,這種組合確保開發人員能夠快速獲得可操作的情報,這些情報直接整合到系統中。 CI/CD 工作流程。
為什麼開發者應該關注惡意 npm 套件
現代威脅很少等待運行時才發動攻擊。例如,惡意 npm 套件通常會在安裝過程中執行,而惡意 pypi 套件則會隱藏令牌竊取或後門。攻擊者:
- 將私有 GitHub 倉庫轉為公開倉庫即可進行復現。
- 利用編碼載荷竊取憑證和密鑰。
- 使用混淆的 JavaScript 載入器部署勒索軟體或殭屍網路。
事實上,惡意開源軟體套件在一年內激增了156%。因此,僅依賴延遲推送或基礎掃描器的團隊已經落後了。
這份惡意軟體報告追蹤了 npm 和 PyPI 中的哪些內容
本摘要是以下內容的中心樞紐:
- 已確認的惡意 npm 套件
- 已確認的 PyPI 惡意軟體包
- 基於行為的惡意程式碼檢測
- 登記確認的事件
- 每周和每月惡意軟體報告摘要
- npm 惡意軟體和 pypi 惡意軟體所有發現的歷史變更日誌
換句話說,它提供了一個統一的參考點。 Xygeni 的研究團隊每週都會更新此頁面,提供完整的技術分析和 GitHub IOC 的連結。
如何防範惡意 npm 套件和 PyPI 惡意軟體
由於這種日益增長的風險組織需要強大的防衛機制:
- 強制僅使用鎖定檔案進行安裝(
npm ci)in CI/CD. - 此外,使用 Xygeni 的早期預警引擎預先掃描依賴項。
- 此外,該區塊利用惡意程式碼訊號建置。 Guardrails.
- 產生 SBOMs 用於追蹤間接依賴關係並應用策略。
- 最重要的是,培訓開發人員識別網域搶注、混淆程式碼和可疑的安裝腳本。
試試 Xygeni 的惡意軟體偵測工具
Xygeni 提供:




