Skip to content
supplychainattack.orgSupply chain attack incident catalog
containedcritical

Malicious code in xyq-drama-skill (PyPI)

xyq-drama-skill, a PyPI package, contained malicious code that downloads and executes an unsigned binary from a remote server during installation and on command invocation. The package masquerades as a Chinese short-video drama script generator but actually deploys what appears to be a COFFLoader beacon.

ShareXLinkedInHacker News
Disclosed
Last updated
Blast radius
Any user who installed xyq-drama-skill from PyPI
Ecosystems
Attack vectors
Affected entities
  • xyq-drama-skillPyPI package containing malicious code in setup.py

The PyPI package xyq-drama-skill contained malicious code embedded in its setup.py that executes during package installation. The setup.py registers a custom install command class that downloads an opaque binary from https://douyin-cloud.tos-cn-beijing.volces.com/obj/hosts/log-helper and saves it to ~/.log-helper without any hash or signature verification.

The malicious behavior is triggered in two ways: first during pip install when the custom install command executes, and second when the console script xyq-drama is invoked, which calls ensure_helper() to re-fetch the binary if absent. The downloaded executable is made executable and launched via subprocess.Popen with start_new_session=True, running detached from the parent process.

The binary is disguised as a benign "log helper" dotfile in the user's home directory, a naming choice that does not match the package's advertised purpose. Security analysis indicates the dropped file is a COFFLoader beacon, a malicious payload typically used for command-and-control operations.

The package was identified through Amazon Inspector and community analysis (kam193), confirming the malicious intent and the presence of remote code execution capabilities.

Indicators of compromise

Packages
  • xyq-drama-skill
Domains
  • douyin-cloud.tos-cn-beijing.volces.com

Remediation

  • Immediately uninstall xyq-drama-skill from all systems: `pip uninstall xyq-drama-skill`
  • Remove the malicious binary if present: `rm ~/.log-helper`
  • Check for any suspicious processes or network connections that may have been established by the dropped binary
  • Review system logs and process history for execution of ~/.log-helper
  • Consider running antivirus or endpoint detection and response (EDR) tools to identify any additional artifacts or lateral movement
  • Do not reinstall xyq-drama-skill or any similarly named packages from untrusted sources
  • Monitor for indicators of compromise from the COFFLoader beacon, including unexpected outbound connections

Sources

  1. GitHub Advisory GHSA-4q6q-2w3r-cm92 · GitHub Advisory Database

Cite this entry

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

Suggest a correction

Found an error or have a newer source? Corrections to factual errors take priority over new entries.

  1. containedcritical

    Malicious code in acloud-clients (PyPI)

    A multi-year malicious campaign on PyPI distributes packages that clone legitimate cloud SDK libraries (acloud-clients, AWS clients) and inject code to exfiltrate cloud credentials via hidden dependencies like time-check-server and snapshot-photo.

    PyPICompromised packageMalicious commit
  2. resolvedcritical

    Malicious code in acloud-client (PyPI)

    A multi-year malicious campaign on PyPI distributed packages (acloud-client, time-check-server, snapshot-photo) that clone legitimate cloud SDK packages and exfiltrate cloud credentials to remote servers. The campaign used obfuscation techniques, hiding malicious functionality in dependency chains.

    PyPICompromised packageMalicious commit
  3. resolvedcritical

    Malicious code in zscaner (PyPI)

    A coordinated malicious package campaign on PyPI targeting Telegram Desktop users. Five interdependent packages (zscaner, pyapiepo, reqinstall, zmaker, zsender) work together to locate, archive, and exfiltrate Telegram Desktop user data to a remote server.

    PyPICompromised packageMalicious commit
  4. resolvedcritical

    Malicious code in zmaker (PyPI)

    A coordinated malicious package campaign on PyPI targeted Telegram Desktop users. Five interdependent packages (zmaker, zscaner, pyapiepo, reqinstall, zsender) worked together to locate, archive, and exfiltrate Telegram user data to a remote server.

    PyPICompromised packageMalicious commit