Skip to content
supplychainattack.orgSupply chain attack incident catalog
resolvedcritical

Malicious code in yffinance (PyPI)

Attacker distributed 900+ malicious packages via PyPI, including yffinance, which installed malicious browser extensions designed to manipulate clipboard contents and replace cryptocurrency wallet addresses.

ShareXLinkedInHacker News
Disclosed
Last updated
Blast radius
900+ malicious packages distributed via PyPI
Ecosystems
Attack vectors
Affected entities
  • yffinancePyPI package

An attacker distributed over 900 malicious packages on PyPI as part of a coordinated campaign. The yffinance package was among those compromised with malicious code.\n\nThe malicious packages installed browser extensions that performed clipboard manipulation and cryptocurrency wallet address replacement attacks. This allowed attackers to intercept and modify cryptocurrency transactions by replacing legitimate wallet addresses with attacker-controlled addresses when users copied and pasted them.\n\nThe incident was identified and documented by the OpenSSF's malicious-packages repository. The attack demonstrates the risk of supply chain compromise in package repositories and the potential for malicious code to affect end-user systems beyond the Python environment.

Indicators of compromise

Packages
  • yffinance

Remediation

  • Remove or uninstall the yffinance package and any other packages from the malicious campaign
  • Audit system for installed browser extensions, particularly those installed without explicit user action
  • Review browser extension permissions and remove any suspicious extensions
  • Check cryptocurrency wallet addresses in recent transactions for signs of manipulation
  • Update to a legitimate version of yffinance from a trusted source if the package is needed
  • Monitor for unauthorized changes to clipboard or wallet addresses

Sources

  1. GitHub Advisory GHSA-m3jm-hph9-j9rv · GitHub Advisory Database

Cite this entry

"Malicious code in yffinance (PyPI)." supplychainattack.org, Supply Chain Attack Incident Catalog. Disclosed July 21, 2026; last updated July 21, 2026. https://supplychainattack.org/incident/malicious-code-in-yffinance-pypi-rwjnje

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. 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
  3. 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
  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