Skip to content
supplychainattack.orgSupply chain attack incident catalog
resolvedcritical

Malicious code in adcraft (PyPI)

The adcraft package on PyPI contained malicious code as part of a campaign by EsqueleSquad group that published nearly 6000 malicious packages across PyPI and NPM. The malicious code executed spyware and information-stealing malware.

ShareXLinkedInHacker News
Disclosed
Last updated
Blast radius
Potentially thousands of installations; part of a large-scale malicious package campaign affecting both PyPI and NPM ecosystems.
Ecosystems
Attack vectors
Threat actor
Affected entities
  • adcraftPyPI package containing malicious code

The adcraft package on PyPI was identified as containing malicious code. This package was part of a large-scale coordinated campaign by the EsqueleSquad group, which published nearly 6000 malicious packages across both PyPI and NPM ecosystems.\n\nThe malicious code in these packages was designed to execute spyware and information-stealing malware on affected systems. The incident was documented and credited to the OpenSSF's malicious-packages repository, with the specific advisory identified as MAL-2023-2480.\n\nAny system that installed the adcraft package from PyPI during the period it was available would have been at risk of compromise.

Indicators of compromise

Packages
  • adcraft

Remediation

  • Immediately uninstall the adcraft package from all systems
  • Audit systems that previously installed adcraft for signs of compromise, including unauthorized network connections and data exfiltration
  • Review and revoke any credentials or sensitive information that may have been exposed
  • Monitor affected systems for persistence mechanisms or secondary malware
  • Update dependency management tools to block or alert on known malicious packages from the OpenSSF malicious-packages database

Sources

  1. GitHub Advisory GHSA-f2vv-jgq5-cfw5 · GitHub Advisory Database

Cite this entry

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

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