Description
marimo before 0.23.15 contains a configuration injection vulnerability that allows notebook authors to exfiltrate operator API keys by embedding a malicious base_url in PEP-723 inline script metadata, which is merged into session configuration with higher precedence than the operator's own settings due to insufficient sanitization in sanitize_pyproject_dict. When an operator opens the crafted notebook and makes an AI request, marimo resolves the attacker-controlled base_url from the notebook config while falling back to the operator's OPENAI_API_KEY environment variable for authentication, transmitting the API key to the attacker-controlled endpoint without requiring any cell execution.
Severity (CVSS)
| Base score | 7.1 |
|---|---|
| Severity | High |
| Version | CVSS 4.0 |
| Vector | CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N |
| Provided by | CNA |
Weaknesses
- CWE-345 — Insufficient Verification of Data Authenticity
Affected products
| Vendor | Product | Versions |
|---|---|---|
| marimo-team | marimo | 0 to <0.23.15 |
References
- https://github.com/marimo-team/marimo/releases/tag/0.23.15 (release-notes)
- https://github.com/marimo-team/marimo/pull/10281 (issue-tracking)
- https://github.com/marimo-team/marimo/commit/1a21bd71e258438d2511136b5edacc94c08855f4 (patch)
- https://www.vulncheck.com/advisories/marimo-api-key-exfiltration-via-malicious-notebook-pep-723-metadata (third-party-advisory)
Generated from the official CVE List on 05 Aug 2026 07:03 UTC.