{"answers":{"affected":"1 open source package ship an affected version, including n8n-nodes-final-mile.","exploited":"There is no known exploitation of MAL-2026-10776 in the wild and no public exploit code.","fix":"Remove the package from your dependencies and lockfiles, then rotate any secrets on machines where it was installed.","what":"MAL-2026-10776 is a malicious package in n8n-nodes-final-mile, published on 17 Jul 2026."},"fix_prompt":"MAL-2026-10776 is a malicious package: n8n-nodes-final-mile (npm). Every version was published to cause harm.\n\nTask:\n1. Search this repository's dependency manifests and lockfiles for the package, including transitive dependencies.\n2. If it is present, remove it, regenerate the lockfile with the project's package manager, and replace whatever it was used for.\n3. List any CI runners, developer machines or containers that installed it, so their secrets can be rotated.\n4. If the package is not used anywhere, say so and change nothing.\n\nReference: https://insights.sbomify.com/MAL-2026-10776/ (Markdown: https://insights.sbomify.com/MAL-2026-10776/index.md)","id":"MAL-2026-10776","markdown":"https://insights.sbomify.com/MAL-2026-10776/index.md","name":"MAL-2026-10776","record":{"aliases":[],"analysis":null,"analysis_generated_by":null,"assigner":null,"cpe":[],"cvss":{"score":null,"severity":null,"source":null,"vector":null,"version":null},"cwes":[],"description":"The package advertises itself as a community utility node for n8n but its declared main (index.js) is a self-executing IIFE that runs the moment n8n loads the module. On execution it (1) opens a reverse shell by spawning /bin/bash with stdio redirected via /dev/tcp to 103.27.109.184:8895, giving the operator of that host interactive root-level control of the installer; (2) attempts multiple Docker-based container escapes (bind-mounting the host root filesystem, and --privileged nsenter) to append a hardcoded attacker ssh-ed25519 public key labeled 'n8n-backdoor' to /root/.ssh/authorized_keys on the underlying host for persistent SSH access; (3) collects hostname, user id, network interfaces, docker ps output, environment variables, and the contents of /etc/shadow, /etc/kubernetes/kubelet.conf, and /root/.kube/config obtained via the Docker escape, and posts the results as JSON over TCP to 103.27.109.184 on ports 8890 and 8891. A separate MyNode.js file is a benign-looking stub referenced by package.json's n8n.nodes to serve as cover while index.js carries the payload.\n\nThe OpenSSF Package Analysis project identified 'n8n-nodes-final-mile' @ 1.0.5 (npm) as malicious.\n\nIt is considered malicious because:\n\n- The package executes one or more commands associated with malicious behavior.","ecosystems":["npm"],"exploits":{"exploitdb":null,"first_seen":null,"github_poc":null,"max_poc_stars":null,"metasploit":null,"nuclei":null,"refs":[],"tier":null},"has_fix":false,"headline":"Malicious code in n8n-nodes-final-mile (npm)","id":"MAL-2026-10776","indexable":true,"kev":null,"kind":"malicious","links":{"ecosystem":"npm","product":null,"products":[],"type":null,"year":"2026"},"n_packages":1,"n_references":null,"packages":[{"ecosystem":"npm","fixed":[],"introduced":[],"last_affected":[],"package":"n8n-nodes-final-mile","purl":"pkg:npm/n8n-nodes-final-mile","source":"MAL-2026-10776"}],"products":null,"published":"2026-07-17","related":[],"sources":[{"class":"attribution","licence":"Apache-2.0","name":"OpenSSF Malicious Packages","prefix":"MAL"}],"ssvc":{"automatable":null,"exploitation":null,"technical_impact":null},"state":null,"updated":null,"vendors":null},"summary":null,"url":"https://insights.sbomify.com/MAL-2026-10776/"}