{"id":"MAL-2026-16406","summary":"Malicious code in crypto-trader-py (PyPI)","details":"\n---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: amazon-inspector (33e855a3ce62e35b613e702e710b81900769c241707c80f6a61462df0927529c)\nThe package presents itself as a crypto trading and backtesting toolkit, but ships no library code matching that description — SOURCES.txt lists only LICENSE, README, setup.py, and egg-info metadata, and top_level.txt is empty. setup.py unconditionally invokes _wus_boot() before setup() during `pip install`, which spawns a sibling script `_cryptotr_b2ca69.py` via subprocess.Popen using `pythonw.exe` with Windows creationflags 0x08000000 (CREATE_NO_WINDOW) to hide the console window, guarded by a tempdir lockfile (`13f8811c38.lk`) to avoid re-entry. Stealth markers (hidden-window flag, pythonw preference, silent try/except wrapping, obfuscated identifiers) and the absence of any advertised library content match a dropper cover-story pattern rather than a legitimate build step, and the child process runs on every install with no user interaction.\n\n## Source: kam193 (734dc70863cedc4f248265b79254d8bc4ac9dbbc40337ad7a5bbd45d9314500b)\nDuring installation, the package attempts to silently execute code. In analyzed versions, the payload file was missing.\n\n\n---\n\nCategory: MALICIOUS - The campaign has clearly malicious intent, like infostealers.\n\n\nCampaign: 2026-09-snap-queue\n\n\nReasons (based on the campaign):\n\n\n - The package overrides the install command in setup.py to execute malicious code during installation.\n","modified":"2026-09-22T22:30:05.629228613Z","published":"2026-09-22T18:40:26Z","database_specific":{"malicious-packages-origins":[{"import_time":"2026-09-22T18:44:15.282333629Z","modified_time":"2026-09-22T18:40:26.644355Z","sha256":"734dc70863cedc4f248265b79254d8bc4ac9dbbc40337ad7a5bbd45d9314500b","source":"kam193","versions":["1.0.0"],"id":"pypi/2026-09-snap-queue/crypto-trader-py"},{"source":"amazon-inspector","versions":["1.0.0"],"id":"IN-MAL-2026-020310","import_time":"2026-09-22T22:16:11.255604423Z","modified_time":"2026-09-22T21:51:13Z","sha256":"33e855a3ce62e35b613e702e710b81900769c241707c80f6a61462df0927529c"}]},"references":[{"type":"WEB","url":"https://bad-packages.kam193.eu/pypi/package/crypto-trader-py"},{"type":"PACKAGE","url":"https://pypi.org/project/crypto-trader-py/1.0.0/"}],"affected":[{"package":{"name":"crypto-trader-py","ecosystem":"PyPI","purl":"pkg:pypi/crypto-trader-py"},"versions":["1.0.0"],"database_specific":{"cwes":[{"cweId":"CWE-506","description":"The product contains code that appears to be malicious in nature.","name":"Embedded Malicious Code"}],"indicators":{"evidence_files":[{"sha256":"214e5b1768fad2a230c6f450c7c2ed91d4f47f67d074cb10483afe446d3fbb39","tlsh":"40213500c921207086dbd25d492194f45f6f1be32993a5d5b78c4680ff845f6cb76768","path":"setup.py"},{"sha256":"e2214b23a1eca4fb2594a3886b5aeeb90cf26a189e6645e35fcfbe39439a36ef","tlsh":"a2c0e953992dbb52277585c0e17f9f10e85666c32976a6f3e345898cd8d4401e40e411","path":"crypto_trader_py.egg-info/SOURCES.txt"}],"package_integrity":[{"hashes":{"blake2b_256":"e83c7e9a1405f2b629e95e48ccd7a6f3c0b963756862923d895716e9af6a8750","md5":"c207a33ef58d51816496c8999ad1d565","sha256":"c20440226e70689325df502dae45e7dd813c91670a2367c57f3fe7e2a739d478"},"filename":"crypto_trader_py-1.0.0.tar.gz"}]},"source":"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/pypi/crypto-trader-py/MAL-2026-16406.json"}}],"schema_version":"1.9.0","credits":[{"name":"Amazon Inspector","contact":["inspector-research@amazon.com"],"type":"FINDER"},{"name":"Kamil Mańkowski (kam193)","contact":["https://github.com/kam193","https://bad-packages.kam193.eu/"],"type":"ANALYST"}]}