Malicious code in @public-for-cdao/types (npm)
Description
The @public-for-cdao/types npm package contains malicious code as part of a dependency-confusion credential theft campaign. Its postinstall script automatically runs a reconnaissance script (recon.js) during npm installation, which collects a wide range of sensitive credentials and environment information. The stolen data is exfiltrated to attacker-controlled endpoints. This package impersonates an internal package '@cdao/types' and is identified by a pinned version 99.99.99.
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/types package is involved in a targeted dependency-confusion attack. Its package.json includes a postinstall hook that runs recon.js automatically on npm install. The recon.js script collects system information, environment variables related to CI/CD, cloud credentials, private keys, cryptocurrency mnemonics, and secrets found in .env files from common directories. It then sends this data to fixed webhook.site and Pipedream endpoints, with TLS verification disabled on one endpoint. The package exports a stub module and uses a high version number (99.99.99) to impersonate an internal package '@cdao/types'. This behavior enables credential theft during package installation.
Potential Impact
Successful installation of this malicious package results in the theft of a broad range of sensitive credentials including CI tokens, GitLab access tokens, SSH keys, AWS credentials, database passwords, private keys, cryptocurrency seed phrases, and tokens for Docker, npm, Slack, and Discord. This can lead to unauthorized access to cloud resources, source code repositories, deployment environments, and other critical infrastructure components. The attack exploits dependency confusion to trick developers or automated systems into installing the malicious package instead of the intended internal package.
Mitigation Recommendations
No official patch or remediation is indicated for this malicious package itself. The best mitigation is to avoid installing the @public-for-cdao/types package version 99.99.99 or any packages from the @public-for-cdao scope that exhibit this behavior. Organizations should audit their dependency sources to prevent dependency confusion attacks, restrict package installation to trusted registries, and monitor for unexpected postinstall scripts. Since this is a malicious package published to npm, removing or blocking the package from internal use is recommended.
Technical Details
- Gcve Source
- db.gcve.eu
- Osv Id
- MAL-2026-10604
- Osv Schema Version
- 1.7.4
- Aliases
- ["GHSA-7c85-hxv2-75rg"]
- Ecosystems
- ["npm"]
Threat ID: 6a96f31bacd9273b49e49959
Added to database: 09/01/2026, 15:45:31 UTC
Last enriched: 09/08/2026, 06:23:55 UTC
Last updated: 10/01/2026, 22:45:57 UTC
Views: 28
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.