Skip to content
supplychainattack.orgSupply chain attack incident catalog
containedcritical

Malicious code in system-performance-helper (npm)

The npm package system-performance-helper contained malicious code in its postinstall hook that establishes a reverse shell backdoor on installation. The package masqueraded as a system performance monitoring tool but executed a TCP reverse shell with full remote code execution capabilities.

ShareXLinkedInHacker News
Disclosed
Last updated
Blast radius
All npm users who installed system-performance-helper
Ecosystems
Attack vectors
Affected entities
  • system-performance-helpernpm package containing reverse-shell backdoor in postinstall hook

The npm package system-performance-helper was published with malicious code embedded in a postinstall hook (install.js). The package advertised itself as a system performance monitoring helper with legitimate-looking exports (getLoad, getTotalMemory wrapping os.loadavg and os.totalmem), but the postinstall script contained a reverse-shell backdoor.\n\nThe malicious payload opens a TCP socket connection and pipes a spawned OS shell (/bin/sh on Unix, cmd.exe on Windows) stdin/stdout/stderr through it, providing full remote code execution on the installer's host. The code includes auto-reconnect and keep-alive intervals, and contains comments indicating intentional obfuscation ("Run silently", "Fail quietly").\n\nAs published, the hardcoded destination address used a placeholder (HOST=\"YOUR_PUBLIC_IP\", PORT=4444), causing connection failures. However, the payload itself is fully functional; any republish with the placeholder filled in would weaponize every installation.\n\nThe incident was identified and credited to the OpenSSF's malicious-packages repository (MAL-2026-14194).", <parameter name="remediation">["Immediately uninstall system-performance-helper from all systems", "Audit npm install logs to identify when the package was installed", "Assume full system compromise on any host where system-performance-helper was installed via npm install", "Regenerate all credentials and secrets on affected systems", "Monitor affected systems for signs of unauthorized access or data exfiltration", "Review npm audit logs and consider using npm package integrity verification tools", "Add system-performance-helper to internal package blocklists"]

Indicators of compromise

Packages
  • system-performance-helper

Remediation

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

Sources

  1. GitHub Advisory GHSA-fhpw-32cw-j76m · GitHub Advisory Database

Cite this entry

"Malicious code in system-performance-helper (npm)." supplychainattack.org, Supply Chain Attack Incident Catalog. Disclosed August 19, 2026; last updated August 19, 2026. https://supplychainattack.org/incident/malicious-code-in-system-performance-helper-npm-8ex45d

Suggest a correction

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

  1. 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
  2. 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
  3. resolvedcritical

    Malicious code in create-coin (npm)

    create-coin@20.1.1 on npm contained malicious postinstall code that collected sensitive environment variables, credentials, and host reconnaissance data. The package impersonated an esbuild platform build and exfiltrated data to a hardcoded endpoint.

    npmCompromised packageTyposquatting
  4. 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