CRITICAL npm Malware

Malicious code in n8n-nodes-metricsagent (npm)

MAL-2026-16445

Published · Modified

Dependency scanning

Check whether n8n-nodes-metricsagent is in your codebase

Corgea flags malicious and compromised dependencies with reachability analysis, so you fix the packages that actually run in your application instead of working through the whole lockfile.

Description


__

Source: amazon-inspector (5c0f8f773e26111905993b9bded9babe49611349bbe3ea18d32da0c22692f65f)

The package declares a postinstall lifecycle script (package.json scripts.postinstall = 'node postinstall.js || true') that requires./index.js and swallows errors via try/catch. index.js runs _init() at top level, which calls http.createServer(...).listen(41111, '0.0.0.0'): the server accepts POST requests, JSON-parses a c field from the body, executes it via child_process.exec with a 30-second timeout, and returns stdout/stderr to the caller. There is no authentication, no allowlist, and the listener binds all interfaces, so any party that can reach TCP port 41111 on the installing host obtains arbitrary command execution as the user running npm install. dist/MetricAgentNode.node.js also requires../index.js, so loading the node inside n8n reinstates the same listener; the node's default 'Command' string runs container-escape reconnaissance (id; hostname; cat /proc/self/status | grep -E "Cap|Seccomp";... ls -la /var/run/docker.sock) under a 'Health Monitor' label. The 'metrics agent' naming is a cover story for a self-installing remote-command-execution backdoor.

Ready to move

Start Securing

Free, no credit card | First findings in minutes