Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessReach dev server on 0.0.0.0:8000
-
DeliverySend unauthenticated request to /__marmite__/ endpoint
-
ExploitInject traversal path in create/clone content
-
ExecutionWrite file outside project directory
-
ImpactOverwrite site content and config
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V6 - Authentication Authentication required for critical functions
MITRE ATT&CK
1 technique across 1 tactic: Initial Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires the target to be running Marmite's optional built-in server via the |
| Impact | The vendor CVSS 4.0 score of 8.7 (AV:N/AC:L/AT:N/PR:N/UI:N with VI:H, all other impacts N) reflects an unauthenticated, low-complexity network write primitive: the /__marmite__/content, /__marmite__/config, and /__marmite__/file/ endpoints of Marmite's built-in server require no authentication (CWE-306), and unsanitized path parameters in handle_create_content/handle_clone_content permit directory traversal to write files outside the project directory. The integrity-only impact rating is appropriate - the flaw is fundamentally a file-write/content-overwrite issue, not data theft or a crash. The critical mitigating context, confirmed by the patch diff, is that this is explicitly a DEVELOPMENT-only preview/editor server: the real-world risk hinges entirely on network exposure. Pre-patch the default bind was 0.0.0.0:8000 (all interfaces), so a developer running --serve on a routable or LAN-reachable host was exposed by default; the fix changes the default to 127.0.0.1:8000 and relabels the server as not-for-production. No EPSS score, CISA KEV listing, or public POC is present in the provided data, so there is no signal of active or automated exploitation - this is a high-CVSS finding whose practical risk is bounded by the requirement that a non-production dev server be network-reachable. Because affected users are developers rather than production servers, treat this as medium priority: patch or restrict binding, but it is not a mass-exploitation-class internet-facing flaw. |
| Exploit ScenarioDerived | A developer runs |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 29, 2026
Unauthenticated content and configuration tampering in Marmite's optional built-in development server (all versions through 0.4.2) lets any network-reachable attacker create, modify, or overwrite site content and configuration by posting to the /__marmite__/content, /__marmite__/config, and /__marmite__/file/ endpoints, with no credentials or user interaction required. The same handlers pass unsanitized path parameters from handle_create_content and handle_clone_content into filesystem writes, so an attacker can traverse out of the project directory and drop or clobber files elsewhere on the host. Exploitation requires the target to be running --serve and reachable over the network - pre-0.4.3 the server bound to 0.0.0.0:8000 by default, and production static sites served by Nginx or Apache are unaffected; no public exploit code was identified at time of analysis, and the vendor released 0.4.3 to fix the issue (loopback-by-default binding plus a documented development-only posture).
RemediationAI
Upgrade to Marmite 0.4.3 or later - the vendor-released patch is published as commit 303a0bf2fff4302f4164c0c39932fdffc6683ad4 and documented in the upstream issue https://github.com/rochacbruno/marmite/issues/554; 0.4.3 changes the built-in server's default bind to 127.0.0.1:8000 and its port-conflict fallback to preserve the requested interface rather than binding 0.0.0.0, which removes network reachability by default. If upgrading is not immediately possible, do not run --serve on any host with a routable or untrusted network path: on 0.4.2 and earlier the default is 0.0.0.0:8000, so explicitly pass --bind 127.0.0.1:8000 to force loopback-only exposure (trade-off: previews are no longer shareable with colleagues on the LAN) and note that loopback binding does not protect against other local users on a shared or multi-tenant host. Alternatively, block or firewall TCP port 8000 so only trusted administrative networks can reach it, or terminate access behind a reverse proxy that enforces authentication - both add operational complexity and, if misconfigured, can still leave the unauthenticated API reachable. The cleanest compensating control for production use is to stop running the editor server entirely and serve only the generated static output via Nginx or Apache, which eliminates the vulnerable code path with no functional loss for published sites; the VulnCheck advisory at https://www.vulncheck.com/advisories/marmite-through-0.4.2-unauthenticated-api-access-via-development-server can be used for tracking and detection guidance.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Marmite (rochacbruno/marmite) is a Rust static site generator whose optional --serve mode spins up a built-in preview and in-browser editor HTTP server. The root cause class is CWE-306, Missing Authentication for Critical Function: the editor API surface under the /__marmite__/ prefix - /__marmite__/content, /__marmite__/config, and /__marmite__/file/ - was exposed with no authentication or authorization check at all, so any client that could reach the port could invoke content and configuration mutation routines. Compounding this, the handle_create_content and handle_clone_content handlers in src/content.rs (see the referenced source lines 1064-1075 and 1300-1322, and src/server.rs 455-475) passed attacker-controlled path parameters into file writes without sanitization, enabling classic directory traversal that escapes the project root. The affected CPE is cpe:2.3:a:rochacbruno:marmite:*:*:*:*:*:*:*:* (wildcard, i.e., all releases through 0.4.2). The 0.4.3 fix (commit 303a0bf2fff4302f4164c0c39932fdffc6683ad4) re-labels the server as development-only in the CLI and docs, changes the default bind from 0.0.0.0:8000 to 127.0.0.1:8000, and replaces the all-interface fallback address with a same-interface OS-assigned port, so that a port conflict no longer silently widens exposure to 0.0.0.0.
Know when Marmite gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N
Unauthenticated network endpoints (PR:N/AV:N/AC:L) allow arbitrary file write/overwrite via traversal (I:H); no confidentiality or availability impact is established, so C:N/A:N.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
Marmite through 0.4.2 contains missing authentication in the development server endpoints /__marmite__/content, /__marmite__/config, and /__marmite__/file/, allowing unauthenticated attackers to create, modify, and overwrite site content and configuration. Attackers can exploit unsanitized path parameters in handle_create_content and handle_clone_content to write files outside the project directory via directory traversal.
Executive ViewAI
Marmite's optional built-in development server, in all versions through 0.4.2, permits any party able to reach it over the network to create, alter, or overwrite website content and configuration, and to write files outside the project directory onto the host. Exposure is limited to teams that run the server with the --serve option, which previously listened on all network interfaces by default, so developer workstations and staging hosts are the primary concern rather than production static sites behind Nginx or Apache. Leadership should care because an attacker who reaches an exposed development server can corrupt published material and plant files on the underlying system, undermining both content integrity and host trust.
Apply vendor patch.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
Path traversal exploits occur when applications use user-controlled input to construct file system paths without proper validation.
EUVD-2026-89111
GHSA-j4pw-7rqh-x2mj
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB