Malicious code in ml-data-shared (PyPI)
The ml-data-shared package on PyPI contained malicious code that exfiltrates system information and environment variables during installation. The package was identified and cataloged as part of the 2026-07-ml-shared malicious campaign by the OpenSSF.
- Disclosed
- Last updated
- Blast radius
- All users who installed the malicious ml-data-shared package from PyPI during the active distribution period.
- Ecosystems
- Attack vectors
- Threat actor
- Affected entities
- ml-data-sharedPyPI package containing malicious code
The ml-data-shared package distributed via PyPI contained malicious code designed to exfiltrate sensitive system information. During package installation, the code would extract basic system data including IP address, username, and all environment variables from the host system.\n\nThe malicious package was identified and attributed to the 2026-07-ml-shared campaign. The attack vector involved distributing the compromised package directly through the PyPI repository, allowing it to reach any user who installed the package during the active distribution period.\n\nThe malicious behavior was documented by the OpenSSF's malicious-packages project, which tracks confirmed malicious packages across major package ecosystems. The package has been cataloged under identifier MAL-2026-11199.\n\nThis incident demonstrates the risk of supply chain compromise through package repositories, where malicious code can be distributed to a broad audience of developers and systems.
Indicators of compromise
- Packages
- ml-data-shared
Remediation
- Immediately uninstall ml-data-shared from all systems where it was installed
- Review system logs and environment variable history for any unauthorized access or exfiltration during the installation period
- Rotate any sensitive credentials or tokens that may have been exposed through environment variables
- Audit systems for any additional malicious activity or persistence mechanisms
- Monitor for any data exfiltration to external hosts that may have occurred during the compromise
- Use dependency scanning tools to identify and prevent installation of known malicious packages
Sources
- GitHub Advisory GHSA-cqgc-q24x-3g9m · GitHub Advisory Database
Cite this entry
"Malicious code in ml-data-shared (PyPI)." supplychainattack.org, Supply Chain Attack Incident Catalog. Disclosed July 31, 2026; last updated July 31, 2026. https://supplychainattack.org/incident/malicious-code-in-ml-data-shared-pypi-b4x4lw
Suggest a correction
Found an error or have a newer source? Corrections to factual errors take priority over new entries.
Related incidents
- resolvedhigh
Malicious code in ml-fdbk-shared (PyPI)
The PyPI package ml-fdbk-shared contained malicious code that exfiltrates system information and environment variables during installation. The package was identified and reported as part of the 2026-07-ml-shared malicious campaign.
2026 07 ML SharedPyPICompromised package - containedhigh
Malicious code in ml-shared (PyPI)
The PyPI package ml-shared contained malicious code that exfiltrates system information and environment variables during installation. The package was identified and reported by the OpenSSF malicious-packages project.
2026 07 ML SharedPyPICompromised package - resolvedcritical
Malicious code in ml-nps-shared (PyPI)
The PyPI package ml-nps-shared contained malicious code that exfiltrates system information and environment variables during installation. The package was identified and reported by the OpenSSF malicious-packages project.
2026 07 ML SharedPyPICompromised package - containedcritical
Malicious code in mcp-search-server (PyPI)
mcp-search-server on PyPI contained malicious code in versions published from July 2026 onward. The package included hidden "phone home" functionality disguised as a "share compute swarm" feature, and was part of a coordinated campaign with another malicious package designed to deploy coin miners on user machines.
PyPICompromised packageMalicious maintainer