{"id":"GHSA-7h5p-637f-jfr7","aliases":["CVE-2026-55691"],"title":"StarCitizenWiki Extension Embed Video: Stored XSS via unsanitized class passed to template","description":"### Summary\nThe 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.\n\n### Details\nThe template [here](https://github.com/StarCitizenWiki/mediawiki-extensions-EmbedVideo/blob/a573a16d925ee0ea0d34b360856dc8ab0b88f822/includes/EmbedService/EmbedHtmlFormatter.php#L138) adds a figure with a class that is substituted in. This value is provided to sprintf [here](https://github.com/StarCitizenWiki/mediawiki-extensions-EmbedVideo/blob/a573a16d925ee0ea0d34b360856dc8ab0b88f822/includes/EmbedService/EmbedHtmlFormatter.php#L156), an unescaped version of the class supplied by the user.\n\n```\n$template = <<<HTML\n    <figure class=\"%s\" data-service=\"%s\" %s %s>\n        <div class=\"embedvideo-wrapper\" %s>%s%s%s</div>%s\n    </figure>\nHTML;\n```\n\n### PoC\nNote the double quote immediately following the single quote to escape the class attribute in the template:\n```\n<youtube class='\" onmouseover=\"alert(document.domain)' id=\"dQw4w9WgXcQ\">dQw4w9WgXcQ</youtube>\n```\n\n### Impact\nArbitrary HTML can be inserted into the DOM by any user on any page, allowing for JavaScript to be executed.","severity":"high","score":8.6,"published":"2026-06-19T21:15:03.000Z","modified":"2026-09-10T03:50:48.730Z","withdrawn":false,"knownExploited":false,"affected":[{"ecosystem":"Packagist","name":"starcitizenwiki/embedvideo","ranges":[{"events":[{"introduced":"0"},{"fixed":"4.1.0"}],"type":"ECOSYSTEM"}],"versions":["3.0.0","3.0.1","3.0.2","3.0.3","3.0.4","3.0.5","3.0.6","3.0.7","3.0.8","3.0.9","3.1.0","3.2.0","3.2.1","3.2.2","3.2.3","3.2.4","3.2.5","3.2.6","3.2.7","3.2.8","3.3.0","3.4.0","3.4.1","3.4.2","3.4.3","4.0.0"],"fixed":["4.1.0"]}],"references":["https://github.com/StarCitizenWiki/mediawiki-extensions-EmbedVideo/security/advisories/GHSA-7h5p-637f-jfr7","https://github.com/StarCitizenWiki/mediawiki-extensions-EmbedVideo/commit/370156335b325bb81d14d89edf0a1f2643d50a84","https://github.com/StarCitizenWiki/mediawiki-extensions-EmbedVideo","https://github.com/StarCitizenWiki/mediawiki-extensions-EmbedVideo/releases/tag/v4.1.0"],"sources":[{"name":"OSV","id":"GHSA-7h5p-637f-jfr7","modified":"2026-09-10T03:50:48.730623590Z","url":"https://osv.dev/vulnerability/GHSA-7h5p-637f-jfr7"}],"assessments":[{"source":"OSV","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:L","score":8.6}],"evidence":[]}