Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2026-39987 — AI Deep Analysis Summary

Q1What is this vulnerability? (Essence + Consequences)

🚨 **CVE-2026-39987: Critical Access Control Failure** * **Essence:** The `marimo` interactive Python notebook has a gaping hole in its security. * **Flaw:** The terminal WebSocket endpoint (`/terminal/ws`) lacks aut…

Q2Root Cause? (CWE/Flaw)

🛡️ **Root Cause: CWE-306** * **CWE ID:** CWE-306 (Missing Authentication for Critical Function). * **The Flaw:** The `/terminal/ws` endpoint was deployed without proper identity validation. * **Impact:** No token,…

Q3Who is affected? (Versions/Components)

📦 **Affected Targets** * **Vendor:** marimo-team. * **Product:** marimo (Interactive Python Notebook). * **Versions:** All versions **< 0.23.0**. * **Specific Note:** Versions **<= 0.20.4** are explicitly confir…

Q4What can hackers do? (Privileges/Data)

💻 **Attacker Capabilities** * **Privileges:** Full system access via PTY shell. * **Actions:** Execute **any** OS command. * **Data:** Read, write, delete, or exfiltrate server data. * **Scope:** Remote Code Exe…

Q5Is exploitation threshold high? (Auth/Config)

📉 **Exploitation Threshold: LOW** * **Auth Required?** NO. Unauthenticated. * **Config Required?** Minimal. Just need network access to the WebSocket endpoint. * **Difficulty:** Trivial.…

Q6Is there a public Exp? (PoC/Wild Exploitation)

🔍 **Public Exploitation: YES** * **PoC Available:** Yes. * **Source:** ProjectDiscovery Nuclei Templates. * **Status:** Automated scanning tools can detect and exploit this easily. 🧪

Q7How to self-check? (Features/Scanning)

🔎 **Self-Check Steps** * **Check Version:** Is your `marimo` version < 0.23.0? * **Scan:** Use Nuclei with the CVE-2026-39987 template. * **Verify:** Try connecting to `/terminal/ws` without auth tokens.…

Q8Is it fixed officially? (Patch/Mitigation)

✅ **Official Fix: YES** * **Patch Status:** Fixed in version **0.23.0** and above. * **Commit:** See commit `c24d4806398f30be6b12acd6c60d1d7c68cfd12a`. * **Advisory:** GHSA-2679-6mx9-h9xc confirms the fix. 🛠️

Q9What if no patch? (Workaround)

🚧 **Mitigation (If No Patch)** * **Network Isolation:** Block external access to the WebSocket port. * **Reverse Proxy:** Enforce authentication at the Nginx/HAProxy level before reaching `/terminal/ws`. * **Disab…

Q10Is it urgent? (Priority Suggestion)

🔥 **Urgency: CRITICAL** * **Priority:** Patch Immediately. * **Reason:** Unauthenticated RCE is a top-tier threat. * **Action:** Upgrade to `marimo >= 0.23.0` NOW. Do not wait. ⏳