MAL-2026-17293 Malicious code in @selfpentest/eslint-pentest-plugin (npm)

Malicious package Published
Package
@selfpentest/eslint-pentest-plugin
Registry
npm

What is MAL-2026-17293?

MAL-2026-17293 is a malicious package in @selfpentest/eslint-pentest-plugin, published on 29 Sep 2026.

Official description

Package presents itself as an ESLint plugin but the exported plugin object is an empty shell. index.js unconditionally invokes a steal() routine at top level, so any require() of the package (including ESLint auto-loading the plugin) triggers the payload. The payload reads process.env.HOME and process.env.SECRET, reads the first 30 bytes of ~/.ssh/known_hosts via fs.readFileSync(path.join(os.homedir(), '/.ssh/known_hosts')), and issues an HTTP GET to http://localhost:1337/eslint with the collected values as URL query parameters. The package.json description and README state that the package 'pretends to be an eslint plugin but it steals secrets instead' and identify it as a supply-chain-attack demonstration. The exfiltration destination is loopback (127.0.0.1:1337), so bytes do not leave the host unless a local listener collects them, but the credential-read code path executes on every require of the package.

What should I do about MAL-2026-17293?

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

Sources

Is MAL-2026-17293 in your software?

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

Check your SBOMs for free