Skip to content
supplychainattack.orgSupply chain attack incident catalog
resolvedhigh

Malicious code in phabricator-client (PyPI)

The phabricator-client package on PyPI contained malicious code that exfiltrates basic host information (IP address, username) during installation. The package overrides the install command in setup.py to execute the malicious payload.

ShareXLinkedInHacker News
Disclosed
Last updated
Blast radius
Users who installed the phabricator-client package from PyPI
Ecosystems
Attack vectors
Affected entities
  • phabricator-clientPyPI package containing malicious code

The phabricator-client package published on PyPI was found to contain malicious code designed to exfiltrate basic system information from the host upon installation or module import. The malicious payload includes the host's IP address and username.\n\nThe attack was implemented by overriding the install command in setup.py, causing the malicious code to execute during the package installation process. This is a common technique for supply chain attacks targeting Python package repositories.\n\nThe package was identified and reported by the OpenSSF's malicious-packages project (MAL-2026-11195). The incident was categorized as a pentest-style package with limited harm potential, though it demonstrates the risk of installing untrusted packages from public repositories.\n\nUsers who installed this package should assume their basic system information (IP address, username) may have been exfiltrated and take appropriate security measures.

Indicators of compromise

Packages
  • phabricator-client

Remediation

  • Remove the phabricator-client package from all systems where it was installed
  • Audit system logs for suspicious network connections or data exfiltration during the installation period
  • Change credentials and review account activity for any systems that had the package installed
  • Monitor for any unauthorized access or use of exfiltrated information (IP addresses, usernames)
  • Use package verification tools and review package source code before installation
  • Consider using private package repositories or package pinning to reduce exposure to malicious packages

Sources

  1. GitHub Advisory GHSA-pph4-3958-ffpq · GitHub Advisory Database

Cite this entry

"Malicious code in phabricator-client (PyPI)." supplychainattack.org, Supply Chain Attack Incident Catalog. Disclosed July 30, 2026; last updated July 30, 2026. https://supplychainattack.org/incident/malicious-code-in-phabricator-client-pypi-779por

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 cfgzen (PyPI)

    Malicious code was discovered in the cfgzen PyPI package, embedded in a native module that functions as an infostealer. The malicious code downloads and executes an encrypted remote executable, with capabilities to exfiltrate environment variables and detect sandbox environments. The package has been identified as part of campaign 2026-07-cfgzen.

    2026 07 CfgzenPyPICompromised package
  2. containedcritical

    Malicious code in karpatkey (PyPI)

    The karpatkey package on PyPI contained malicious code that exfiltrated sensitive credentials and data from infected systems. Upon import, the package spawned a background daemon thread that collected SSH keys, AWS/GCP credentials, kubeconfig, cryptocurrency wallets, and other secrets, then transmitted them via HTTP to hardcoded IP addresses.

    PyPICompromised packageMalicious commit
  3. containedcritical

    Malicious code in mrmustard (PyPI)

    A malicious version of the mrmustard package was published to PyPI containing code that exfiltrates SSH keys, AWS credentials, Kubernetes config, environment variables, and system identifiers to a remote endpoint. The payload includes multiple persistence mechanisms that survive package uninstallation.

    PyPICompromised package
  4. containedcritical

    Malicious code in karpatkit (PyPI)

    The karpatkit package on PyPI contained malicious code that exfiltrated sensitive credentials and secrets on import. The package spawned a daemon thread collecting environment variables, cloud credentials, SSH keys, Kubernetes tokens, cryptocurrency wallets, and shell histories, then transmitted them via HTTP to hardcoded IP addresses.

    PyPICompromised packageMalicious commit