Malicious code in comp-colors (PyPI)
The package presents itself as a local color-palette toolkit but exports a public colors() function in remote.py that POSTs to the hardcoded endpoint https://www.fastsyncapi.com/v1/colors, writes the returned bytes to a NamedTemporaryFile with a server-controlled filename/extension, and executes them without any hash or signature verification. On Windows the code silently installs.msi responses via msiexec.exe /i /qn /norestart and then launches a fixed binary path; on other platforms it invokes os.startfile / xdg-open / open on the dropped file. A companion update() function collects the installer's hostname, a SHA-256 HWID derived from hostname and MAC address (uuid.getnode()), and locale-derived country code and POSTs them along with a caller-supplied activation key to https://www.fastsyncapi.com/v1/update; the response token is persisted at ~/.config/npm-packages/vtoken.json (Linux) or %LOCALAPPDATA%/npm-packages/vtoken.json (Windows) and reused by the dropper. All classes, functions, parameters, and locals across src/pycolored/* are renamed to random tokens (e.g. _LBOfQSgdKR5ic9eT, _ji0wfcMCs1P5dOqg), and the undocumented colors and update symbols are exported in __all__ while the README only advertises a benign colorsv1 helper. The npm-packages token directory inside a Python package indicates cross-registry actor infrastructure reuse.
The package hides code to download and execute a remote executable from a newly created fastsyncapi[.]com domain. It is disguised as a remote 'fast color helper,' as opposed to the local helper, also included in the code, that only mimics any functionality. The malicious part is not immediately active: to download the binary, a key is required, which was not included in the analyzed versions. The downloaded binary is executed, and at least in one case disguised as 'AppHostRegistrationVerifier'. The package is likely prepared for multi-stage infection, but the trigger code using it was not identified.
Category: MALICIOUS - The campaign has clearly malicious intent, like infostealers.
Campaign: 2026-07-colorstack
Reasons (based on the campaign):
MAL-2026-10986 is recorded against 1 package.
Published on 21 July 2026 and last revised on 4 August 2026. No public exploit is currently recorded for this entry. Record sourced from OSV.
Domains: fastsyncapi.com
URLs: https://www.fastsyncapi.com/v1/update https://www.fastsyncapi.com/v1/colors
Details
Affected Packages
| Software | From version | Fixed in |
|---|---|---|
| comp-colors | — | — |
References
Free Vulnerability Check
BotEraser helps you identify potentially vulnerable plugins and themes by checking your installation against MAL-2026-10986 and other known CVE records.
Scan My Site Free →No credit card required · Results in minutes
ⓘ Data Notice: The information presented above has been compiled from publicly available internet sources. Boteraser aggregates this data solely for informational purposes and does not independently classify, evaluate, or endorse any findings about the vulnerabilities listed. The accuracy and completeness of this information is the sole responsibility of the original publishers. Boteraser and its operators accept no liability for any decisions made based on this data.
Stay up to date with the latest from Boteraser.
We use cookies to improve your experience on our site. By using our site, you consent to cookies.
Manage your cookie preferences below:
Essential cookies enable basic functions and are necessary for the proper function of the website.
CloudFlare provides web performance and security solutions, enhancing site speed and protecting against threats.
Service URL: developers.cloudflare.com (opens in a new window)
These cookies are needed for adding comments on this website.
These cookies are used for managing login functionality on this website.
Statistics cookies collect information anonymously. This information helps us understand how visitors use our website.
Google Analytics is a powerful tool that tracks and analyzes website traffic for informed marketing decisions.
Service URL: policies.google.com (opens in a new window)
You can find more information in our Cookie Policy and Privacy Policy.