Skip to content
supplychainattack.orgSupply chain attack incident catalog
resolvedcritical

Malicious code in @years17/n8n-nodes-utils-helper-d (npm)

The npm package @years17/n8n-nodes-utils-helper-d contained malicious code that executed on install and require, exfiltrating host data, SSH keys, and internal infrastructure details to an attacker-controlled domain while accepting remote command execution.

ShareXLinkedInHacker News
Disclosed
Last updated
Blast radius
Any developer or CI/CD system that installed @years17/n8n-nodes-utils-helper-d via npm
Ecosystems
Attack vectors
Affected entities
  • @years17/n8n-nodes-utils-helper-dMalicious npm package with postinstall and require-time hooks

The npm package @years17/n8n-nodes-utils-helper-d was published with malicious code designed to execute during installation and module import. The package name mimics a legitimate n8n community-node utility, suggesting typosquatting or impersonation.\n\nUpon installation, a postinstall hook executes node callback.js, with identical logic duplicated in index.js to ensure execution on require. The script uses execSync to enumerate sensitive host data including directory listings (/app, /opt, /home/ubuntu), process information (/proc/1/cmdline), system configuration (/etc/hosts), and internal DNS names (nexus.local, proxy.nexus.local). It also reads SSH authorized keys from /home/ubuntu/.ssh/authorized_keys.\n\nThe aggregated data is base64-encoded and transmitted via HTTPS GET to jasabersama.id/portfolio-data.php with TLS verification disabled (rejectUnauthorized: false). The request includes a c= parameter containing a base64-encoded shell command, with results written to /tmp/n8n_rce_result.txt, indicating a command-delivery and execution mechanism controlled by the attacker.\n\nThe targeting of nexus.local and SSH credentials suggests an active reconnaissance and credential-theft campaign against installer infrastructure, likely CI/CD systems or development environments.", <parameter name="remediation">["Immediately uninstall @years17/n8n-nodes-utils-helper-d from all systems", "Audit npm install logs and CI/CD pipelines for any installation of this package", "Rotate SSH keys and credentials that may have been exposed", "Review /tmp/n8n_rce_result.txt and system logs for evidence of command execution", "Block outbound connections to jasabersama.id", "Implement npm package verification and allowlisting in CI/CD pipelines", "Use npm audit and supply-chain security tools to detect similar malicious packages"]

Indicators of compromise

Packages
  • @years17/n8n-nodes-utils-helper-d
Domains
  • jasabersama.id

Remediation

  • Review the linked advisory; remove or upgrade the affected component and rotate any exposed credentials.

Sources

  1. GitHub Advisory GHSA-wcw8-96hh-w5rr · GitHub Advisory Database

Cite this entry

"Malicious code in @years17/n8n-nodes-utils-helper-d (npm)." supplychainattack.org, Supply Chain Attack Incident Catalog. Disclosed August 12, 2026; last updated August 12, 2026. https://supplychainattack.org/incident/malicious-code-in-years17-n8n-nodes-utils-helper-d-npm-4700hh

Suggest a correction

Found an error or have a newer source? Corrections to factual errors take priority over new entries.

  1. containedcritical

    Malware in svelte-dim-kit

    The npm package svelte-dim-kit was found to contain malware, potentially giving attackers full control of affected systems. All systems with this package installed should be considered compromised and secrets/keys rotated immediately from a different computer.

    npmCompromised package
  2. 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
  3. 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
  4. resolvedcritical

    Malicious code in stillm4ddpocs-rtest-bravo (npm)

    The npm package stillm4ddpocs-rtest-bravo contained malicious code in its preinstall script that automatically executed during installation, collecting system information and internal package metadata and exfiltrating it to a third-party Interactsh collector via HTTPS and DNS tunneling.

    npmCompromised package