Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAccess page editor (anonymous by default)
-
DeliveryInject HTML in ```math fenced code block
-
ExploitPayload stored and rendered unescaped
-
ExecutionVictim opens the page
-
ImpactScript executes in victim's browser session
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 | The attacker must be able to edit a wiki page and must place HTML markup inside a |
| Impact | This is a genuine but moderate-priority issue, not an emergency. The CVSS 4.0 base score is 5.3 (medium), and the vulnerability is a stored XSS (CWE-79) whose impact is confined to the subsequent system - the browser of each page viewer (SC:L/SI:L, with VC/VI/VA:N on the Otter Wiki server itself). The signals are mostly consistent: AV:N/AC:L means network-reachable and easy to trigger, and PR:N reflects that under the default configuration anonymous users can edit pages, so no authentication is needed to plant the payload; UI:P correctly reflects that a victim must view the poisoned page for the script to fire. The vuln.today decision label is 'this_month' rather than act_now/emergency, which matches the medium severity. No EPSS score and no KEV listing are present in the input, so there is no evidence of active exploitation or a quantified exploitation probability - treat exploitation likelihood as unquantified rather than low. The main risk amplifier is the default anonymous-edit configuration, which removes the usual authentication barrier for a stored-XSS; deployments that disable anonymous editing meaningfully reduce exposure. Overall: patch within a normal cycle, prioritizing internet-facing instances that allow anonymous editing. |
| Exploit ScenarioDerived | Under the default configuration an unauthenticated attacker opens the page editor and saves a page containing a |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Nov 02, 2026
Stored cross-site scripting in Otter Wiki before 2.26.2 lets anyone able to edit a page - including anonymous users under the default configuration - persist HTML and script inside a `math fenced code block that the renderer emits without escaping, so the payload executes in the browser of every viewer who opens the poisoned page. Successful exploitation requires the victim to view the page (passive user interaction) and grants script execution in the wiki's origin in a scope-changed context, with low confidentiality and integrity impact on the viewer's session rather than on the server. This is a genuine but moderate-priority issue, not an emergency: no confirmed active exploitation (not in CISA KEV) and no public exploit identified at time of analysis, with a vendor fix released in 2.26.2.
RemediationAI
Upgrade Otter Wiki to 2.26.2, the vendor-released fix that escapes each line of a `math block with mistune.escape before wrapping it in math delimiters (commit b2e91d20ed36c01ce140d18698f9abb90685d481, release notes at https://github.com/redimp/otterwiki/releases/tag/v2.26.2; see also https://www.vulncheck.com/advisories/an-otter-wiki-before-2.26.2-stored-xss-via-math-code-block). Because the payload is stored in page content, upgrading should be paired with a review of existing pages that contain math fenced blocks for injected HTML, since already-poisoned pages remain in the database. Until the upgrade is deployed, restricting page-edit rights - requiring login or disabling anonymous editing - raises the bar from unauthenticated to authenticated editors but does not remove the flaw, and the escaping change in 2.26.2 remains the complete remediation.
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
Otter Wiki renders Markdown through OtterwikiMdRenderer, a subclass of the mistune Markdown parser, and its block_code method handles fenced code blocks selected by an info string. For blocks tagged `math, the renderer rewrites each source line into a \[...\] MathJax delimiter so the wiki can display formulas; before 2.26.2 that transformation interpolated the raw code text without HTML escaping, so markup such as </div><script>...</script> or <img src=x onerror=...> passed through into the final HTML. This is the classic CWE-79 stored/persistent variant: the tainted content is saved in the wiki page (attacker-controlled, and editable by anonymous users by default) and re-served to every reader. The upstream fix (commit b2e91d20ed36c01ce140d18698f9abb90685d481) applies mistune.escape(line, quote=False) to each line before wrapping it in the math delimiters, and the accompanying test asserts that <script and <img tags are neutralized while legitimate math such as a &= b < c is preserved as escaped entities. Per the affected CPE (cpe:2.3:a:redimp:otterwiki:*:*:*:*:*:*:*:*) all releases prior to 2.26.2 are in scope; the assessed CVSS:3.1 vector (AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N) reflects network reachability, no privileges needed because anonymous editing is the default, required victim interaction, and a scope change driven by script running in the victim's browser session. The exact conditions that make a hardened deployment exploitable are as assessed: requiring login or disabling anonymous editing limits the attacker to authenticated editors, which lowers but does not eliminate the risk.
Know when Otterwiki 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:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N
Network-reachable stored XSS triggerable without auth under the default anonymous-edit config (PR:N); a viewer must load the page (UI:R); script runs in the victim's browser context, a scope change (S:C) with low C/I and no availability impact.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
An Otter Wiki before 2.26.2 contains a stored cross-site scripting vulnerability in OtterwikiMdRenderer.block_code that allows attackers who can edit pages, including anonymous users under the default configuration, to inject arbitrary script. Attackers can place HTML inside a math fenced code block, which is rendered unescaped and executes for every viewer of the page.
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.
EUVD-2026-115252
GHSA-2fv3-2f7j-2vq4
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB