Malicious code in @years20/n8n-nodes-utils-helper-f (npm)
The npm package @years20/n8n-nodes-utils-helper-f contained malicious code that executed reconnaissance and data exfiltration payloads at install time and on require. The package masqueraded as an n8n helper node but contained only malicious reconnaissance and exfiltration functionality with no legitimate code.
- Disclosed
- Last updated
- Blast radius
- Any developer or system that installed the malicious package version
- Ecosystems
- Attack vectors
- Affected entities
- @years20/n8n-nodes-utils-helper-f
The npm package @years20/n8n-nodes-utils-helper-f was identified as containing malicious code designed to execute reconnaissance and exfiltration payloads. The malicious behavior was triggered both at installation time via a postinstall script (callback.js) and when the package was required, through identical top-level code in index.js.
The payload collected sensitive host identity information including user ID, hostname, network interfaces, and WSL detection status. It also attempted to read the SSH host public key from /etc/ssh/ssh_host_ed25519_key.pub and probed internal network ports, specifically targeting 10.131.106.231:22495.
The collected data was base64-encoded and exfiltrated via HTTPS to https://jasabersama.id/portfolio-data.php with TLS certificate verification disabled (rejectUnauthorized:false). The package name suggested it was a legitimate n8n helper node, but the shipped code contained only reconnaissance and exfiltration functionality with no legitimate n8n-related code.
The incident was identified and credited to the OpenSSF malicious-packages repository.
Indicators of compromise
- Packages
- @years20/n8n-nodes-utils-helper-f
- Domains
- jasabersama.id
- IPs
- 10.131.106.231
Remediation
- Immediately uninstall @years20/n8n-nodes-utils-helper-f from all systems
- Audit npm package.json and lock files for any installations of this package
- Review system logs and network traffic for evidence of data exfiltration to jasabersama.id
- Rotate SSH host keys and any credentials that may have been exposed
- Scan systems for any persistence mechanisms or additional malicious artifacts
- Review npm audit logs and consider enabling 2FA on npm accounts
- Monitor for similar typosquatting attempts targeting n8n packages
Sources
- GitHub Advisory GHSA-82g8-5p9m-xgqh · GitHub Advisory Database
Cite this entry
"Malicious code in @years20/n8n-nodes-utils-helper-f (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-f-npm-1ql5d8
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 @syncraft-labs/vue (npm)
The npm package @syncraft-labs/vue version 0.4.1 contained malicious obfuscated code in its ESM build that implements a blockchain-hosted C2 dropper (EtherHiding pattern), enabling remote code execution on any consumer importing the package.
npmCompromised package - resolvedcritical
Malicious code in @usaa-grp-personal-profile/personal-profile-common (npm)
Malicious package @usaa-grp-personal-profile/personal-profile-common version 999.0.0 published to public npm as a dependency-confusion attack targeting an organization's internal registry. The package contains preinstall and postinstall hooks that exfiltrate hostname, username, and working directory to an attacker-controlled OAST endpoint on every install.
npmDependency confusionCompromised package - activecritical
Malware in @sdgdfgdfhhhfd/multiviewr
Malware discovered in the npm package @sdgdfgdfhhhfd/multiviewr. Systems with this package installed are considered fully compromised and require immediate remediation.
npmCompromised package - containedcritical
Malicious code in 3-buildsight-web (npm)
The npm package 3-buildsight-web contains malicious code that fetches and executes arbitrary JavaScript from a remote Bitbucket URL on module load, granting full page privileges to an unverified third party.
npmCompromised package