Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
ReconAuthenticate as low-privilege Typemill content editor
-
DeliveryAccess page metadata settings
-
ExploitInject malicious HTML attributes into og:title or og:description
-
InstallPayload persisted in flat-file CMS storage
-
C2Victim loads affected page in browser
-
ExecuteDOM interaction triggers injected event handler
-
ImpactScript executes in victim browser context
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Execution The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires a valid Typemill account with permission to edit page metadata - specifically the og:title and og:description fields. This corresponds to PR:L (low-privilege authenticated access) in the CVSS vector; anonymous or unauthenticated access is explicitly insufficient. Beyond account access, a separate victim must load the affected page in their browser (UI:R), making this a two-party stored XSS rather than a self-executing attack. The description further notes that XSS execution depends on 'certain browser or DOM interaction scenarios,' implying payload trigger is not guaranteed across all browsers or rendering environments. Exploitation is limited by: authentication requirement for the injecting party, metadata editing permission scope within Typemill's role model, and browser-dependent execution conditions for the stored payload. |
| Impact | The CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:N) scores 4.6, accurately reflecting a network-reachable attack surface constrained by two significant limiting factors: the attacker must hold a low-privilege authenticated account (PR:L), and a victim must load the affected page (UI:R). Scope is unchanged (S:U), and impact is limited to partial confidentiality and integrity - no availability risk. No EPSS score was provided in the source data, preventing a probabilistic exploitation forecast. Active exploitation is not confirmed: this CVE does not appear in CISA KEV and no public exploit code was referenced. The stored nature of the injection distinguishes it from lower-risk reflected variants - a single successful injection persists and affects all subsequent visitors, meaning even organizations managing modest Typemill deployments should prioritize patching over deferral. The PR:L prerequisite is the primary exploitation barrier; in multi-author Typemill sites where content editors are loosely managed, this barrier is reduced. |
| Exploit ScenarioDerived | An authenticated Typemill content editor with metadata editing rights navigates to a page's settings and injects a malicious HTML attribute (such as an event handler) into the og:title or og:description field, which Typemill writes to persistent storage without encoding. When any site visitor subsequently loads that page and triggers the DOM condition (e.g., hovering over or interacting with the meta-tag-rendered element), the injected script executes in their browser, potentially harvesting session tokens or performing actions under their identity. No public exploit code has been identified at time of analysis. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 21, 2026
Stored HTML attribute injection in Typemill versions prior to 2.23.0 allows authenticated content editors to embed arbitrary HTML attributes into generated og:title and og:description meta tags due to absent output encoding. Under applicable browser or DOM interaction conditions, this escalates to stored cross-site scripting (XSS) against any visitor loading the affected page. No public exploit code has been identified and this vulnerability is not listed in CISA KEV; version 2.23.0 patches the issue and is confirmed by the official release notes.
RemediationAI
Upgrade Typemill to version 2.23.0 or later. The release notes for v2.23.0 explicitly confirm a security fix for XSS in page metadata, and the release is available at https://github.com/typemill/typemill/releases/tag/v2.23.0. If an immediate upgrade cannot be performed, restrict metadata editing permissions to a minimal set of trusted administrators, reducing the population of accounts capable of injecting into og:title and og:description fields - note this is a compensating control only and does not remediate the underlying encoding defect. No workarounds eliminating the vulnerability without upgrading have been identified in the available advisory data.
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
Typemill is a flat-file, Markdown-based CMS targeted at documentation-oriented websites. The affected code path handles Open Graph metadata fields (og:title, og:description), which are rendered into HTML meta tag attributes without proper output encoding. CWE-79 (Improper Neutralization of Input During Web Page Generation - Cross-site Scripting) is the root cause class: when user-supplied strings are interpolated into HTML attribute context without escaping, an attacker can close the existing attribute, inject new attributes such as event handlers (e.g., onmouseover, onerror), or otherwise break out of the intended attribute boundary. Because the payload is written to persistent storage (flat files), every subsequent page load delivers the injected content to all visitors - distinguishing this from reflected XSS in severity profile. The CPE string cpe:2.3:a:typemill:typemill:*:*:*:*:*:*:*:* covers all product versions, with the upper boundary implicitly set at 2.23.0 by the advisory.
Know when Typemill 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
AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:N
Network-reachable stored XSS requiring authenticated editor access (PR:L) and victim page load (UI:R); scope unchanged and no availability impact.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2DescriptionCVE.org
Typemill is a flat-file, Markdown-based content management system designed for informational documentation websites. Versions prior to 2.23.0 are vulnerable to stored HTML attribute injection in the page metadata fields (og:title and og:description). An authenticated user with permission to modify page metadata can inject arbitrary HTML attributes into generated <meta> tags due to missing output encoding. Under certain browser or DOM interaction scenarios, this may lead to stored cross-site scripting (XSS). Version 2.23.0 fixes the issue.
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 Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.
Typemill v1.5.3 was discovered to contain an arbitrary file upload vulnerability via the upload function. Rated high sev
Reflected XSS in Typemill's login error page allows unauthenticated attackers to inject malicious scripts by crafting re
Credential brute-forcing against Typemill CMS (versions up to and including 2.25.0) is possible because its primary pass
Arbitrary file read in Typemill before 2.24.0 allows authenticated Author-level users to traverse outside the content di
Persistent XSS in Typemill CMS 2.x enables authenticated users holding theme-configuration access to store malicious Jav
Stored cross-site scripting in the Typemill flat-file CMS through 2.26.0 allows an authenticated user with media/image u
EUVD-2026-64169
NVD
CVE.org
EPSS
Vulnrichment
GitHub
Exploit-DB