Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessOperator runs Lektor admin server locally
-
DeliveryLure operator to malicious web page
-
ExploitBrowser auto-sends forged cross-origin requests
-
ExecutionHit unprotected admin API endpoints
-
ImpactWrite files, delete pages, force publish
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V3 - Web Frontend Security Anti-CSRF tokens, SameSite cookies
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 Lektor admin/edit server (the admin API blueprint, e.g. started via |
| Impact | This is a CWE-352 CSRF flaw in Lektor's admin API, scored CVSS 4.0 7.0 (High). The vector (AV:N/AC:L/AT:N/PR:N/UI:A) is internally consistent with the description: the attack is browser-delivered (network), trivially reliable (low complexity), needs no authentication because the Lektor admin API itself ships with no CSRF token, Origin/Referer, CORS, or Host checks (PR:N), but does require an active victim - the operator must visit a malicious page while their admin server is running (UI:A). Impact is integrity- and availability-focused (VI:H/VA:H via arbitrary file write, page deletion, build-output wipe, and forced publish) with no direct confidentiality loss (VC:N) unless the attacker additionally pulls off DNS rebinding to reach read endpoints - a notably harder, multi-step precondition that should not be treated as baseline. The practical risk is bounded by deployment reality: Lektor's admin/edit server is typically a localhost development interface, not an internet-exposed production service, so a 'pure network' reading overstates reach - exploitation realistically targets a developer/operator's own machine via a drive-by page (UI:A is the real gating factor). No EPSS score and no KEV listing were provided, so there is no evidence of widespread or active exploitation; a public gist referenced in the advisory appears to be proof-of-concept material. Net: a legitimately exploitable, well-documented CSRF against an unauthenticated admin surface, but one whose real-world blast radius is limited by low product prevalence and the requirement to trick an operator while their local admin server is live. |
| Exploit ScenarioDerived | A developer is running the Lektor admin/edit server locally (e.g. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 01, 2026
Cross-site request forgery in the Lektor admin API lets unauthenticated remote attackers perform state-changing actions - writing arbitrary files via newattachment, deleting pages via deleterecord, wiping build output via clean/build, and triggering deployment via publish - when an operator visits a malicious web page while the admin server is running. The flaw affects Lektor 3.3.14 and 3.4.0b15 and stems from the complete absence of CSRF tokens, Origin/Referer validation, CORS configuration, or Host allowlisting; read endpoints can additionally be reached via DNS rebinding to disclose data. No public exploit code or confirmed active exploitation was identified at time of analysis.
RemediationAI
No vendor-released patch was identified at time of analysis, so operators must rely on compensating controls until an update is published. Stop the admin/edit server (lektor server) whenever it is not actively needed and avoid browsing untrusted web pages in the same browser profile while it is running, since exploitation requires the operator's browser to reach the live server. Where the admin server must remain available, bind it strictly to 127.0.0.1, place it behind a reverse proxy that rejects state-changing requests lacking a same-origin Origin/Referer header and enforces a strict Host allowlist, and disable cross-origin reads - recognizing that these proxy rules can break legitimate DNS-name or multi-host access (trade-off), and that they reduce but do not eliminate DNS-rebinding risk. Serving built output with lektor build plus a static file server avoids exposing the admin API entirely and is the most robust interim mitigation; monitor https://gist.github.com/mansurmavlankulov/c7683e3204e84892e442b0196585d5bb and https://www.vulncheck.com/advisories/lektor-csrf-via-admin-api-endpoints for updated fix 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
Lektor is a Python-based static site generator whose editing workflow launches an admin/edit server (commonly via lektor server) implemented as a Flask blueprint exposing the newattachment, deleterecord, build, clean, and publish endpoints. CWE-352 (Cross-Site Request Forgery) applies because these endpoints accept state-changing requests without verifying a CSRF token, Origin/Referer header, CORS policy, or Host allowlist, so a browser request triggered from an attacker-controlled page carries the site operator's implicit ambient authority against the locally running server. The CVSS 4.0 vector AV:N/PR:N/UI:A with VC:N, VI:H, VA:H reflects unauthenticated network reachability that depends on victim interaction, high integrity and availability impact, and no confidentiality impact except through the separately required DNS-rebinding path to read endpoints. The CPE cpe:2.3:a:lektor:lektor:*:*:*:*:*:*:*:* indicates the issue is tracked against the Lektor product generally, while the description narrows confirmed vulnerable builds to 3.3.14 and 3.4.0b15.
Know when Lektor 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:A/VC:N/VI:H/VA:H/SC:N/SI:N/SA:N
Unauthenticated admin API with no CSRF protection (PR:N, AC:L) but needs the operator to visit a malicious page (UI:R); grants arbitrary file write/delete (I:H) and build-output wipe (A:H), with no direct confidentiality absent DNS rebinding (C:N).
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
Lektor 3.3.14 and 3.4.0b15 contains a cross-site request forgery vulnerability in the admin API blueprint that allows unauthenticated attackers to perform state-changing actions by sending cross-origin requests without CSRF tokens, Origin/Referer validation, CORS configuration, or Host allowlisting. Attackers can exploit the newattachment, deleterecord, build, clean, and publish endpoints from a malicious web page to write arbitrary files, delete pages, wipe build output, trigger deployment publication, and via DNS rebinding reach read endpoints to disclose data.
Executive ViewAI
Lektor, a static site generator whose built-in admin server is used by web publishing teams, carries a cross-site request forgery flaw (CVE-2026-104059) that lets a malicious web page quietly instruct a running admin server to overwrite project files, delete content, wipe build output, or trigger a live deployment. Every team running Lektor 3.3.14 or 3.4.0b15 on a developer or publisher workstation is exposed whenever that admin server is left running, and no vendor patch is available today. Because the abuse results in silent content corruption or unauthorized publishing, leadership should treat this as a content-integrity and release-pipeline risk rather than a routine development issue.
No vendor-released patch identified at time of analysis. Interim mitigations: shut down the Lektor admin server when not in use, bind it to localhost only, block admin-port access from other networks and VPNs, keep admin sessions in a dedicated browser profile or isolated workstation, back up and monitor content and build directories for unauthorized changes, and restrict deployment credentials to least privilege.
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
Cross-Site Request Forgery exploits the automatic credential inclusion behavior of web browsers.
EUVD-2026-91007
GHSA-76hh-mx5x-4xrx
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB