OpenSSF/OSV advisory MAL-2026-15532 confirms this npm version as malicious. package.json declares a self-referential dependency whose key equals the package's own name (`confluence-rest`) and whose value is the bare HTTPS URL `https://repo.securityctrl.com/confluence-rest` rather than a semver range. On `npm install`, npm resolves that URL and installs whatever tarball the host returns, running any lifecycle scripts inside it, with no version pin and no integrity check. The shipped index.js...
Source
OpenSSF Malicious Packages via OSV
Summary
Malicious code in confluence-rest (npm)
Details
package.json declares a self-referential dependency whose key equals the package's own name (`confluence-rest`) and whose value is the bare HTTPS URL `https://repo.securityctrl.com/confluence-rest` rather than a semver range. On `npm install`, npm resolves that URL and installs whatever tarball the host returns, running any lifecycle scripts inside it, with no version pin and no integrity check. The shipped index.js is an inert stub, so the manifest URL is the entire code-delivery path for the package. Whoever controls repo.securityctrl.com controls code that executes on the installer's machine at install time, and the self-referential dependency-confusion shape (same name as the published package, version 30.0.0 sufficient to win resolution against a legitimate internal package of the same name) indicates targeting of internal-package resolution.
Decision reason
OpenSSF Malicious Packages via OSV confirms confluence-rest@30.0.0 as malicious (MAL-2026-15532): Malicious code in confluence-rest (npm)