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.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| marimo-team | marimo | < 0.23.15 | 0.23.15 |
References
- marimo 0.23.15 Release Notes release-notes
- Pull Request issue-tracking patch
- Patch Commit patch
- https://www.vulncheck.com/advisories/marimo-api-key-exfiltration-via-malicious-notebook-pep-723-metadata third-party-advisory