{"id":"MAL-2026-17753","summary":"Malicious code in media-manager5 (PyPI)","details":"\n---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: amazon-inspector (b2598535fc7c58644f4dacb6b83f87a90823b8d1b84bc3357a6b2ae500342ba9)\nThe package advertises itself as a 'silent per-user wallpaper rotator for Windows' but ships wallpaper.py, a command-and-control client that connects to the hardcoded endpoint https://googleforum.pythonanywhere.com. On construction of MediaManager5(), the package writes a runner script to %LOCALAPPDATA%\\MediaManager5\\runner.py and registers a Windows Scheduled Task named 'MediaManager5' with /SC ONLOGON, so the agent is executed via pythonw at every user logon and re-invokes wallpaper.py on a 10-minute loop. The agent registers the host as username@hostname against /api/register and polls /api/client/\u003cid\u003e/poll for commands dispatched through a COMMAND_HANDLERS table that includes an 'exec' handler running arbitrary shell commands via subprocess.run(command, shell=True), plus list/upload/download/delete/rename handlers over arbitrary filesystem paths; handle_download base64-encodes file contents and returns them to the server via /api/client/\u003cid\u003e/result. The wallpaper framing in the package name, README, and docstrings does not match the shipped payload.\n\n## Source: kam193 (cb983aa5b7a424ffd813440bb47cefb9d43ed193c38456dd8acb299aafa3cd56)\nThe package installs a persistent job that allows the attacker for exfiltrating files and executing remote code on the victim's machine.\n\n\n---\n\nCategory: MALICIOUS - The campaign has clearly malicious intent, like infostealers.\n\n\nCampaign: 2026-10-agentaix\n\n\nReasons (based on the campaign):\n\n\n - files-exfiltration\n\n\n - peristence-autorun\n\n\n - The package contains code to execute remote commands (probably limited to a specific set) on the victim's machine.\n\n\n - rat\n\n\n - persistence\n\n\n - Downloads and executes a remote malicious script.\n","modified":"2026-10-15T09:30:03.371750816Z","published":"2026-10-10T08:02:44Z","database_specific":{"iocs":{"urls":["https://raw.githubusercontent.com/anonrider404/pypl/9395c5802b11bc088925d7adf6e2f66b8b0709fd/readme.txt","https://raw.githubusercontent.com/anonrider404/pypl/refs/heads/main/readme.txt","https://github.com/anonrider404/pypl"],"domains":["googleforum.pythonanywhere.com"]},"malicious-packages-origins":[{"id":"pypi/2026-10-agentaix/media-manager5","import_time":"2026-10-10T08:46:18.830726959Z","modified_time":"2026-10-10T08:02:44.659478Z","sha256":"28307627b9e2beadd142ce8e492f406f6ea13bad1ce2cf989b74e81954595e11","source":"kam193","versions":["0.1.0"]},{"versions":["0.1.0"],"id":"IN-MAL-2026-021381","import_time":"2026-10-11T14:18:00.970810796Z","modified_time":"2026-10-11T13:50:48Z","sha256":"b2598535fc7c58644f4dacb6b83f87a90823b8d1b84bc3357a6b2ae500342ba9","source":"amazon-inspector"},{"source":"kam193","versions":["0.1.0"],"id":"pypi/2026-10-agentaix/media-manager5","import_time":"2026-10-15T09:20:03.532932528Z","modified_time":"2026-10-10T08:02:44.659478Z","sha256":"cb983aa5b7a424ffd813440bb47cefb9d43ed193c38456dd8acb299aafa3cd56"}]},"references":[{"type":"WEB","url":"https://bad-packages.kam193.eu/pypi/package/media-manager5"},{"type":"PACKAGE","url":"https://pypi.org/project/media-manager5/0.1.0/"}],"affected":[{"package":{"name":"media-manager5","ecosystem":"PyPI","purl":"pkg:pypi/media-manager5"},"versions":["0.1.0"],"database_specific":{"source":"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/pypi/media-manager5/MAL-2026-17753.json","cwes":[{"description":"The product contains code that appears to be malicious in nature.","name":"Embedded Malicious Code","cweId":"CWE-506"}],"indicators":{"evidence_files":[{"path":"src/media_manager5/wallpaper.py","sha256":"90825fbc81b3e99c88d17aad497d78cb005c393f6ebbd1bda8c63b569e531e4b","tlsh":"91022162dc8e606383b2b50cc424c561f69a5343e6165c17f9fc87ac6f74732e2b16ae"},{"path":"src/media_manager5/manager.py","sha256":"89d22b779f184b43aaf42751ff576a0452bbfeb2944970516d66d593930cd4eb","tlsh":"8441e0198f27cc229a72925e39439843db2786572d7d440676bd41b41f77064c8b8faa"}],"package_integrity":[{"hashes":{"blake2b_256":"0f47a2274825767a6dd676f43b7a0e1a73dd10d79730f7cba658fe0342ca7ef2","md5":"872080577439dea6af2202a5e5d04917","sha256":"4fca8ea37414724d1ef2b4154fa484f8eacb20804a5bf8fbff826dcff4391ebb"},"filename":"media_manager5-0.1.0-py3-none-any.whl"},{"filename":"media_manager5-0.1.0.tar.gz","hashes":{"blake2b_256":"78499f23f83c0f4d322ff644de341b950259a8c61f8060d673de10e777a782b4","md5":"da88033543959db832d91d3c77833aa5","sha256":"625ef78d164a479b59f50ac75f04f4bfc05d93927413f9bd9aff70a5905df0c9"}}]}}}],"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":"REPORTER"}]}