-= Per source details. Do not edit below this line.=-
Packages silently decrypt content hidden in a dependency and load them as Python extension modules.
In the first wave, those are copies of legitimate aiohttp and aiohappyeyeballs packages. In the second wave, malicious packages created good-looking forks of legitimate rich and pigments packages.
Category: MALICIOUS - The campaign has clearly malicious intent, like infostealers.
Campaign: 2025-10-asynhttp
Reasons (based on the campaign):
typosquatting
exfiltration-generic
obfuscation
clones-real-package
native-extension
{
"malicious-packages-origins": [
{
"modified_time": "2025-12-01T12:54:02Z",
"versions": [
"3.13.1"
],
"sha256": "b61677d7a34093d0a5edbc9eb75b0f7305c4dca9399b309e7e9d2be62f9ed50f",
"id": "RLMA-2025-05585",
"source": "reversing-labs",
"import_time": "2025-12-02T09:09:35.999004688Z"
},
{
"modified_time": "2025-10-23T10:43:42.146523Z",
"versions": [
"3.13.1"
],
"sha256": "045a016b903f7adf7723ae5e0add61cef3cc7156a3b92ecc0ab23b156f5bba79",
"id": "pypi/2025-10-asynhttp/aiohttp-ssl",
"source": "kam193",
"import_time": "2025-12-02T22:30:54.89132018Z"
},
{
"modified_time": "2025-10-23T10:43:42.146523Z",
"versions": [
"3.13.1"
],
"sha256": "afccfa12a7291508291284fab456364a79066f1bca14372f85e1e503a7ba5dc8",
"id": "pypi/2025-10-asynhttp/aiohttp-ssl",
"source": "kam193",
"import_time": "2025-12-02T23:07:17.93526495Z"
},
{
"modified_time": "2025-10-23T10:43:42.146523Z",
"versions": [
"3.13.1"
],
"sha256": "212da09ca68167bc40e86f1c838fe5aeb5a6656da5ecbbdb5d17df01b2c262d8",
"id": "pypi/2025-10-asynhttp/aiohttp-ssl",
"source": "kam193",
"import_time": "2025-12-10T18:45:05.205935379Z"
},
{
"modified_time": "2026-03-18T12:10:48Z",
"sha256": "99f1ac661fd45048029818ec876ec7f69228170ea117ffcaef42fd5838f239ac",
"id": "RLUA-2026-00044",
"source": "reversing-labs",
"import_time": "2026-03-19T12:19:20.867229086Z"
}
]
}