Malicious code in adpost (PyPI)
The adpost package on PyPI contained malicious code as part of a campaign by EsqueleSquad group that published nearly 6000 malicious PyPI and NPM packages. The malicious code executed spyware and information-stealing malware.
- Disclosed
- Last updated
- Blast radius
- Unknown; part of large-scale malicious package campaign affecting thousands of packages
- Ecosystems
- Attack vectors
- Threat actor
- Affected entities
- adpostPyPI package containing malicious code
The adpost package on PyPI was identified as containing malicious code. This package was part of a large-scale campaign by the EsqueleSquad group, which published nearly 6000 malicious packages across PyPI and NPM repositories.\n\nThe malicious code in these packages was designed to execute spyware and information-stealing malware on affected systems. The adpost package was documented in the OpenSSF's malicious-packages repository with identifier MAL-2023-2496.\n\nThis incident represents a significant supply chain attack affecting multiple ecosystems simultaneously, with thousands of packages weaponized for data theft and system compromise.
Indicators of compromise
- Packages
- adpost
Remediation
- Remove the adpost package from all environments
- Audit systems that installed adpost for signs of compromise or data exfiltration
- Review PyPI package dependencies for other packages from the EsqueleSquad campaign
- Monitor for suspicious network activity or unauthorized data access on affected systems
- Consult the OpenSSF malicious-packages repository for the complete list of affected packages
Sources
- GitHub Advisory GHSA-j7mw-9g9x-9gw9 · GitHub Advisory Database
Cite this entry
"Malicious code in adpost (PyPI)." supplychainattack.org, Supply Chain Attack Incident Catalog. Disclosed July 21, 2026; last updated July 21, 2026. https://supplychainattack.org/incident/malicious-code-in-adpost-pypi-f6eu9t
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