MAL-2026-6528 Malicious code in @immobiliarelabs/backstage-plugin-ldap-auth (npm)

Malicious package Published
Package
@immobiliarelabs/backstage-plugin-ldap-auth
Registry
npm

What is MAL-2026-6528?

MAL-2026-6528 is a malicious package in @immobiliarelabs/backstage-plugin-ldap-auth, published on 26 Jun 2026.

Official description

The package ships a binding.gyp at the tarball root that contains GYP command-expansion syntax (<!(…) / <!@(…)) in its sources/targets configuration (binding.gyp line 6). npm implicitly invokes node-gyp rebuild whenever a binding.gyp is present — even with no declared install/postinstall script — and node-gyp evaluates <!(…) as a shell command during the configure step. This causes attacker-controlled shell to execute on the installer's machine on a default npm install, equivalent to a postinstall lifecycle hook. The package presents itself as an LDAP auth plugin for Backstage, a pure-JavaScript role for which a native addon (and thus a binding.gyp performing shell expansion) is not warranted. The traced content additionally tripped the model safety filter on output, corroborating the malicious shape of the embedded command. Installer impact: arbitrary code execution under the user running npm install, before any application code is invoked.

What should I do about MAL-2026-6528?

Remove the package from your dependencies and lockfiles, then rotate any secrets on machines where it was installed.

Sources

Is MAL-2026-6528 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free