{"answers":{"affected":"1 open source package ship an affected version, including cognikit.","exploited":"There is no known exploitation of MAL-2026-11419 in the wild and no public exploit code.","fix":"Remove the package from your dependencies and lockfiles, then rotate any secrets on machines where it was installed.","what":"MAL-2026-11419 is a malicious package in cognikit, published on 31 Jul 2026."},"fix_prompt":"MAL-2026-11419 is a malicious package: cognikit (PyPI). Every version was published to cause harm.\n\nTask:\n1. Search this repository's dependency manifests and lockfiles for the package, including transitive dependencies.\n2. If it is present, remove it, regenerate the lockfile with the project's package manager, and replace whatever it was used for.\n3. List any CI runners, developer machines or containers that installed it, so their secrets can be rotated.\n4. If the package is not used anywhere, say so and change nothing.\n\nReference: https://insights.sbomify.com/MAL-2026-11419/ (Markdown: https://insights.sbomify.com/MAL-2026-11419/index.md)","id":"MAL-2026-11419","markdown":"https://insights.sbomify.com/MAL-2026-11419/index.md","name":"MAL-2026-11419","record":{"aliases":[],"analysis":null,"analysis_generated_by":null,"assigner":null,"cpe":[],"cvss":{"score":null,"severity":null,"source":null,"vector":null,"version":null},"cwes":[],"description":"The package is published under an 'AI toolkit' cover story (README advertises 'CognitKit: Cognitive building blocks for intelligent AI systems' and a 'from cognitkit import CognitiveEngine' quick start) but ships no AI code. The actual payload is a credential and wallet stealer. Modules enumerate Chrome/Edge/Brave/Chromium/Opera/Vivaldi User Data directories and Local/Sync 'Extension Settings' and Local Storage/leveldb paths, targeting a large hardcoded list of extension IDs for password managers (LastPass, Bitwarden, Dashlane, 1Password, Keeper, RoboForm), 2FA authenticators, and crypto wallets (MetaMask, Phantom, Coin98, Ronin, TronLink, Trust, Solflare, Ledger, Trezor, Exodus, Rabby, and others). All of these identifiers are split-string-obfuscated (e.g., APPDATA = 'Ap' + 'pData'; CHR = 'Chro' + 'me'; LDB = 'level' + 'db'; UDATA = 'Use' + 'r Data'; extension IDs concatenated from fragments) to evade string-matching detection. hardware.py builds a cross-OS hardware fingerprint (wmic csproduct/diskdrive uuid on Windows, ioreg IOPlatformUUID on macOS, /sys/class/dmi/id/product_uuid and /etc/machine-id on Linux), SHA-256s it, and resolves the victim's public IP via api.ipify.org, tagging the enrollment record as 'type: halo'. config.py hardcodes a bare-IP C2 at 45.95.186.237 (HTTP API at http://45.95.186.237:8000 and a raw TCP socket channel on 45.95.186.237:8008). fileops.py POSTs arbitrary local files to /manu_upload/ with machine_id and data_type multipart fields, and download_file_from_server GETs opaque bytes from /manu_download/ with a bearer token, writes them to disk, and on POSIX chmod 0755's the file — a second-stage payload dropper.\n\nIn this campaign, some packages (e.g. cognikit, aiassistcore) are pulled as dependencies and contain the C2 configuration and the malicious functionality, while others (like aichannel) provide fake functionality and silently execute malicious actions from dependencies. The malicious functionality is oriented to replace the copied cryptocurrency wallet addresses with these controlled by the attacker and downloaded from the C2 server, exfiltrating browser data, establishing a remote control over the device, placing malicious extensions in browsers. \n\nIoCs are consistent with those previously attributed to North Korea's \"Contagious Interview\" campaign. The known TTP suggest these packages are used as dependencies in malicious interview assessments or cryptocurrency projects.\n\n---\n\nCategory: MALICIOUS - The campaign has clearly malicious intent, like infostealers.\n\nCampaign: 2026-07-cognikit\n\nReasons (based on the campaign):\n\n - crypto-related\n\n - The malicious code is intentionally included in a dependency of the package\n\n - keylogger\n\n - clipboard-modify\n\n - exfiltration-browser-data\n\n - persistence\n\n - rat\n\n - The package contains code to execute remote commands (probably limited to a specific set) on the victim's machine.","ecosystems":["PyPI"],"exploits":{"exploitdb":null,"first_seen":null,"github_poc":null,"max_poc_stars":null,"metasploit":null,"nuclei":null,"refs":[],"tier":null},"has_fix":false,"headline":"Malicious code in cognikit (PyPI)","id":"MAL-2026-11419","indexable":true,"kev":null,"kind":"malicious","links":{"ecosystem":"PyPI","product":null,"products":[],"type":null,"year":"2026"},"n_packages":1,"n_references":null,"packages":[{"ecosystem":"PyPI","fixed":[],"introduced":[],"last_affected":[],"package":"cognikit","purl":"pkg:pypi/cognikit","source":"MAL-2026-11419"}],"products":null,"published":"2026-07-31","related":[],"sources":[{"class":"attribution","licence":"Apache-2.0","name":"OpenSSF Malicious Packages","prefix":"MAL"}],"ssvc":{"automatable":null,"exploitation":null,"technical_impact":null},"state":null,"updated":null,"vendors":null},"summary":null,"url":"https://insights.sbomify.com/MAL-2026-11419/"}