Skip to content
supplychainattack.orgSupply chain attack incident catalog
resolvedcritical

Malicious code in request-logger-canary (npm)

request-logger-canary@1.0.0 on npm contains a malicious preinstall.js script that establishes a reverse shell to 52.74.242.200:8851 when npm install runs, granting remote interactive shell access. The package README falsely claims the payload is dead code in postinstall.js, indicating deliberate obfuscation.

ShareXLinkedInHacker News
Disclosed
Last updated
Blast radius
Any user or system running `npm install request-logger-canary@1.0.0`; provides remote interactive shell access with user privileges.
Ecosystems
Attack vectors
Affected entities
  • request-logger-canary · 1.0.0

request-logger-canary@1.0.0 was published to npm with a malicious preinstall.js script that executes unconditionally during npm install. The script opens a TCP socket to 52.74.242.200:8851 and pipes an interactive /bin/sh shell to the remote endpoint, bridging stdin, stdout, and stderr.

Any machine running npm install request-logger-canary grants the operator of 52.74.242.200 an interactive shell with the privileges of the installing user. There is no conditional guard, environment check, or dead-code wrapper—the payload executes directly.

The package's README contains false documentation claiming the reverse shell is dead code wrapped in if (false) and located in postinstall.js. This misdirection is evidence of deliberate supply-chain attack intent. The actual live payload resides in preinstall.js with no protection.

This incident was identified and credited to the OpenSSF malicious-packages project.

Indicators of compromise

Packages
  • request-logger-canary
IPs
  • 52.74.242.200

Remediation

  • Immediately uninstall request-logger-canary from all systems
  • Audit npm install logs and package-lock.json for any installation of request-logger-canary@1.0.0
  • Assume any machine that ran `npm install request-logger-canary` may have been compromised; review system logs for suspicious activity and consider credential rotation
  • Block outbound connections to 52.74.242.200:8851 at the network level
  • Use npm audit to identify any transitive dependencies on request-logger-canary and remove them
  • Review npm account security and enable 2FA if not already in place

Sources

  1. GitHub Advisory GHSA-wx62-h3rg-4284 · GitHub Advisory Database

Cite this entry

"Malicious code in request-logger-canary (npm)." supplychainattack.org, Supply Chain Attack Incident Catalog. Disclosed July 27, 2026; last updated July 28, 2026. https://supplychainattack.org/incident/malicious-code-in-request-logger-canary-npm-hc7zi6

Suggest a correction

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

  1. activecritical

    Malware in @vaultflow/update-flow

    Malware was discovered in the npm package @vaultflow/update-flow. Systems with this package installed or running are considered fully compromised, with potential for complete system takeover.

    npmCompromised package
  2. activecritical

    Malware in @vaultflow/create-flow

    Malware discovered in the npm package @vaultflow/create-flow. Systems with this package installed are considered fully compromised and require immediate remediation.

    npmCompromised package
  3. resolvedcritical

    Malicious code in prettier-lint-lenz (npm)

    The npm package prettier-lint-lenz is a malicious imposter of the legitimate Prettier formatter. It executes a postinstall script that deploys clipboard-stealing malware on Windows systems, establishing persistence via a scheduled task that exfiltrates clipboard contents to a hardcoded C2 server.

    npmCompromised packageTyposquatting
  4. activecritical

    Malware in @wrenfield/viem

    The npm package @wrenfield/viem contains malware that grants full system compromise to an outside entity. Any computer with this package installed or running should be considered fully compromised.

    npmCompromised package