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.
Published: 2026-08-04
Score: 7.1 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The vulnerability resides in marimo versions prior to 0.23.15. It permits a notebook author to embed a malicious base_url within the PEP‑723 inline script metadata. Because the sanitize_pyproject_dict function fails to properly sanitize this field, the attacker-controlled value is applied with higher priority than the operator's own configuration. When an operator opens the notebook and initiates an AI request, marimo resolves the base_url from the notebook, falls back to the operator's OPENAI_API_KEY environment variable for authentication, and inadvertently transmits that key to the attacker‑controlled endpoint. As a result, the operator’s API key is exfiltrated without requiring any cell execution or additional interaction, exposing the operator to full credential compromise.

Affected Systems

The impacted product is marimo produced by the marimo‑team. All releases earlier than 0.23.15 are affected.

Risk and Exploitability

The CVSS score of 7.1 indicates high severity. EPSS information is not available, but the attack is straightforward: an operator must merely open a malicious notebook file, which does not require execution of code. The vulnerability is not listed in the CISA KEV catalog. Consequently, the exploitation likelihood is significant in environments where untrusted notebooks can be opened or where social engineering could lead operators to open such notebooks.

Generated by OpenCVE AI on August 4, 2026 at 19:46 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade marimo to 0.23.15 or later, which eliminates the injection flaw.
  • Enforce strict validation of notebook metadata so that base_url values originate only from trusted, vetted notebooks and reject any arbitrary URLs.
  • Minimize and regularly rotate operator API keys, and consider using short‑lived or scoped tokens rather than long‑lived environment variables.

Generated by OpenCVE AI on August 4, 2026 at 19:46 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Tue, 04 Aug 2026 17:15:00 +0000

Type Values Removed Values Added
First Time appeared Marimo-team
Marimo-team marimo
Vendors & Products Marimo-team
Marimo-team marimo

Tue, 04 Aug 2026 16:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Tue, 04 Aug 2026 15:00:00 +0000

Type Values Removed Values Added
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.
Title marimo < 0.23.15 API Key Exfiltration via Malicious Notebook PEP-723 Metadata
Weaknesses CWE-345
References
Metrics cvssV3_1

{'score': 6.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N'}

cvssV4_0

{'score': 7.1, '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'}


Subscriptions

Marimo-team Marimo
cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-08-04T15:05:08.409Z

Reserved: 2026-07-29T21:07:39.203Z

Link: CVE-2026-67618

cve-icon Vulnrichment

Updated: 2026-08-04T15:04:50.856Z

cve-icon NVD

Status : Received

Published: 2026-08-04T15:16:41.293

Modified: 2026-08-04T16:16:27.920

Link: CVE-2026-67618

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-04T20:00:05Z

Weaknesses
  • CWE-345

    Insufficient Verification of Data Authenticity