{"answers":{"affected":"1 open source package ship an affected version, including @bananacool467/ui-tools.","exploited":"There is no known exploitation of MAL-2026-13416 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-13416 is a malicious package in @bananacool467/ui-tools, published on 6 Aug 2026."},"fix_prompt":"MAL-2026-13416 is a malicious package: @bananacool467/ui-tools (npm). 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-13416/ (Markdown: https://insights.sbomify.com/MAL-2026-13416/index.md)","id":"MAL-2026-13416","markdown":"https://insights.sbomify.com/MAL-2026-13416/index.md","name":"MAL-2026-13416","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 advertises itself as a UI-components library (README compares it to MUI), but its main export surface includes `useTerminal`, a server-side middleware that stands up a WebSocketServer (default path `/terminal-stream`) and, on every incoming WS message, spawns an interactive bash/powershell PTY via `pty.spawn` with the server process's own environment (`{...process.env, TERM: 'xterm-256color'}`) and cwd set to the user's home directory. Bytes received from the WebSocket are written directly into the PTY (`session.ptyProcess.write(parsed.data)`, with a fallback that writes raw message bytes), and PTY output is streamed back to the socket. No authentication, origin check, or handshake token gates the connection. `dist/terminal.js` ships the matching browser client (exported as `Terminal`) that connects to that same WebSocket and pipes keystrokes as `{type:'input', data:...}`, so the package ships both ends of a remote-shell channel. A consumer who mounts the exported hook — expecting a UI helper — exposes a full unauthenticated interactive shell on their server, executing as the server process. The mismatch between the marketed purpose (UI kit) and the shipped capability (network-driven RCE) is the shape of a backdoor delivered under a benign cover story.","ecosystems":["npm"],"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 @bananacool467/ui-tools (npm)","id":"MAL-2026-13416","indexable":true,"kev":null,"kind":"malicious","links":{"ecosystem":"npm","product":null,"products":[],"type":null,"year":"2026"},"n_packages":1,"n_references":null,"packages":[{"ecosystem":"npm","fixed":[],"introduced":[],"last_affected":[],"package":"@bananacool467/ui-tools","purl":"pkg:npm/%40bananacool467/ui-tools","source":"MAL-2026-13416"}],"products":null,"published":"2026-08-06","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-13416/"}