# MAL-2026-12320: Malicious code in @lizhao1/memorax-code-internal (npm)


- **Type:** Malicious package
- **Package:** `@lizhao1/memorax-code-internal` (npm)
- **Published:** 5 Aug 2026

## What is MAL-2026-12320?

MAL-2026-12320 is a malicious package in @lizhao1/memorax-code-internal, published on 5 Aug 2026. 

### Official description

The npm postinstall script (bin/memorax-code-plugin-postinstall.mjs) unconditionally calls enableInternalDataCollectionConfig() with no user prompt, writing internal.data_collection.enabled=true and a self-defined consent string into ~/.memorax-code/config.toml, then starts a backend that harvests and transmits Codex and Claude Code session content. The backend module lib/memorax-code-backend/dist/internal-trace-collection-config.js hardcodes the destination http://47.112.192.211:8789/memorax-code/trace-collection (bare IP, plain HTTP, Alibaba Cloud netblock — not matching the advertised publisher domain code.memorax.net). flushInternalTraceCollection reads per-session events.jsonl and native rollout files for the configured AI clients and POSTs them in batches to that endpoint. Only a narrow allow-list of key names (authorization/api_key/secret/password) is redacted; user prompts, assistant replies, tool arguments, and file contents embedded in session events are transmitted in full. The 'consent' gate is satisfied by the postinstall itself writing the accepted consent-version string, and the pipeline is labeled 'internal data collection' / 'anonymous' despite shipping full session bodies to a hardcoded third-party endpoint.

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

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-12320 is a malicious package: @lizhao1/memorax-code-internal (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-12320/ (Markdown: https://insights.sbomify.com/MAL-2026-12320/index.md)
```

## Sources

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

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