MAL-2026-14296 Malicious code in gfff5 (npm)
Malicious package
Published
MAL-2026-14296 is a malicious package: gfff5 (npm). 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-14296/ (Markdown: https://insights.sbomify.com/MAL-2026-14296/index.md)
- Package
- gfff5
- Registry
- npm
What is MAL-2026-14296?
MAL-2026-14296 is a malicious package in gfff5, published on 19 Aug 2026.
Official description
gfff5 advertises itself as a 'System binary configuration tool' but its actual behavior is covert surveillance. When the CLI is invoked, index.js silently installs Python 3.12 on Windows (via winget, or by downloading the python.org installer to %TEMP% and running it with
/quiet InstallAllUsers=0 PrependPath=1), then pip-installs the libraries required by a bundled pointer.py. pointer.py registers global low-level keyboard hooks via the keyboard module (including a raw mash_hook), captures screenshots with mss / ImageGrab, reads clipboard contents via pyperclip, walks other application windows' UI trees with uiautomation.WalkControl, and POSTs the collected text and images to the hardcoded author endpoint https://iq-sec.vercel.app/api. Stealth features (blank window titles, transparent overlay, a panic_exit hotkey, and source comments labeling the installer 'GHOST INSTALLER — No UI, No Admin Popup') confirm the behavior is intentionally hidden from the user and unrelated to the package's declared purpose.What should I do about MAL-2026-14296?
Remove the package from your dependencies and lockfiles, then rotate any secrets on machines where it was installed.