Malicious code in @years20/n8n-nodes-utils-helper-i (npm)
The npm package @years20/n8n-nodes-utils-helper-i contained malicious postinstall scripts that performed system reconnaissance and data exfiltration. The package also performed an unpinned git clone of a third-party repository during installation.
- Disclosed
- Last updated
- Blast radius
- All npm users who installed @years20/n8n-nodes-utils-helper-i during the malicious period.
- Ecosystems
- Attack vectors
- Affected entities
- @years20/n8n-nodes-utils-helper-iMalicious npm package masquerading as n8n helper node
The npm package @years20/n8n-nodes-utils-helper-i was published with malicious code disguised as an n8n helper node utility. The package contained only a stub node file (nodes/PwnNode.node.js) and a postinstall script (callback.js, duplicated as index.js) that executed on npm install.\n\nThe postinstall script performed installer-side reconnaissance by collecting sensitive system information including user ID, hostname, git configuration, running n8n processes, and locations of .n8n directories. This data was base64-encoded and exfiltrated via HTTPS GET requests to https://jasabersama.id/portfolio-data.php with TLS verification disabled (rejectUnauthorized: false).\n\nAdditionally, the postinstall script performed an unpinned git clone of a personal GitHub repository (github.com/yadhukrishnam/CVE-2026-25053) into /tmp/gh-test during installation. The repository name embeds a CVE identifier consistent with an n8n supply-chain proof-of-concept payload, indicating the package was designed as a targeted attack vector.\n\nThe incident was identified and reported by the OpenSSF malicious-packages project via Amazon Inspector.", <parameter name="remediation">["Immediately uninstall @years20/n8n-nodes-utils-helper-i from all systems", "Audit npm install logs to identify when the package was installed", "Review system logs for suspicious outbound HTTPS connections to jasabersama.id", "Inspect /tmp/gh-test for any cloned repository content and remove if present", "Rotate any credentials or sensitive data that may have been exposed during the reconnaissance phase", "Review git configuration for any unauthorized changes", "Monitor for any n8n process anomalies or unauthorized modifications", "Use npm audit to check for other malicious packages in your dependency tree"]
Indicators of compromise
- Packages
- @years20/n8n-nodes-utils-helper-i
- Domains
- jasabersama.id
Remediation
- Review the linked advisory; remove or upgrade the affected component and rotate any exposed credentials.
Sources
- GitHub Advisory GHSA-wx95-mhcj-6439 · GitHub Advisory Database
Cite this entry
"Malicious code in @years20/n8n-nodes-utils-helper-i (npm)." supplychainattack.org, Supply Chain Attack Incident Catalog. Disclosed August 12, 2026; last updated August 12, 2026. https://supplychainattack.org/incident/malicious-code-in-years20-n8n-nodes-utils-helper-i-npm-sj9gau
Suggest a correction
Found an error or have a newer source? Corrections to factual errors take priority over new entries.
Related incidents
- resolvedcritical
Malicious code in rust-testing-utils (npm)
The npm package rust-testing-utils contained malicious code that impersonates the pino logger and executes remotely-fetched code with arbitrary privileges. The package spawns a child process that decodes a hardcoded URL, fetches attacker-controlled content, and executes it via Function constructor with full module-loading capability.
npmCompromised packageMalicious commit - containedcritical
Malicious code in stillm4ddpocs-demo-sprocket (npm)
The npm package stillm4ddpocs-demo-sprocket version 999.9.12 contains malicious code that exfiltrates system and project metadata via multiple channels (HTTPS, HTTP, and DNS) to a hardcoded callback host. The package uses a high version number to exploit dependency-confusion attacks against organizations with internal packages of the same name.
npmCompromised packageDependency confusion - containedcritical
Malicious code in @syncraft-labs/react (npm)
The npm package @syncraft-labs/react contained obfuscated malicious code in its ESM distribution that implements the EtherHiding pattern, fetching and executing arbitrary code from an Ethereum smart contract via RPC endpoints. The tampering occurred post-build in the dist/index.js artifact.
npmCompromised package - containedcritical
Malware in hydration-dim-kit
Malware was discovered in the npm package hydration-dim-kit. Any computer with this package installed or running should be considered fully compromised. All secrets and keys must be rotated immediately from a different computer.
npmCompromised package