Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:L
Stored XSS needs an editor account (PR:L) and a victim to view the page and trigger onmouseover (UI:R); script runs in the wiki origin affecting other users (S:C) with limited confidentiality/integrity impact and no availability impact.
Primary rating from Vendor (https://github.com/StarCitizenWiki/mediawiki-extensions-EmbedVideo).
CVSS VectorVendor: https://github.com/StarCitizenWiki/mediawiki-extensions-EmbedVideo
Lifecycle Timeline
3DescriptionCVE.org
Summary
The user supplied class value is fed directly into the sprintf call that creates HTML. You can add a quote to escape the class and then inject arbitrary html/javascript to the final output.
Details
The template here adds a figure with a class that is substituted in. This value is provided to sprintf here, an unescaped version of the class supplied by the user.
$template = <<<HTML
<figure class="%s" data-service="%s" %s %s>
<div class="embedvideo-wrapper" %s>%s%s%s</div>%s
</figure>
HTML;PoC
Note the double quote immediately following the single quote to escape the class attribute in the template:
<youtube class='" onmouseover="alert(document.domain)' id="dQw4w9WgXcQ">dQw4w9WgXcQ</youtube>Impact
Arbitrary HTML can be inserted into the DOM by any user on any page, allowing for JavaScript to be executed.
AnalysisAI
Stored cross-site scripting in the StarCitizenWiki EmbedVideo MediaWiki extension (versions <= 4.0.0) allows any wiki user to inject arbitrary HTML and JavaScript into rendered pages by abusing the unsanitized class attribute on embed tags such as <youtube>. Because the user-supplied class is concatenated into an HTML template via sprintf without escaping, an attacker can break out of the class attribute and execute script in the context of every visitor that views the page. No public exploit identified at time of analysis beyond the advisory's own PoC, and the issue is not listed in CISA KEV.
Technical ContextAI
The EmbedVideo extension renders media embeds (YouTube, Vimeo, etc.) inside MediaWiki by composing a <figure> wrapper using a PHP here-doc template populated with sprintf in includes/EmbedService/EmbedHtmlFormatter.php. The value of $config['class'], which originates from a user-controlled attribute on the embed tag (e.g. <youtube class='...'>), is interpolated directly into the class="%s" placeholder without HTML-attribute escaping, a textbook CWE-79 (Improper Neutralization of Input During Web Page Generation). The affected package is the Composer package starcitizenwiki/embedvideo (pkg:composer/starcitizenwiki_embedvideo), used by any MediaWiki instance that installs this extension and permits authors to write embed tags.
RemediationAI
Vendor-released patch: upgrade starcitizenwiki/embedvideo to version 4.1.0 or later (release https://github.com/StarCitizenWiki/mediawiki-extensions-EmbedVideo/releases/tag/v4.1.0), which replaces the sprintf-based HTML assembly with MediaWiki's TemplateParser and Html::element helpers that perform proper attribute escaping (fix commit 370156335b325bb81d14d89edf0a1f2643d50a84). If immediate upgrade is impossible, restrict page-edit and embed-tag usage rights to trusted users only, audit existing pages containing <youtube>/<vimeo>/etc. tags for suspicious class attribute content, and consider temporarily disabling the EmbedVideo extension on wikis that accept anonymous or low-trust edits - note this removes all video embedding functionality. A strict Content-Security-Policy that disallows inline event handlers (no unsafe-inline, no script in attributes) materially blunts the impact but may break legitimate MediaWiki gadgets or skin features and is not a substitute for the patch. See advisory https://github.com/StarCitizenWiki/mediawiki-extensions-EmbedVideo/security/advisories/GHSA-7h5p-637f-jfr7.
In PHP versions 7.1.x below 7.1.33, 7.2.x below 7.2.24 and 7.3.x below 7.3.11 in certain configurations of FPM setup it
sapi/cgi/cgi_main.c in PHP before 5.3.12 and 5.4.x before 5.4.2, when configured as a CGI script (aka php-cgi), does not
(1) boardData102.php, (2) boardData103.php, (3) boardDataJP.php, (4) boardDataNA.php, and (5) boardDataWW.php in Netgear
The '/common/download_agent_installer.php' script in the Quest KACE System Management Appliance 8.0.318 is accessible by
ProjectSend versions prior to r1720 are affected by an improper authentication vulnerability. Rated critical severity (C
Roundcube Webmail contains a critical PHP object deserialization vulnerability (CVE-2025-49113, CVSS 9.9) that allows au
Util/PHP/eval-stdin.php in PHPUnit before 4.8.28 and 5.x before 5.6.3 allows remote attackers to execute arbitrary PHP c
Palo Alto Networks PAN-OS management web interface contains an authentication bypass allowing unauthenticated attackers
Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re
Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re
The get_referers function in /opt/ws/bin/sblistpack in Sophos Web Appliance before 3.7.9.1 and 3.8 before 3.8.1.1 allows
The Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1
Same weakness CWE-79 – Cross-site Scripting (XSS)
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-78832
GHSA-7h5p-637f-jfr7