{"id":"MAL-2024-11674","summary":"Malicious code in pyprettifier (PyPI)","details":"\n---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: kam193 (52228ec641ddc958a8048619d93a51b762697ab133afc13ec13c01d24b120467)\nThe pyprettifier library has a feature to send out the user home path throuh the logger. It's attached to the __init__ of EmojiConverter class. Other related packages utilize a typosquatting to imitate real packages, and attempts to call the EmojiConverter from pyprettifier, triggering notifying the author about the user's home path.\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: 2024-09-pyprettifier\n\n\nReasons (based on the campaign):\n\n\n - typosquatting\n\n\n - The malicious code is intentionally included in a dependency of the package\n\n\n - action-hidden-in-lib-usage\n\n\n - The package contains code to exfiltrate basic data from the system, like IP or username. It has a limited risk.\n","modified":"2026-03-19T13:00:56.815963Z","published":"2024-09-29T18:01:44Z","database_specific":{"malicious-packages-origins":[{"modified_time":"2024-12-09T06:50:54Z","sha256":"5c174dc35a6eb20ea8baf16c04b2d84a2c43d75f5fece0a3de510fe00bf0d6c2","id":"RLMA-2024-11131","import_time":"2024-12-09T14:38:47.645113508Z","versions":["0.1.0","0.1.1","0.1.2","0.1.3","0.1.4","0.1.5"],"source":"reversing-labs"},{"ranges":[{"events":[{"introduced":"0"}],"type":"ECOSYSTEM"}],"modified_time":"2024-09-29T18:01:44Z","sha256":"d16875f95907e63c0f307b7230d32fb3579b874ab4c9154e8a3457ed410e0938","id":"pypi/2024-09-pyprettifier/pyprettifier","import_time":"2025-12-02T22:30:56.326596309Z","source":"kam193"},{"ranges":[{"events":[{"introduced":"0"}],"type":"ECOSYSTEM"}],"modified_time":"2024-09-29T18:01:44Z","sha256":"52228ec641ddc958a8048619d93a51b762697ab133afc13ec13c01d24b120467","id":"pypi/2024-09-pyprettifier/pyprettifier","import_time":"2025-12-02T23:07:19.516706954Z","source":"kam193"},{"modified_time":"2024-09-29T18:01:44Z","sha256":"990bc01877ca76b4e9c2f8a350d42e9bd46dbdaeb3b5ab8f20d993fe75ad5222","id":"pypi/2024-09-pyprettifier/pyprettifier","import_time":"2025-12-10T21:38:58.627188229Z","versions":["0.1.0","0.1.1","0.1.2","0.1.3","0.1.4"],"source":"kam193"},{"modified_time":"2026-03-18T12:17:35Z","sha256":"4c0a0f1ffe98d5062ab6abf82da051fb7c8a02d6983c4a543181834fd29676f2","id":"RLUA-2026-00643","import_time":"2026-03-19T12:20:16.558930188Z","source":"reversing-labs"}]},"references":[{"type":"WEB","url":"https://bad-packages.kam193.eu/pypi/package/pyprettifier"}],"affected":[{"package":{"name":"pyprettifier","ecosystem":"PyPI","purl":"pkg:pypi/pyprettifier"},"versions":["0.1.0","0.1.1","0.1.2","0.1.3","0.1.4","0.1.5"],"database_specific":{"source":"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/pypi/pyprettifier/MAL-2024-11674.json"}}],"schema_version":"1.7.5","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":"ANALYST"},{"name":"ReversingLabs","contact":["https://www.reversinglabs.com"],"type":"FINDER"}]}