{"schema_version":"1.7.5","id":"MAL-2025-191898","published":"2025-11-27T07:11:52Z","modified":"2026-03-19T12:57:27.847994Z","summary":"Malicious code in threading-helper (PyPI)","details":"\n---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: kam193 (74a87b74245d0639ace987a197363e4396c334434721b81ce7d1c4d7010edb55)\nInstalling the package or importing the module exfiltrates basic information about the host, and the package has no other purpose.\n\n\n---\n\nCategory: PROBABLY_PENTEST - Packages looking like typical pentest packages, but also anything that looks like testing, exploring pre-prepared kits, research & co, with clearly low-harm possibilities.\n\n\nCampaign: GENERIC-standard-pypi-install-pentest\n\n\nReasons (based on the campaign):\n\n\n - The package contains code to exfiltrate basic data from the system, like IP or username. It has a limited risk.\n\n\n - The package overrides the install command in setup.py to execute malicious code during installation.\n","affected":[{"package":{"name":"threading-helper","ecosystem":"PyPI","purl":"pkg:pypi/threading-helper"},"versions":["0.0.1"],"database_specific":{"source":"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/pypi/threading-helper/MAL-2025-191898.json"}}],"references":[{"type":"WEB","url":"https://bad-packages.kam193.eu/pypi/package/threading-helper"}],"database_specific":{"malicious-packages-origins":[{"id":"pypi/GENERIC-standard-pypi-install-pentest/threading-helper","import_time":"2025-12-02T22:30:56.457351123Z","modified_time":"2025-11-27T07:11:52.074671Z","sha256":"675f8ef0bd3b020effff5d3dd5a90d4826eb1fdfbebfb8d139cc2fdf49124f16","source":"kam193","versions":["0.0.1"]},{"id":"pypi/GENERIC-standard-pypi-install-pentest/threading-helper","import_time":"2025-12-02T23:07:19.641421121Z","modified_time":"2025-11-27T07:11:52.074671Z","sha256":"74a87b74245d0639ace987a197363e4396c334434721b81ce7d1c4d7010edb55","source":"kam193","versions":["0.0.1"]},{"id":"RLMA-2025-06598","import_time":"2025-12-24T10:07:31.578052941Z","modified_time":"2025-12-23T08:39:57Z","sha256":"4d1a8ab8ba373eb58e273f23c3698ce7166c08cce2197b9d47ea195768efc59b","source":"reversing-labs","versions":["0.0.1"]},{"id":"RLUA-2026-00822","import_time":"2026-03-19T12:20:33.845946887Z","modified_time":"2026-03-18T12:19:29Z","sha256":"5dd440954e9639d291152119292edf76645672fd2be8326fd7480a40ceaf21a6","source":"reversing-labs"}]},"credits":[{"name":"Kamil Mańkowski (kam193)","contact":["https://github.com/kam193","https://bad-packages.kam193.eu/"]},{"name":"Kamil Mańkowski (kam193)","contact":["https://github.com/kam193","https://bad-packages.kam193.eu/"],"type":"REPORTER"},{"name":"ReversingLabs","contact":["https://www.reversinglabs.com"],"type":"FINDER"}]}