mal-2026-2837
Vulnerability from ossf_malicious_packages
-= Per source details. Do not edit below this line.=-
Source: kam193 (3e8770458eab636335241e359b6cee149cc00640fb2418b4462c89ec88accc93)
During import, the code downloads and starts a malicious package hosted on GitHub. It then first ensures persistency e.g., through the autostart registry key. Then, based on the encrypted config, an exfiltration demon is started. It registeres the instance in the C2 server and starts searching the file system looking for files matching given filename patterns and then monitoring changes. Discovered files are exfiltrated to hardcoded remote target. The PyPI packages are used as dependencies in newly-created crypto-related repositories on GitHub.
Category: MALICIOUS - The campaign has clearly malicious intent, like infostealers.
Campaign: 2026-04-genosys
Reasons (based on the campaign):
-
files-exfiltration
-
peristence-autorun
-
obfuscation
-
The malicious code is intentionally included in a dependency of the package
-
exfiltration-credentials
-
persistence
-
crypto-related
{
"affected": [
{
"package": {
"ecosystem": "PyPI",
"name": "solanakit"
},
"versions": [
"1.0.0",
"1.0.1"
]
}
],
"credits": [
{
"contact": [
"https://github.com/kam193",
"https://bad-packages.kam193.eu/"
],
"name": "Kamil Ma\u0144kowski (kam193)",
"type": "REPORTER"
}
],
"database_specific": {
"iocs": {
"ips": [
"161.97.81.147"
],
"urls": [
"https://161.97.81.147:8080"
]
},
"malicious-packages-origins": [
{
"id": "pypi/2026-04-genosys/solanakit",
"import_time": "2026-04-17T08:40:36.020823817Z",
"modified_time": "2026-04-17T08:06:00.245908Z",
"sha256": "3e8770458eab636335241e359b6cee149cc00640fb2418b4462c89ec88accc93",
"source": "kam193",
"versions": [
"1.0.0",
"1.0.1"
]
}
]
},
"details": "\n---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: kam193 (3e8770458eab636335241e359b6cee149cc00640fb2418b4462c89ec88accc93)\nDuring import, the code downloads and starts a malicious package hosted on GitHub. It then first ensures persistency e.g., through the autostart registry key. Then, based on the encrypted config, an exfiltration demon is started. It registeres the instance in the C2 server and starts searching the file system looking for files matching given filename patterns and then monitoring changes. Discovered files are exfiltrated to hardcoded remote target.\nThe PyPI packages are used as dependencies in newly-created crypto-related repositories on GitHub.\n\n\n---\n\nCategory: MALICIOUS - The campaign has clearly malicious intent, like infostealers.\n\n\nCampaign: 2026-04-genosys\n\n\nReasons (based on the campaign):\n\n\n - files-exfiltration\n\n\n - peristence-autorun\n\n\n - obfuscation\n\n\n - The malicious code is intentionally included in a dependency of the package\n\n\n - exfiltration-credentials\n\n\n - persistence\n\n\n - crypto-related\n",
"id": "MAL-2026-2837",
"modified": "2026-04-17T08:06:00Z",
"published": "2026-04-17T08:06:00Z",
"references": [
{
"type": "WEB",
"url": "https://github.com/genoshide/polymarket-arbitrage-trading-bot/blob/adfcde4ac6da19084e0714af3acd3e93cd46b5bc/requirements.txt#L20"
},
{
"type": "WEB",
"url": "https://github.com/genoshide/wallet-mcp/blob/0fad37d8d1bd6520be576128ebc9009a6b5903f0/pyproject.toml#L23"
},
{
"type": "WEB",
"url": "https://github.com/genoshide/opensea-auto-mint-bot/blob/27bc619b4d3beffa214f3e034b1b00b0487cf947/requirements.txt#L3"
},
{
"type": "WEB",
"url": "https://github.com/genoshide/infinity-router/commit/34f30285acafe21b17777587cf38dc6553a23e66"
},
{
"type": "WEB",
"url": "https://github.com/genoshide/solana-account-closer-bot/commit/73750693ec625298be478ce820ef82c844e47c89"
},
{
"type": "WEB",
"url": "https://bad-packages.kam193.eu/pypi/package/solanakit"
}
],
"schema_version": "1.7.4",
"summary": "Malicious code in solanakit (PyPI)"
}
Sightings
| Author | Source | Type | Date |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.