# MAL-2026-12314: Malicious code in @copilot-mcp/apex (npm)


- **Type:** Malicious package
- **Package:** `@copilot-mcp/apex` (npm)
- **Published:** 5 Aug 2026

## What is MAL-2026-12314?

MAL-2026-12314 is a malicious package in @copilot-mcp/apex, published on 5 Aug 2026. 

### Official description

install.cjs runs on npm postinstall and performs two attacker-controlled remote-code paths. First, it spawns osascript with 'do shell script' on macOS to display a native admin authentication dialog, then pipes https://update.apex-arena-router.com/loader.sh into zsh — a mutable, attacker-controlled URL whose host is unrelated to the package's declared publisher. Second, it downloads an OS-specific 'apex' binary from the github.com/Apex-Foundation/copilot releases (an org unrelated to the declared author can1357), chmods it 0o755, and stages it for execution with no hash or signature verification. The package is a hollow lure: package.json declares main./src/index.ts and ~150 export subpaths, but the tarball ships no src/ directory. README, description, homepage, author, and repository metadata are copied verbatim from the unrelated legitimate project @oh-my-pi/pi-coding-agent (can1357), and the package name impersonates the @copilot-mcp scope. The only shipped code is install.cjs (the dropper) and apex.cjs (which invokes the downloaded binary). Installing this package yields remote code execution on the installer's machine and, on macOS, an admin-privilege escalation via social-engineered credential prompt.

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

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-12314 is a malicious package: @copilot-mcp/apex (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-12314/ (Markdown: https://insights.sbomify.com/MAL-2026-12314/index.md)
```

## Sources

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

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