basekcrates.io
Advisory published Updated
basek is a confirmed malicious crates.io package (MAL-2026-19200) that steals credentials and exfiltrates sensitive data (malicious version 0.1.0). Do not install it — remove it immediately and rotate any exposed credentials.
Malicious code in basek (crates.io)
What this malware does
basek 0.1.0 is a Windows keylogger shipped as a Rust library. The exposed get_data() routine polls Windows key states for alphanumeric, function, and special keys and batches captured keystrokes together with the local username. The batches are POSTed to the Telegram Bot API at api.telegram.org/bot<token>/sendMessage using a bot token stored as a byte array XORed with 0xAA and reassembled at runtime via the ut! macro, with hardcoded chat_id 7304091279; a secondary exfiltration endpoint https://keylogger.nullsect0r.tech/log is also configured. The crate installs itself for persistence: ensure_installed() copies the host binary to %LOCALAPPDATA%\WindowsSystemUtility\WinSysUtils.exe, writes an HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run value named 'WinSysUtils' for boot persistence, spawns a watchdog clone under a random 12-digit filename to respawn the keylogger, and schedules a cmd.exe timeout+del sequence to self-delete the original. A 30-second initial sleep, a 20-second warmup during which keystrokes are observed but not logged, and randomized polling jitter are used to evade sandbox and behavioral analysis. The crate description's 'educational cybersecurity project' framing is contradicted by the XOR-obfuscated exfiltration destination, hardcoded attacker chat_id, Run-key persistence, watchdog respawn, and self-delete logic.
Malicious versions
Indicators of compromise (SHA-256)
Detection & response playbook
Credential / info stealerFind it
Search your lockfiles and build artifacts for basek (version 0.1.0).
If you installed it — respond
basek is built to steal secrets, so assume every credential the build or runtime could read is compromised. Remove it from your project and lockfile, then rotate ALL exposed secrets — npm/registry tokens, cloud keys, CI/CD secrets, SSH keys, and any .env values — from a known-clean machine. Audit logs for unauthorized use of those credentials.
Did it already run?
If basek was installed, its post-install payload may already have run. Removing the package does not undo that — check outbound connections and credential use from the install window onward.
Frequently asked questions
Campaign
References
Credits
- Amazon Inspector · finder
Detect & block this
O3 blocks basek-class packages before install and in CI — and if it already ran, its runtime egress monitoring catches the credential exfiltration and severs the channel.