Your RSA-2048 keys break in 2030. Find every one of them before attackers do.
Malicious package

deployment-key-auditornpm

Malicious code in deployment-key-auditor (npm) Remove it immediately and rotate any exposed credentials.

MAL-2026-4206
Immediate action
Remove the package, then rotate any secrets the build/runtime could reach.
npm uninstall deployment-key-auditor

What this malware does

A coordinated supply-chain attack comprising 10 npm packages published by maintainer ddjidd5640 ([email protected]) within a 48-hour window (2026-05-19T03:55Z – 2026-05-21T04:31Z). All packages masquerade as legitimate Web3/DeFi developer security tools (MCP servers) while silently exfiltrating credentials, wallet keys, shell history, SSH keys, and environment variables on install and on every MCP tool invocation. The postinstall hook fetches a dynamic C2 webhook URL from https://ddjidd564.github.io/defi-security-best-practices/config.json (hardcoded fallback: https://webhook.site/8d334534-1c63-4f4f-a0d7-95c446c8b233). At runtime, scanner.js performs a recursive credential sweep on every MCP tool call targeting cryptocurrency wallets (~/.ethereum, ~/.bitcoin, ~/.solana), SSH keys, dotfiles, and environment variables. MCP tool handlers in index.js are named to solicit private key material directly from the user or AI agent (e.g., verify_key_format: “Private key or key material to validate”).

deployment-key-auditor presents itself as a deployment key auditing MCP server. No clean prior version is known; version 0.7.3 carries the malicious postinstall hook and scanner.js payload from first publication.

This package poses as a Web3 deployment-key audit MCP tool but its actual behavior is broad credential theft against the installer. On npm install, the postinstall script reads ~/.ssh, ~/.ethereum, ~/.bitcoin, ~/.env, ~/.bash_history, ~/.zsh_history, and ~/.git-credentials, attaches hostname/user/cwd, and POSTs the contents to an attacker webhook whose URL is resolved dynamically from https://ddjidd564.github.io/defi-security-best-practices/config.json (GitHub Pages used as a C2 redirector so the destination can be rotated without republishing). scanner.js extends this at runtime: it walks ~/.ethereum, ~/.bitcoin, ~/.solana, ~/.ssh, ~/.config, AppData, Library, and $HOME matching wallet/keystore/mnemonic/private-key/API-key patterns, reads dotfiles (.env,.npmrc,.gitconfig,.git-credentials), enumerates process.env entries containing key/secret/token/password/private/mnemonic/seed/wallet, and ships the findings to the same dynamically-resolved webhook. index.js's MCP tools/call handler additionally executes ls -la ~/.ssh/id_* and posts the SSH key listing plus hostname/user/home to the attacker on every tool invocation, disguised as 'preflight_key_check' telemetry. The advertised audit functionality is a static-string facade with no real audit logic — the package is a credential stealer specifically targeting Web3 developers who handle deployer keys.

Any computer that has this package installed or running should be considered fully compromised. All secrets and keys stored on that computer should be rotated immediately from a different computer. The package should be removed, but as full control of the computer may have been given to an outside entity, there is no guarantee that removing the package will remove all malicious software resulting from installing it.

Malicious versions

15 flagged
0.7.10.7.20.7.30.7.41.7.01.7.11.7.21.7.31.8.01.8.11.8.51.8.61.8.71.8.81.8.9

Indicators of compromise (SHA-256)

8a12ff91200e2146333ae59961210efa05d5294de7ddf20f85c1bd46eeecbcb3
a89354ddb01242aff53212f0302f44d1c773f7ed734c641545136b2ea5841ddd
b62e9f4eb6eb206fe68cb6e591ee15974c58e25deed9634d5376efdf4de1b6e9
b99e87a29893fadcda0b43a3b40a1adcebf2ba0ad3086c74ddd02b7cd06c5ad1
0190bc92cbfe9e8e228301156f8839df5299e1fb8de0192d065747f9dbf36980
0a4c2d34f17238025f9234b370bf222d6c129077301f02558f0c9ff6764223e5
43e870675cf05b842f3436f796d81579b28b9b7042712f71e5f2385a9e38a29e
a6854a91118db5e9b73c68153067995cd7347b14badb5940a8fb27983f32014c
e43d90fedac00e1487a5970508ef751849f2ac5eb9521d459e0f8a35243f5bc5
e45ef9e03653889b558025b433f4ad7d2c100e03c1f3406bcbf4a9afc4f83391
e52776b1d5b8ce00b4845c461802566ae09501bfc6bdb674118f768c7446d8cb
49f8d7b7d69ffecc9dfb10616bcebc45ce910112af3c0d5804b1ad4e5f58d7f0
60048d1ad2efd7c06d69411a0540bbd70bb3a38e48fb1c7e7db715f3ff2be901
6df1ae3f89434137e6b1b89ec724820d1abb0d74708dbb4e7c4eb742e9b48fb3
727b13c4ede54b3270c2b6c1fd145e2af5ae71b74cfb43c81dff1adbf52e6884
86ea13ffac9eec9fddfff76f4695ebaf9255dce0182db8aec9e35fd1da9af2b0
ea574dee4bc197069fb3e66d45f0cba5b4a01971e125f291ff9461612c21c06c
f9bcf81e5e24b8ef0f8740b22a5ac06131911ab41be42486a3801eedd3f82c92
642d3eec190dacce58aed0e8da54049be07f79cebd73258336fa7bbe3a9f7711
cb126f6f47e4f4197b542c0de5b7c1a546789ba55b1b7becf6bc2c043b91298e
dec4a4f1f8f7c6c7ab8f048c5dd7bbe1d6f439866c0a0887db1115c693dc1fa3
ee7cd5515922574834a48547d8a744e6981e39d9d92f8d407377683818149147
5115eefb42febe8237b59cf0f0e66707ec67d908ed6d27b6ca86d9239aaafdd4
7a4ba44c6f981b9de0e6de85cc89ba0b4c08818c370ddaf7018e8f33a99730f6
a06e89ed5b99b43ad9e603f768cbd3726bddbdcf75a50d69ba10f579fd9060ea

Detection & response playbook

Credential / info stealer
  1. Find it

    Scan your lockfiles (package-lock.json, pnpm-lock.yaml, yarn.lock, requirements.txt, poetry.lock, etc.) and build artifacts for deployment-key-auditor (15 malicious versions). O3 Security's supply-chain scanner checks every dependency against known-malicious package intelligence at install time and in CI, flagging deployment-key-auditor across your stack and pipelines.

  2. If you installed it — respond

    deployment-key-auditor is built to steal secrets, so assume every credential the build or runtime could read is compromised. Remove it from your project and lockfile, then rotate ALL exposed secrets — npm/registry tokens, cloud keys, CI/CD secrets, SSH keys, and any .env values — from a known-clean machine. Audit logs for unauthorized use of those credentials.

  3. Did it already run?

    If deployment-key-auditor was ever installed, its post-install/runtime payload may have already executed. O3's L7 egress monitoring and runtime eBPF sensors detect the credential exfiltration or command-and-control callback after install and block the malicious outbound channel, so you catch and contain the actual compromise — not just the presence of the package.

  4. How O3 protects you

    O3 blocks deployment-key-auditor before install through its supply-chain scanner, and if it has already run, detects and severs the exfiltration or C2 callback at runtime through L7 egress monitoring and eBPF.

Frequently asked questions

No. deployment-key-auditor on npm has been identified as a malicious package (versions 0.7.1, 0.7.2, 0.7.3, 0.7.4, 1.7.0, 1.7.1, 1.7.2, 1.7.3, and 7 more flagged). It should be removed immediately — do not install or keep it in your dependency tree.

Campaign

GHSA-m69v-rchm-xjjpIN-MAL-2026-003731IN-MAL-2026-003824IN-MAL-2026-004090IN-MAL-2026-004077IN-MAL-2026-003860IN-MAL-2026-003895IN-MAL-2026-004046IN-MAL-2026-004086IN-MAL-2026-003943IN-MAL-2026-003950IN-MAL-2026-003894IN-MAL-2026-003906IN-MAL-2026-003983IN-MAL-2026-003942IN-MAL-2026-003825IN-MAL-2026-003960IN-MAL-2026-003982IN-MAL-2026-004039IN-MAL-2026-003706IN-MAL-2026-003907IN-MAL-2026-003732IN-MAL-2026-004055IN-MAL-2026-003647IN-MAL-2026-003859

References

Credits

  • Amazon Inspector · finder
  • SafeDep · finder

Detect & block this

O3 blocks deployment-key-auditor-class packages before install and in CI — and if it already ran, its runtime egress monitoring catches the credential exfiltration and severs the channel.

deployment-key-auditor (npm) malicious package — MAL-2026-4206 | O3 Security