{"id":"MAL-2026-17471","title":"Malicious code in caoxiltts (PyPI)","summary":"Malicious code in caoxiltts (PyPI)","severity":"critical","exploited":true,"vendor":"caoxiltts","product":"caoxiltts","ecosystem":"pip","affected":["caoxiltts"],"published":"2026-10-03","updated":"2026-10-04","sourceUpdated":"2026-10-04T23:45:21.529017188Z","source":"OSV","sourceUrl":"https://osv.dev/vulnerability/MAL-2026-17471","references":[{"url":"https://bad-packages.kam193.eu/pypi/package/caoxiltts"},{"url":"https://pypi.org/project/caoxiltts/0.1.0/"},{"url":"https://pypi.org/project/caoxiltts/0.1.1/"}],"tags":["osv","pip","malware"],"ingestedAt":"2026-10-04T07:27:31.034Z","slug":"MAL-2026-17471","body":"## Overview\n\n\n---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: amazon-inspector (23b18de964968b1d4f9333a1bcc5f247b3978f9fdc418f01f7e9a3c7bc578a62)\nThe package advertises itself as a TTS inference helper but harness.run() downloads two gzipped ELF binaries from a configurable host, verifies them against author-pinned SHA256 hashes, writes them to /tmp/.caoxiltts, chmods 0755, and executes them. The 'inference-core' binary is launched with a JSON configuration whose schema (pools[].url/user/pass/keepalive/tls, cpu.threads, mem-locked, cache-budget, autosave) is the XMRig cryptominer configuration shape, not a text-to-speech inference worker. The second binary 'edge-connector' is invoked as `access tcp --hostname <edge> --url 127.0.0.1:<port>`, matching the Cloudflare Access/cloudflared tunnel CLI shape, exposing a local port outbound through an author-controlled edge. The author-pinned hashes mean the exact bytes executed on the installer's host are chosen by the publisher, and the config/invocation pattern contradicts the package's declared TTS purpose. A supporting _report() helper additionally POSTs run_id, run state, and up to 4000 characters of exception tracebacks (which can carry local path and environment details) to https://<store>/hb on the same host serving the dropped binaries.\n\n## Source: kam193 (c0d27d780e356c6ae75dedaa144f2064476e275a02f801a1d56897a3a9d1930f)\nThe package imitates real activity and instead deploys a coin miner.\n\n\n---\n\nCategory: MALICIOUS - The campaign has clearly malicious intent, like infostealers.\n\n\nCampaign: 2026-10-voxeval\n\n\nReasons (based on the campaign):\n\n\n - cryptominer\n\n\n## Affected packages\n\n- `caoxiltts`\n\n## Remediation\n\nRefer to the advisory for the patched release.","depth":"abyssal","depthScore":70,"depthScoreParts":{"impact":52.3,"likelihood":0,"exploitation":18,"ransomware":0},"changes":[]}