Skip to content
supplychainattack.orgSupply chain attack incident catalog
containedcritical

Malicious code in chaintest (PyPI)

The chaintest package on PyPI contained malicious code implementing a cryptocurrency infostealer with keylogging, clipboard hijacking, and remote command execution capabilities. The malware exfiltrates browser data, cryptowallet extensions, SSH keys, and modifies copied cryptocurrency addresses to attacker-controlled wallets.

ShareXLinkedInHacker News
Disclosed
Last updated
Blast radius
Any user who installed the malicious chaintest package from PyPI
Ecosystems
Attack vectors
Threat actor
Affected entities
  • chaintestPyPI package containing cryptocurrency infostealer malware

The chaintest package published on PyPI contained embedded malicious code designed to steal cryptocurrency and sensitive information from infected systems. The infostealer targets browser extensions (including cryptowallet extensions), local storage, password managers, and standalone cryptocurrency wallets.\n\nThe malware implements multiple persistence mechanisms across different platforms and includes a keylogger that intercepts and modifies cryptocurrency addresses copied to the clipboard, replacing them with attacker-controlled addresses. Additional capabilities include remote command execution via C2 communication, SSH key exfiltration, and malicious browser extension installation.\n\nThe malicious code shares similarities with the 2026-07-cognikit campaign attributed to the DPRK "Contagious Interview" operation. The package was identified and reported by the OpenSSF malicious-packages project.

Indicators of compromise

Packages
  • chaintest

Remediation

  • Immediately uninstall the chaintest package from all systems
  • Audit all systems that installed chaintest for signs of compromise, including browser extensions, SSH keys, and password manager access
  • Rotate all cryptocurrency wallet credentials and move funds from potentially compromised wallets
  • Scan systems for persistence mechanisms and malicious browser extensions
  • Review browser history and local storage for exfiltrated data
  • Monitor for unauthorized SSH access and credential usage
  • Consider the system fully compromised and perform forensic analysis before returning to production use

Sources

  1. GitHub Advisory GHSA-6qc6-vp88-49gp · GitHub Advisory Database

Cite this entry

"Malicious code in chaintest (PyPI)." supplychainattack.org, Supply Chain Attack Incident Catalog. Disclosed August 10, 2026; last updated August 10, 2026. https://supplychainattack.org/incident/malicious-code-in-chaintest-pypi-17oj74

Suggest a correction

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

  1. resolvedcritical

    Malicious code in @years19/n8n-nodes-utils-helper-c (npm)

    The npm package @years19/n8n-nodes-utils-helper-c contained a malicious postinstall script that downloads a trojanized Python multidict module from an attacker-controlled server and injects it into the system's Python site-packages directory, enabling arbitrary code execution on any subsequent Python invocation.

    npmPyPICompromised packageMalicious commit
  2. containedcritical

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

    The npm package @years19/n8n-nodes-utils-helper-d contained malicious code that downloads and executes a Python DDoS/offensive-tooling dropper on installation. The package impersonates a legitimate n8n community node but performs unauthorized system reconnaissance and beacons host identity to an attacker-controlled endpoint.

    npmPyPICompromised packageTyposquatting
  3. resolvedcritical

    Malicious code in @years18/n8n-nodes-utils-helper-y (npm)

    The npm package @years18/n8n-nodes-utils-helper-y contained malicious code in its postinstall hook that downloads and executes attacker-controlled Python toolkits (mhddos, pyroxy-full, impacket), persists them in the user's Python site-packages, and exfiltrates host information to an attacker-controlled endpoint. Installation triggers immediate code execution and establishes persistence.

    npmPyPICompromised package
  4. resolvedcritical

    Malicious code in @years19/n8n-nodes-utils-helper-b (npm)

    The npm package @years19/n8n-nodes-utils-helper-b contained malicious code disguised as an n8n workflow utility. The postinstall hook executed reconnaissance, downloaded and extracted a Python tarball with TLS verification disabled, and exfiltrated system information to an attacker-controlled domain.

    npmPyPICompromised package