Marimo heeft een Marimo notebook kwetsbaarheid met hoge ernst verholpen. Het probleem maakte het mogelijk dat een aanvaller in een speciaal geconstrueerd notebook een Model Context Protocol (MCP)-commando liet uitvoeren. Cruciaal hierbij: het commando kan al starten als het slachtoffer het notebook opent in edit mode, dus vóórdat de normale notebookcellen hun werk doen.
De kwetsbaarheid is geregistreerd als CVE-2026-75149 en valt onder een categorie die past bij code-injectie. Gebruikers die een getroffen versie gebruiken, wordt aangeraden om door te upgraden naar een versie die buiten de risicoreeks valt.
Wat is er precies mis bij de Marimo notebook kwetsbaarheid?
Volgens de CVE-registratie kan een aanvaller een command laten uitvoeren als een lokaal subprocess. Dat gebeurt wanneer een slachtoffer een boobytrapped notebook opent in edit mode.
De aanval verloopt niet doordat de aanvaller al is ingelogd of geauthenticeerd. Er is wel user interaction nodig: iemand moet het notebook openen. Zodra de gebruiker dat doet, kan het door de aanvaller aangeleverde commando al worden gestart, voordat notebookcellen worden uitgevoerd.
CVSS-score: hoog risico met beperkte drempel
De CNA-record (CVE Numbering Authority) vermeldt een CVSS v4-score van 8.7 en een CVSS v3.1-score van 8.8. Daarbij wordt benadrukt dat er geen authenticatie van de aanvaller vereist is en dat de gebruiker expliciet actie moet ondernemen (het openen in edit mode).
Welke versies zijn getroffen en hoe los je het op?
De kwetsbaarheid beïnvloedt Marimo-versies vóór 0.23.15. Marimo heeft de issue verholpen in versie 0.23.15.
Als je werkt met Marimo notebooks, is dit een signaal om je omgeving up-to-date te houden. Marimo publiceerde de CVE op 19 augustus. De huidige PyPI-release werd later bevestigd als 0.24.0, maar de kern is: zorg dat je niet meer onder de getroffen versiegrens zit.
Hoe kan een notebook MCP-commando’s aanleveren?
Bij deze Marimo notebook kwetsbaarheid gaat het om de manier waarop configuratie uit het notebook-bestand wordt verwerkt. De CVE-informatie beschrijft dat een geconstrueerd notebook een attacker-controlled MCP server command kan aanleveren via notebookconfiguratie.
In de geregistreerde aanvalsketen opent het slachtoffer het notebook in edit mode. Op dat moment kan de opgegeven command worden gelanceerd als subprocess, nog voordat de uitvoering van notebookcellen start.
Deze volgorde is precies waar het risico zit: veel veiligheidsmaatregelen focussen op de runtime van “cellen”, terwijl de kwetsbaarheid aantoont dat er ook gevaren kunnen zitten in voorafgaande stappen rond metadata en configuratieverwerking.
Welke patch is gebruikt: metadata als aanvaller-invoer
Marimo noemt een hardening-aanpak waarbij notebook metadata wordt behandeld als aanvaller-gestuurde input. In plaats van blindelings vertrouwenswaardigheid aan te nemen, filtert de patch configuratie die vanuit het notebook wordt aangeleverd.
Concreet wordt notebook-supplied configuratie doorgestuurd via een allowlist. Daarbij worden verschillende configuratiesecties verwijderd, waaronder:
- ai
- mcp
- completion
- secrets
- server
De MCP regression case in de fix gebruikt een aanvaller-gestuurde URL en controleert dat de relevante mcp-sectie wordt verwijderd. Daarmee wordt voorkomen dat notebookmetadata direct kan bijdragen aan het uitvoeren van commando’s.
Waarom dit belangrijk is voor notebook- en developer workflows
Notebooks worden vaak gedeeld, ingezien en bewerkt door teams. Dat maakt ze aantrekkelijk als drager voor input die buiten de normale codepagina’s om toch invloed kan uitoefenen op gedrag. Deze Marimo notebook kwetsbaarheid laat zien dat de “attack surface” niet alleen in de cellen zit, maar ook in wat de applicatie doet bij het openen in een bepaalde modus.
Als je in jouw workflow veel werkt met externe notebooks, is het verstandig om te kijken naar:
- Updatebeheer voor notebooksoftware en runtime-componenten.
- Restricties op wat er mag gebeuren zodra een notebook wordt geopend (zeker in edit mode).
- Bewustwording bij het openen van bestanden uit onbekende bron, ook wanneer je niet “run”-t.
Daarbij helpt het om je beleid te koppelen aan bredere lessen uit supply-chain en dependency risico’s. Als je bijvoorbeeld eerder aandacht besteedde aan hoe “trusted” packages of bronnen misbruikt kunnen worden, past dit goed in dezelfde denkrichting.
Voor een verwante invalshoek over phishing die draait om misleiding binnen software-ecosystemen, kun je ook lezen over npm-mirrors voor fake CAPTCHA: phishing uitgelegd.
Ook eerder problemen rond Marimo-configuratie
Deze issue staat niet op zichzelf. De broninformatie vermeldt dat CVE-2026-75149 separaat is van een eerder gemelde Marimo-kwetsbaarheid: CVE-2026-39987. Daarbij ging het om een missing authentication validation op de /terminal/ws-endpoint. Requests konden toen leiden tot het verkrijgen van een volledige pseudo-terminal (PTY) shell, waarmee willekeurige commando’s uitgevoerd konden worden. Marimo gaf daarbij 0.23.0 als gepatchte versie.
Daarnaast wordt verwezen naar een andere, losstaande advisory: CVE-2026-67618 (CVSS-score 7.1). In dat geval betrof het eveneens notebookmetadata. Een aanvaller leverde een AI base_url aan via metadata. Door het notebook te openen, kon later een AI-request de endpoint bereiken en daarmee een API-key van de operator uitlekken, zonder dat een notebookcel eerst hoefde te worden uitgevoerd.
Dat patroon—risico’s die ontstaan door metadata die door een applicatie wordt verwerkt—komt terug in zowel CVE-2026-67618 als CVE-2026-75149. Daarom is de huidige hardening-aanpak voor Marimo relevant voor meer dan alleen één specifieke aanval.
Praktische acties voor teams
Wat kun je nu doen? De kern is eenvoudig: upgrade naar minimaal 0.23.15 en bij voorkeur verder naar een nieuwere stabiele release. Daarna kun je processen aanscherpen rond het openen en delen van notebooks.
Een paar praktische stappen:
- Inventariseer welke Marimo-versie iedereen gebruikt (laptop, server, CI-omgeving).
- Voorkom edit mode voor notebooks van onbekende herkomst, als dat organisatorisch kan.
- Werk met duidelijke grenzen voor wie notebooks mag aanleveren en welke bronnen “vertrouwd” zijn.
Door nu te handelen, verklein je de kans op incidenten waarbij malware-achtige acties niet via standaard codepaden plaatsvinden, maar via voorwaardes bij het openen of verwerken van metadata.
Conclusie
De Marimo notebook kwetsbaarheid (CVE-2026-75149) toont aan dat notebooks een risicodrager kunnen zijn, zelfs wanneer je denkt dat alleen het uitvoeren van cellen telt. Door een speciaal notebook kan een aanvaller in edit mode een MCP-commando laten starten als lokaal subprocess, voordat cellen worden uitgevoerd.
Het goede nieuws: Marimo heeft het probleem opgelost in 0.23.15. Voor iedereen die notebooks gebruikt in werkprocessen is de boodschap daarom helder: update snel en behandel notebooks en metadata als mogelijk onbetrouwbare input.
Bron: https://thehackernews.com/2026/08/marimo-notebook-flaw-could-run-mcp.html
