/

CVE-2026-102811

Severity:

HIGH RISK

(7.5)

Missing Authentication (CWE-306) in Marmite Dev Server

CVE-2026-102811

Deferred

Vulnerability type

Category:

Missing Authentication

CWE:

CWE-306

Impact:

Unauthorized Content and File Modification

Severity:

HIGH RISK

(7.5)

CVSS version:

3.1

Catch this CVE while code is being written

Detect vulnerable code directly in pull requests, so CVEs are fixed before merge.

Summary

Marmite's development server exposes content, configuration, and file-management endpoints without authentication. An unauthenticated attacker may create, modify, or overwrite site files, and crafted path values may allow writes outside the intended project directory when the server is reachable by an attacker.

Affected context

The vulnerability occurs in Marmite development-server deployments where the affected management endpoints are network-accessible without an authentication control. Risk is higher when the server process has write access to sensitive files or is bound to an interface reachable by untrusted users. Unsanitized path parameters in content-creation and cloning operations may permit directory traversal beyond the project directory.

Exploit preconditions

  • Attack surface: Marmite development-server endpoints, including content, configuration, and file-management paths
  • Required access: Network reachability to the development server; no valid credentials are required when authentication is absent
  • Trigger point: Requests that create, clone, modify, or overwrite content and configuration files
  • Why exploitation is possible: Endpoint access is not restricted by authentication, and path parameters are not sufficiently constrained to the intended project directory

Why this happens

The primary flaw is missing authentication on administrative development-server endpoints, mapping to CWE-306: Missing Authentication for Critical Function. The server permits unauthenticated callers to invoke operations that change site content and configuration.

A related weakness is insufficient path validation. When user-controlled path parameters are used in filesystem operations without canonicalization and containment checks, directory traversal may allow writes outside the expected project boundary. Together, these insecure patterns expose privileged file-management functions to untrusted requests.

Potential impact

  • Unauthenticated attackers may alter or replace published site content
  • Attackers could modify configuration and change application behavior
  • Sensitive or unrelated files may be overwritten outside the project directory
  • The development server or generated site may become unavailable
  • Malicious content could be introduced into downstream publishing or build workflows
  • In some deployments, file modification could contribute to further compromise depending on process permissions and execution paths

General mitigation guidance

Mitigation generally focuses on protecting management endpoints and reducing trust in filesystem paths.

Common defensive patterns include:

  • Requiring strong authentication and authorization for every content, configuration, and file-management operation
  • Binding development servers to trusted interfaces or isolating them from untrusted networks
  • Canonicalizing user-supplied paths and enforcing containment within an approved project directory
  • Rejecting traversal sequences, absolute paths, unexpected encodings, and symbolic-link escapes
  • Using allowlisted operation scopes and safe-by-default file APIs
  • Running the server with a dedicated low-privilege account and minimal filesystem permissions
  • Separating editable source content from sensitive application and deployment files
  • Treating configuration and generated content as protected assets with controlled write policies

How teams detect issues like this

High-level detection can combine code review, runtime monitoring, and policy enforcement.

Useful approaches include:

  • Static analysis for routes that invoke file writes without authentication or authorization checks
  • Searches for filesystem operations that concatenate request parameters into paths
  • Code review of path canonicalization, containment validation, and symlink handling
  • Endpoint inventories that identify development or administrative routes exposed beyond trusted networks
  • Web-server logs monitoring unauthenticated requests to content, configuration, and file-management endpoints
  • File-integrity monitoring for unexpected changes outside the designated project directory
  • CI policies requiring authentication checks and safe path-handling tests for file-writing endpoints
  • Automated security review tools to flag missing access controls and traversal-prone path construction

Sources

SourceLink
github.comgithub.com/rochacbruno/marmite
github.comgithub.com/rochacbruno/marmite/blob/4b2ddbd7595233b2e1d0086e18490fec49705098/src/content.rs#L1064-L1075
github.comgithub.com/rochacbruno/marmite/blob/4b2ddbd7595233b2e1d0086e18490fec49705098/src/content.rs#L1300-L1322
github.comgithub.com/rochacbruno/marmite/blob/4b2ddbd7595233b2e1d0086e18490fec49705098/src/server.rs#L455-L475
github.comgithub.com/rochacbruno/marmite/commit/303a0bf2fff4302f4164c0c39932fdffc6683ad4
github.comgithub.com/rochacbruno/marmite/issues/554
vulncheck.comvulncheck.com/advisories/marmite-through-0.4.2-unauthenticated-api-access-via-development-server

Frequently asked

questions

It may be remotely exploitable when the Marmite development server is reachable over a network and its management endpoints are exposed without authentication. Local-only deployments have a narrower attack surface.

No application credentials are required when the affected endpoints are accessible without authentication. The attacker must be able to send requests to the server.

Protect every management endpoint with authentication and authorization, then validate and constrain all filesystem paths to an approved project directory using canonical containment checks.

Keep development services isolated, apply least-privilege filesystem permissions, review all file-writing routes, and enforce automated tests and policies for access control and path traversal defenses.

Find out what's already
exploitable in your codebase.