Malicious code in yyfinance (PyPI)
Attacker distributed 900+ malicious packages via PyPI, including yyfinance, which infected local browsers with a malicious extension designed to manipulate clipboard and replace cryptocurrency wallet addresses.
- Disclosed
- Last updated
- Blast radius
- 900+ malicious packages distributed via PyPI
- Ecosystems
- Attack vectors
- Affected entities
- yyfinanceMalicious package distributed via PyPI
A large-scale malicious package campaign distributed over 900 compromised packages through the Python Package Index (PyPI). The yyfinance package was among those affected by this attack.\n\nThe malicious code installed a browser extension that performed clipboard manipulation and cryptocurrency wallet address replacement attacks. This technique targets users who copy and paste wallet addresses, replacing them with attacker-controlled addresses to redirect cryptocurrency transactions.\n\nThe attack was identified and documented by Checkmarx and credited to the OpenSSF's malicious-packages repository. The incident represents a significant supply chain compromise affecting the Python ecosystem.
Indicators of compromise
- Packages
- yyfinance
Remediation
- Remove or uninstall the yyfinance package immediately if installed
- Scan systems for the malicious browser extension and remove it
- Review browser extensions for any suspicious or unfamiliar additions
- Check cryptocurrency wallet addresses in clipboard history for signs of manipulation
- Update to a clean version of any legitimate package from a trusted source
- Monitor for unauthorized cryptocurrency transactions
- Consider using hardware wallets or address verification mechanisms to prevent clipboard replacement attacks
Sources
- GitHub Advisory GHSA-7rhm-vjwr-qmrp · GitHub Advisory Database
Cite this entry
"Malicious code in yyfinance (PyPI)." supplychainattack.org, Supply Chain Attack Incident Catalog. Disclosed July 21, 2026; last updated July 21, 2026. https://supplychainattack.org/incident/malicious-code-in-yyfinance-pypi-129884
Suggest a correction
Found an error or have a newer source? Corrections to factual errors take priority over new entries.
Related incidents
- resolvedcritical
Malicious code in afrit-name (PyPI)
Malicious code was discovered in the afrit-name package on PyPI. The incident was identified and documented by the OpenSSF malicious packages project.
PyPICompromised package - resolvedcritical
Malicious code in adv2099m7 (PyPI)
Malicious code was discovered in the adv2099m7 package on PyPI. The package was identified and cataloged by the OpenSSF malicious packages project.
PyPICompromised package - resolvedcritical
Malicious code in adrandom (PyPI)
The adrandom package on PyPI contained malicious code that executed spyware and information-stealing malware. It was part of a campaign by the EsqueleSquad group that published nearly 6,000 malicious packages across PyPI and NPM.
EsquelesquadPyPICompromised package - resolvedcritical
Malicious code in ziphash (PyPI)
The ziphash package on PyPI contained malicious code that downloads and executes multi-stage malware during archive-support class initialization. The malware exhibits obfuscation and remote code execution capabilities, classified as part of the 2025-11-uzip campaign.
2025 11 UzipPyPICompromised package