MAL-2026-17768 Malicious code in cloudflare_module (npm)
Malicious package
Published
MAL-2026-17768 is a malicious package: cloudflare_module (npm). Every version was published to cause harm.
Task:
1. Search this repository's dependency manifests and lockfiles for the package, including transitive dependencies.
2. If it is present, remove it, regenerate the lockfile with the project's package manager, and replace whatever it was used for.
3. List any CI runners, developer machines or containers that installed it, so their secrets can be rotated.
4. If the package is not used anywhere, say so and change nothing.
Reference: https://insights.sbomify.com/MAL-2026-17768/ (Markdown: https://insights.sbomify.com/MAL-2026-17768/index.md)
- Package
- cloudflare_module
- Registry
- npm
What is MAL-2026-17768?
MAL-2026-17768 is a malicious package in cloudflare_module, published on 11 Oct 2026.
Official description
Package
[email protected] is a dependency-confusion lure targeting the cloudflare_* namespace. package.json declares scripts.postinstall: "node beacon.cjs", and beacon.cjs POSTs a JSON payload containing os.hostname(), the install path (__dirname), process.cwd(), and process.version to the hardcoded bare-IP endpoint http://185.158.107.175:8787/_ah/dc over plain HTTP. The package main (index.js) additionally calls require('./beacon.cjs').fire() at top level inside a try/catch, so the same host-identifier POST also fires whenever a downstream bundler or application require()s the package. The default export is a Proxy that returns a no-op for every property access, allowing bundlers that resolve an internal cloudflare_module name to complete the build cleanly so the beacon callback fires without producing errors. The package is published at version 99.0.1 with a generic "Compatibility shim." description, consistent with version-bumping to beat an internal registry during resolution. The README self-labels the package as an "authorized dependency-confusion test," but the beacon targets any machine that resolves the name — the installer never consents to the exfiltration — and the destination is an unattributed bare-IP collector, not infrastructure of the targeted namespace.What should I do about MAL-2026-17768?
Remove the package from your dependencies and lockfiles, then rotate any secrets on machines where it was installed.