{"id":"MAL-2026-13488","summary":"Malicious code in idnna (PyPI)","details":"\n---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: amazon-inspector (da6f2ec3b09fbcf061a9f4ffefe1c179983ad8cdc0af705f2218280ade3c1da3)\nThe package publishes under a name that closely resembles the widely-used `idna` package and advertises itself as 'HTTP client utilities', but the only importable module is `djangoo` containing a trivial `hello()` function. setup.py registers a custom `install` cmdclass (`LinuxInstall`) whose post-install step base64-decodes a hidden Python payload stored in `_HOOK_B64` and executes it via `exec(compile(...))`. On Linux, the decoded payload uses `urlretrieve` to download an opaque binary named `something` from https://github.com/totti2188/8gp1Q7iZD3h4VW/releases/download/v1.3A/something — an unrelated personal GitHub account whose repository has no connection to the package's stated purpose — chmods it to 0o755, and spawns it detached via `Popen`. The download destination is not publisher-matched, the fetched artifact is unpinned by hash, and the payload is obfuscated to evade casual review. This fires automatically on `pip install` of the sdist.\n\n## Source: kam193 (c3caa6af02ad3844d721b93e94796fed92506f24517c3b990d741b147eee5acf)\nPackage imitates name of a popula library. During installation, obfuscated code downloads a malicious executable and starts it. It then exfiltrates at least cryptocurrency wallet data, probably more.\n\n\n---\n\nCategory: MALICIOUS - The campaign has clearly malicious intent, like infostealers.\n\n\nCampaign: 2026-08-flasq\n\n\nReasons (based on the campaign):\n\n\n - typosquatting\n\n\n - The package overrides the install command in setup.py to execute malicious code during installation.\n\n\n - exfiltration-generic\n\n\n - Downloads and executes a remote executable.\n\n\n - obfuscation\n\n\n - exfiltration-crypto\n","modified":"2026-08-07T12:35:24.780041272Z","published":"2026-08-07T07:05:56Z","database_specific":{"malicious-packages-origins":[{"id":"pypi/2026-08-flasq/idnna","import_time":"2026-08-07T07:35:19.074850456Z","modified_time":"2026-08-07T07:05:56.025428Z","sha256":"c3caa6af02ad3844d721b93e94796fed92506f24517c3b990d741b147eee5acf","source":"kam193","versions":["0.1.1","0.1.2","0.2.0","0.3.0"]},{"modified_time":"2026-08-07T07:05:56.025428Z","sha256":"9a15a7dcdc8b4d5a392976f6abb8ae4615189125f0c910703a3d96ade5bce5ad","source":"kam193","versions":["0.1.1","0.1.2","0.2.0","0.3.0"],"id":"pypi/2026-08-flasq/idnna","import_time":"2026-08-07T08:57:13.352632455Z"},{"import_time":"2026-08-07T12:23:26.765397561Z","modified_time":"2026-08-07T12:16:04Z","sha256":"23ef36d00422f5968da72dbf01a4f9f6cea7adee00b4454956ba4dea8b13d020","source":"amazon-inspector","versions":["0.1.1"],"id":"IN-MAL-2026-016908"},{"source":"amazon-inspector","versions":["0.2.0"],"id":"IN-MAL-2026-016906","import_time":"2026-08-07T12:23:26.643627946Z","modified_time":"2026-08-07T12:15:47Z","sha256":"557fd8e5f5101a40c97cf36a05feb66d99c597290096922b08d5d3b9797ce4af"},{"source":"amazon-inspector","versions":["0.1.2"],"id":"IN-MAL-2026-016903","import_time":"2026-08-07T12:23:26.513212497Z","modified_time":"2026-08-07T12:15:22Z","sha256":"c844cdd84d197bad25f5616870eb1d728b4ca22ded9ba1b0514a6620c0d31d7d"},{"source":"amazon-inspector","versions":["0.3.0"],"id":"IN-MAL-2026-016907","import_time":"2026-08-07T12:23:26.730670293Z","modified_time":"2026-08-07T12:15:57Z","sha256":"da6f2ec3b09fbcf061a9f4ffefe1c179983ad8cdc0af705f2218280ade3c1da3"}],"iocs":{"ips":["193.70.34.101"],"urls":["https://github.com/totti2188/8gp1Q7iZD3h4VW/releases/download/v1.3A/something"]}},"references":[{"type":"EVIDENCE","url":"https://www.virustotal.com/gui/file/425f5336182e359211b5d751786d2ce1d31a673ea9c82107358a888803742649/detection"},{"type":"WEB","url":"https://bad-packages.kam193.eu/pypi/package/idnna"},{"type":"EVIDENCE","url":"https://tria.ge/260807-fkycrazzg1/behavioral1"},{"type":"PACKAGE","url":"https://pypi.org/project/idnna/0.1.1/"},{"type":"PACKAGE","url":"https://pypi.org/project/idnna/0.2.0/"},{"type":"PACKAGE","url":"https://pypi.org/project/idnna/0.1.2/"},{"type":"PACKAGE","url":"https://pypi.org/project/idnna/0.3.0/"}],"affected":[{"package":{"name":"idnna","ecosystem":"PyPI","purl":"pkg:pypi/idnna"},"versions":["0.1.1","0.1.2","0.2.0","0.3.0"],"database_specific":{"cwes":[{"description":"The product contains code that appears to be malicious in nature.","name":"Embedded Malicious Code","cweId":"CWE-506"},{"name":"Embedded Malicious Code","cweId":"CWE-506","description":"The product contains code that appears to be malicious in nature."},{"name":"Embedded Malicious Code","cweId":"CWE-506","description":"The product contains code that appears to be malicious in nature."},{"description":"The product contains code that appears to be malicious in nature.","name":"Embedded Malicious Code","cweId":"CWE-506"}],"indicators":{"evidence_files":[{"sha256":"1f73bbeef78e8cd5df29ed6ae14b72b10041b327c80d89f04d7db821cead4e6d","tlsh":"d521865b8e2510b06c18c7845843411f162baae1ac2074e4beed33642bcd249ca7f0d7","path":"setup.py"}],"package_integrity":[{"filename":"idnna-0.1.1.tar.gz","hashes":{"md5":"5d403c75dc6bcec98d20110f0b24eea5","sha256":"3813650277e31545307c7c65a240f26e13de959bdd67db854fdc95debeed9eb1","blake2b_256":"27f53dca917dfa8519f1bd08672a9b6b3a82cc047f7ac451ed2a325d77b9181d"}}]},"source":"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/pypi/idnna/MAL-2026-13488.json"}}],"schema_version":"1.8.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"}]}