Skip to main content

Semantic MediaWiki EUVDEUVD-2026-110717

| CVE-2026-116889 MEDIUM
Cross-site Scripting (XSS) (CWE-79)
2026-10-27 VulnCheck GHSA-x3g7-fw87-vwjc
5.3
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Obtain page-edit rights on target wiki
  2. Delivery
    Declare property as type Code
  3. Exploit
    Store JSON value embedding HTML/JS payload
  4. Execution
    Victim views Special:Browse for the subject
  5. Persist
    JSON pretty-printer emits markup unescaped
  6. Impact
    Script executes in viewer's authenticated 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

Requires Semantic MediaWiki installed and enabled, plus an account with ordinary page-edit rights (no special right is needed because the Code type is user-selectable from the contextual type group); on wikis that permit anonymous editing this becomes reachable without authentication. The attacker must declare a property of type Code and store a value that begins with '{' and parses as valid JSON while embedding HTML in a JSON string - the '{'-prefix JSON branch is what routes to the vulnerable asJson() path (non-JSON Code values are escaped and are not exploitable). Exploitation is LIMITED by required passive victim interaction (UI:P): a payload fires only when another user actually opens Special:Browse for the annotated subject, so there is no automatic server-side execution. Impact escalation to administrator actions depends on a privileged user viewing the specific annotated page and is described by the vendor as plausible, not demonstrated.

Impact

This is a medium-severity stored XSS (CVSS 4.0 base 5.3) whose real-world risk is moderate and bounded, not a top-tier emergency. The signals are internally consistent and point to limited, non-automated exploitation: the input CVSS 4.0 vector is AV:N/AC:L/AT:N/PR:N/UI:P, meaning network-reachable and low-complexity but requiring passive user interaction (a victim must view the annotated Special:Browse page), with only Low confidentiality and integrity impact and no availability impact. The vendor priority Decision label is 'this_month' (not act_now/emergency), which aligns with a stored client-side flaw rather than a wormable server compromise. KEV status is not present in the input, so this is 'no public exploit identified' in the active-exploitation sense - BUT a public PoC reference exists: the GHSA advisory (GHSA-6v7f-crgp-hhvp) and the VulnCheck advisory contain full step-by-step reproduction; this PoC reference is not verified here as packaged, working standalone exploit code. No EPSS score was provided, so exploitation probability cannot be quantified from the input - STATE EXPLICITLY: EPSS missing. There is a notable data conflict on fix state: the description, EUVD, and the final metadata line say the flaw is fixed in 7.3.1 and a vendor patch is 'Available', yet the GitHub source-code evidence snapshot states 'not fixed / no fixed release exists at time of review' with 7.3.0 as latest checked - the source-review snapshot predates the 7.3.1 fix, so treat 7.3.1 as the authoritative fixed version but verify against the current vendor release. The PR metric also warrants scrutiny: the input used PR:N reflecting wikis that allow anonymous editing, but the advisory states exploitation normally requires ordinary page-edit rights, so on authenticated-edit wikis a low privilege is in fact required. Net: a credible, documented, but interaction-dependent and privilege-dependent vulnerability - patch on the normal cycle, prioritize if anonymous editing is enabled or privileged users routinely browse user-annotated subjects.

Exploit ScenarioDerived

On a wiki running Semantic MediaWiki, an attacker with page-edit rights (or any anonymous user where open editing is enabled) declares a property of type Code and annotates a JSON value embedding markup, e.g. [[Example::{"x":"<img src=x onerror=alert(document.domain)>"}]]. When another user - potentially an administrator - later opens Special:Browse for that subject, the CodeStringValueFormatter emits the markup unescaped and the script runs in the viewer's authenticated session under the wiki origin. A detailed public PoC reference is included in the GHSA advisory; it is not verified here as standalone working exploit code.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 28, 2026

Stored cross-site scripting in Semantic MediaWiki (2.5.0 through 7.3.0) lets a user with ordinary page-edit rights - and, on wikis that permit anonymous editing, an unauthenticated visitor - store HTML inside a Code-typed property value, which is later rendered unescaped by Special:Browse and executes JavaScript in the browser of anyone who views that page. The assessed vector (CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N) puts this at medium severity: the payload never executes server-side and fires only after a victim passively opens Special:Browse for the annotated subject, so impact is bounded to viewer sessions, with escalation to administrator actions described as plausible rather than demonstrated. A reproduction is published in the vendor's GitHub advisory, and the fix ships in Semantic MediaWiki 7.3.1; there is no CISA KEV listing and no confirmed report of active exploitation.

RemediationAI

Vendor-released patch: upgrade Semantic MediaWiki to 7.3.1 (composer package mediawiki/semantic-media-wiki, fixed in 7.3.1), which is the version in which the JSON branch of CodeStringValueFormatter::asJson() is expected to escape tag characters (the advisory's suggested fix is to add JSON_HEX_TAG, and optionally JSON_HEX_AMP | JSON_HEX_APOS | JSON_HEX_QUOT, to the json_encode call, or to apply consistent escaping at the emission boundary where formatter output is inserted as an element body). Until the upgrade is deployed, the mitigations named in the advisory are to restrict which users may declare Code-typed properties and which may edit annotated pages - effective at the cost of narrowing normal wiki collaboration and requiring ongoing review of existing Code-typed annotations - and to deploy a Content Security Policy that blocks inline event-handler execution, which reduces payload execution but may break existing legitimate inline scripts and does not remove the stored markup. Because the payload only fires when a user opens Special:Browse for the annotated subject, limiting exposure of that page reduces, but does not eliminate, the attack surface. The vulnerability is not listed in CISA KEV and active exploitation has not been confirmed, so remediation can follow the vendor advisory timeline rather than an emergency response.

Affected VersionsENISA

SemanticMediaWiki 2.5.0 <7.3.1

Affected Packages

euvd semanticmediawiki fix: 7.3.1

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

The flaw is a classic CWE-79 output-encoding defect in Semantic MediaWiki's server-side value formatter for properties of type Code. Property values are stored verbatim as a Blob with no tag stripping or HTML encoding (only property names are stripped), so the stored value is fully attacker-controlled. On render, SMW\DataValues\ValueFormatters\CodeStringValueFormatter::doFormat() dispatches any value that begins with '{' and parses as JSON to asJson(), which calls json_encode with JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE and omits JSON_HEX_TAG, allowing '<' and '>' to survive into the output; the sibling non-JSON branch of the same formatter explicitly maps '<' to &lt; and '>' to &gt;, so non-JSON Code values are escaped and are not exploitable. The base StringValueFormatter escaping is bypassed because the Code formatter overrides doFormat() and does not invoke it on the HTML_LONG Browse path. The pretty-printed result is then emitted unescaped as an element body: HtmlBuilder.php wraps it in Html::rawElement, templates/FactboxProperty.mustache emits it through the unescaped {{{html-values}}} field, and SpecialBrowse.php adds the HTML with no parser or sanitizer stage. The Code type is user-selectable from the user-facing 'contextual' type group, so no special right is needed to declare it. The CPE cpe:2.3:a:semanticmediawiki:semanticmediawiki:*:*:*:*:*:*:*:* and the EUVD range (2.5.0 before 7.3.1) match the confirmed affected range >= 2.5.0, <= 7.3.0; 7.3.1-alpha is also affected. This is a distinct issue from CVE-2025-61682, which is a client-side tooltip data-attribute sink.

Know when Semanticmediawiki 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

Vendor (VulnCheck) PRIMARY 5.3 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N
vuln.today AI 5.4 MEDIUM

Stored XSS needs page-edit rights (PR:L; PR:N only on anonymous-edit wikis) and a victim viewing Browse (UI:R); script in victim origin changes authority (S:C) with Low C/I and no availability impact.

3.1 AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:P/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
Passive
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
Low
Vulnerable system: Availability
None
Subsequent system: Confidentiality
Low
Subsequent system: Integrity
Low
Subsequent system: Availability
None

Lifecycle Timeline

1
Patch available
Oct 27, 2026 - 11:01 EUVD

DescriptionCVE.org

SemanticMediaWiki from 2.5.0 before 7.3.1 contains a stored cross-site scripting vulnerability that allows users with page-edit rights to inject script through Code-typed property values. Attackers can annotate a valid JSON value embedding HTML markup, which the CodeStringValueFormatter renders unescaped on Special:Browse, executing JavaScript in viewers' sessions.

Threat Intelligence Overview

EPSS Score
0.2%
Top 95% exploitable
Prevalence
Low
niche MediaWiki semantic extension, limited enterprise/production footprint
Social Media
1
Sightings
Data Quality
5 sources
Confidence: Medium

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.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact· derived
Medium

Priority Score

26
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +26
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.

CVE-2025-61682 HIGH POC
8.6 Sep 18

Stored cross-site scripting in Semantic MediaWiki 3.1.0 through 6.x lets users with the MediaWiki 'edit' right inject ar

CVE-2026-116878 HIGH
8.7 Oct 27

Semantic MediaWiki before 7.3.1 exposes Special:PropertyLabelSimilarity without an administrator restriction, and a call

CVE-2026-116877 HIGH
8.7 Oct 27

Semantic MediaWiki 2.5.0 through 7.3.0 lets an editor with ordinary page-edit permission exhaust server CPU, memory and

CVE-2026-116872 HIGH
8.7 Oct 27

Quadratic CPU consumption in Semantic MediaWiki's term parser gives unauthenticated visitors a way to tie up PHP search

CVE-2026-116871 HIGH
8.7 Oct 27

Unauthenticated CPU and memory exhaustion in Semantic MediaWiki 3.0.0 up to (but not including) 7.3.1 allows remote atta

CVE-2026-116880 HIGH
7.1 Oct 27

Cross-site request forgery in Semantic MediaWiki's Special:SMWAdmin page allows an attacker to drive destructive mainten

CVE-2026-116876 HIGH
7.1 Oct 27

Semantic MediaWiki 2.5.0 through 7.3.1-alpha applies annotation-driven page protection without any authorization check,

CVE-2026-116890 MEDIUM
6.9 Oct 27

Missing authorization in the Semantic MediaWiki smwtask API module allows unauthenticated remote visitors to invoke main

CVE-2026-116879 MEDIUM
6.9 Oct 27

Semantic MediaWiki 7.3.0 through 7.3.1-alpha fails to authorize the target page in its smwtask update task, letting a ca

CVE-2026-116873 MEDIUM
6.9 Oct 27

Missing authorization in Semantic MediaWiki 7.3.0 lets unauthenticated remote callers run queued maintenance jobs of arb

CVE-2026-77616 MEDIUM
6.1 Sep 18

Reflected cross-site scripting in Semantic MediaWiki 7.0.0 through 7.1.0 lets an unauthenticated attacker execute arbitr

CVE-2026-77610 MEDIUM
6.1 Sep 18

Reflected cross-site scripting in Semantic MediaWiki 7.1.0 and earlier lets an unauthenticated remote attacker inject ar

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy