Malicious code in @public-for-cdao/common (npm)
Description
The @public-for-cdao/common npm package version 99.99.99 contains malicious code designed for a dependency-confusion credential theft campaign. It executes a postinstall script that collects a wide range of sensitive credentials and environment secrets from the host system and sends them to attacker-controlled endpoints. This package impersonates an internal @cdao scope package to exploit CI/CD build systems that mistakenly fetch it from the public npm registry.
Affected software
Run on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
The @public-for-cdao/common package version 99.99.99 includes a postinstall hook that runs a recon.js script during npm installation. This script harvests environment variables containing credentials such as AWS keys, GitLab tokens, SSH keys, database passwords, private keys, cryptocurrency mnemonics, and tokens for Docker, npm, Slack, and Discord. It also scans common .env file locations for secret-like strings. The collected data, along with host identifiers, is exfiltrated via HTTPS POST requests to two hardcoded external endpoints, with TLS certificate verification disabled. The package is part of a dependency-confusion attack targeting CI/CD pipelines that resolve internal @cdao scoped packages from the public npm registry instead of private sources.
Potential Impact
Successful installation of this malicious package leads to theft of a broad range of sensitive credentials and secrets from the host environment and CI/CD systems. This can result in unauthorized access to cloud services, source code repositories, deployment environments, databases, and communication platforms. The attack compromises confidentiality and potentially integrity of affected systems and data.
Mitigation Recommendations
No official patch or remediation is currently documented for this malicious package. The best mitigation is to avoid installing the @public-for-cdao/common package version 99.99.99 from public npm registries. Organizations should audit their dependency resolution configurations to prevent dependency confusion attacks by ensuring internal scoped packages are resolved from trusted private registries only. Monitoring for unexpected postinstall scripts and verifying package provenance before installation is recommended.
Technical Details
- Gcve Source
- db.gcve.eu
- Osv Id
- MAL-2026-10601
- Osv Schema Version
- 1.7.4
- Aliases
- ["GHSA-rhm5-mc66-328f"]
- Ecosystems
- ["npm"]
Threat ID: 6a96f31bacd9273b49e49973
Added to database: 09/01/2026, 15:45:31 UTC
Last enriched: 09/08/2026, 06:23:02 UTC
Last updated: 10/01/2026, 22:45:59 UTC
Views: 24
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
External Links
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.