MAL-2026-18281 Malicious code in @generic-means/ing-feat-scanner-libs (npm)
Malicious package
Published
MAL-2026-18281 is a malicious package: @generic-means/ing-feat-scanner-libs (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-18281/ (Markdown: https://insights.sbomify.com/MAL-2026-18281/index.md)
- Package
- @generic-means/ing-feat-scanner-libs
- Registry
- npm
What is MAL-2026-18281?
MAL-2026-18281 is a malicious package in @generic-means/ing-feat-scanner-libs, published on 25 Oct 2026.
Official description
package.json declares its sole dependency
ltidisafe as a bare HTTPS tarball URL (https://ltidi.storage.googleapis.com/depenconf/ltidisafe-3.9.3.tgz) rather than a registry version range or a git ref pinned to a commit SHA. On npm install, npm fetches whatever bytes that URL currently returns and installs the resulting package, running any lifecycle scripts it contains. The tarball is unpinned, has no integrity hash, is not resolved through the npm registry, and the content at that URL can be swapped by whoever controls the storage bucket without any change to this package. The shipped index.js is an empty stub (module.exports = {}), so the off-registry dependency URL is effectively the entire payload delivered to installers. The dependency name does not correspond to a known npm package, and the storage.googleapis.com bucket is not an official registry endpoint.What should I do about MAL-2026-18281?
Remove the package from your dependencies and lockfiles, then rotate any secrets on machines where it was installed.