MAL-2026-17889Malicious code in proxyrobika (PyPI)
| Ecosystem | Package | Version |
|---|---|---|
| PyPI | proxyrobika | 0.1.0 |
{"schema_version":"1.7.4","id":"MAL-2026-17889","published":"2026-10-15T20:33:51Z","modified":"2026-10-26T18:58:24.333020316Z","summary":"Malicious code in proxyrobika (PyPI)","details":"\n---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: amazon-inspector (5242a5c1d50ffd677c3b9b57e28a86baeb0179c10feef81380ef656eecf44206)\nThe package exposes a single public function `starts()` that walks `/storage/emulated/0/` (the Android primary user-storage root used by Pydroid/Termux-like Python environments), collects every `.json`, `.py`, `.pyrubi`, and `.txt` file into ZIP archives, and uploads each archive via `requests.post` to `https://tapi.bale.ai/bot<TOKEN>/sendDocument` with a hardcoded chat_id of `5263487757`. The Bale Messenger bot token is hardcoded in source (with an environment-variable fallback referencing the same literal). The destination, bot token, and chat_id are all author-controlled and not caller-configurable; the README is empty and the code uses single-letter identifiers to obscure behavior. Calling the only documented API therefore ships the caller's local source files, configuration, and Rubika scripts to a mailbox controlled by the package author.\n\n## Source: kam193 (ca9520dcc3936b679b577bee42392ecb6ee65cd658c4858d325de5c738a7a200)\nThe package contains code for automated files exfiltration.\n\n\n---\n\nCategory: MALICIOUS - The campaign has clearly malicious intent, like infostealers.\n\n\nCampaign: 2026-10-proxyrubika\n\n\nReasons (based on the campaign):\n\n\n - files-exfiltration\n\n\n - target:android\n","affected":[{"package":{"name":"proxyrobika","ecosystem":"PyPI"},"versions":["0.1.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":[{"path":"proxyrobika/starts.py","sha256":"26f21b68ceadaca49e0a5e607ea2d927baa46dfb6479beaa9472237abb6dc5c8","tlsh":"e931114628042f70d2c3823e4c559854432b7dab7402f925b59d63a44fa6c734f62bcc"}],"package_integrity":[{"filename":"proxyrobika-0.1.0-py3-none-any.whl","hashes":{"blake2b_256":"ed2a2071fc9391b73a463e649d0716c8acb00d43efd92c775b51e4b0c7b9a87f","md5":"95d20601e79afe610dd28ac1b3aa3a60","sha256":"5ec6aea6b174d526ac48e7571f9386c09d0eb1948553472f90e0c8d6d92a9675"}},{"filename":"proxyrobika-0.1.0.tar.gz","hashes":{"blake2b_256":"24ebf1a537badef31ba63a7bbfd961d794b2d95116927af29309683adc92c570","md5":"9a944f5afaf362710d36f34135d8a214","sha256":"e3b4e2a1c29db780aa5ec03be2c72e506e6127fc7ff3ff42e4c7a13171c79c22"}}]}}}],"references":[{"type":"WEB","url":"https://bad-packages.kam193.eu/pypi/package/proxyrobika"},{"type":"PACKAGE","url":"https://pypi.org/project/proxyrobika/0.1.0/"}],"database_specific":{"malicious-packages-origins":[{"id":"pypi/2026-10-proxyrubika/proxyrobika","import_time":"2026-10-15T21:17:33.862884382Z","modified_time":"2026-10-15T20:33:51.355618Z","sha256":"ca9520dcc3936b679b577bee42392ecb6ee65cd658c4858d325de5c738a7a200","source":"kam193","versions":["0.1.0"]},{"id":"IN-MAL-2026-021818","import_time":"2026-10-26T18:56:20.767108756Z","modified_time":"2026-10-26T18:37:18Z","sha256":"5242a5c1d50ffd677c3b9b57e28a86baeb0179c10feef81380ef656eecf44206","source":"amazon-inspector","versions":["0.1.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"}]}数据来源:OpenSSF Malicious Packages · Apache-2.0