# MAL-2026-11418: Malicious code in catalogai (PyPI)


- **Type:** Malicious package
- **Package:** `catalogai` (PyPI)
- **Published:** 31 Jul 2026

## What is MAL-2026-11418?

MAL-2026-11418 is a malicious package in catalogai, published on 31 Jul 2026. 

### Official description

catalogai 0.1.2 presents itself as a semantic-search / AI-catalog library but the shipped modules perform browser credential theft and remote-controlled Chrome extension installation. catalogai/export.py enumerates Chrome, Edge, Brave, Opera, Vivaldi, and Chromium user-data directories across all detected profiles, copies extension Local/Sync settings, Local Storage, and the LastPass extension database into a temp directory, zips the result, computes a hardware fingerprint, and uploads the archive via cognikit.fileops.upload_file_to_public_api. catalogai/extensions.py runs get_extinfo(), which shells out to PowerShell (Get-CimInstance Win32_UserAccount) to capture the current user's Windows SID, gathers installed-browser paths and each profile's Secure Preferences JSON, writes extinfo.json, and uploads it to the same sink. extensions.py also exposes handle_install_extension / handle_grab_extension network-message handlers that download extdata.zip, extract it into each Chrome user-data Extensions directory, terminate running Chrome via taskkill, rewrite Secure Preferences, set the HKCU Chrome policy values DeveloperToolsAvailability=0 and ExtensionDeveloperModeSettings=0 to hide developer-mode UI, and relaunch Chrome with --restore-last-session. The package's __init__ is inert, but the runtime dependency cognikit>=0.1.2 supplies the upload_file_to_public_api, send_message, and get_hardware_fingerprint primitives used by the harmful modules.

In 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. 

IoCs 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.

---

Category: MALICIOUS - The campaign has clearly malicious intent, like infostealers.

Campaign: 2026-07-cognikit

Reasons (based on the campaign):

 - crypto-related

 - The malicious code is intentionally included in a dependency of the package

 - keylogger

 - clipboard-modify

 - exfiltration-browser-data

 - persistence

 - rat

 - The package contains code to execute remote commands (probably limited to a specific set) on the victim's machine.

## What should I do about MAL-2026-11418?

Remove the package from your dependencies and lockfiles, then rotate any secrets on machines where it was installed.

## Fix prompt for AI coding agents

```text
MAL-2026-11418 is a malicious package: catalogai (PyPI). Every version was published to cause harm.

Task:
1. Search this repository's dependency manifests and lockfiles for the package, including transitive dependencies.
2. If it is present, remove it, regenerate the lockfile with the project's package manager, and replace whatever it was used for.
3. List any CI runners, developer machines or containers that installed it, so their secrets can be rotated.
4. If the package is not used anywhere, say so and change nothing.

Reference: https://insights.sbomify.com/MAL-2026-11418/ (Markdown: https://insights.sbomify.com/MAL-2026-11418/index.md)
```

## Sources

- OSV: https://osv.dev/vulnerability/MAL-2026-11418

---
From sbomify Insights: https://insights.sbomify.com/MAL-2026-11418/
Summaries are generated and may contain mistakes; the official description above is the record.
