{"id":"GHSA-c29q-5xm7-5p62","summary":"StarCitizenWiki Extension Embed Video: Stored XSS via unsanitized service name in exception text","details":"### Summary\nWhen passing an unknown service name to embedvideo, an error message is rendered containing the invalid service name. The service name is not sanitized and can contain HTML.\n\n### Details\nThere is a hardcoded list of allowed services in a switch statement inside `EmbedServiceFactory#newFromName` [here](https://github.com/StarCitizenWiki/mediawiki-extensions-EmbedVideo/blob/a573a16d925ee0ea0d34b360856dc8ab0b88f822/includes/EmbedService/EmbedServiceFactory.php#L105). When the service name is not known, an exception is thrown with the service name injected into the message via sprintf [here](https://github.com/StarCitizenWiki/mediawiki-extensions-EmbedVideo/blob/a573a16d925ee0ea0d34b360856dc8ab0b88f822/includes/EmbedService/EmbedServiceFactory.php#L286). This message is not sanitized and is marked as isHtml [here](https://github.com/StarCitizenWiki/mediawiki-extensions-EmbedVideo/blob/a573a16d925ee0ea0d34b360856dc8ab0b88f822/includes/EmbedVideo.php#L303-L311). Similarly with `{{evl:` [here](https://github.com/StarCitizenWiki/mediawiki-extensions-EmbedVideo/blob/a573a16d925ee0ea0d34b360856dc8ab0b88f822/includes/EmbedVideo.php#L177-L183).\n\n### PoC\n```\n// Must be on a page, not on ExpandTemplates\n{{#ev:\u003cimg src=x onerror=alert(document.domain)\u003e|dQw4w9WgXcQ}}\n{{#evl:id=dummy|service=\u003cimg src=x onerror=alert(document.domain)\u003e}}\n```\n\n### Impact\nStored XSS that allows arbitrary Javascript/HTML insertion on any page that a user can edit.  It requires no interaction and executes in the wiki origin for every visitor to the page.","aliases":["CVE-2026-55690"],"modified":"2026-09-10T03:50:55.301470284Z","published":"2026-06-19T21:14:15Z","database_specific":{"nvd_published_at":null,"cwe_ids":["CWE-79","CWE-80"],"severity":"HIGH","github_reviewed":true,"github_reviewed_at":"2026-06-19T21:14:15Z"},"references":[{"type":"WEB","url":"https://github.com/StarCitizenWiki/mediawiki-extensions-EmbedVideo/security/advisories/GHSA-c29q-5xm7-5p62"},{"type":"WEB","url":"https://github.com/StarCitizenWiki/mediawiki-extensions-EmbedVideo/commit/9215564bf28a0ceb40be550a55ab78efc0accc56"},{"type":"PACKAGE","url":"https://github.com/StarCitizenWiki/mediawiki-extensions-EmbedVideo"},{"type":"WEB","url":"https://github.com/StarCitizenWiki/mediawiki-extensions-EmbedVideo/releases/tag/v4.1.0"}],"affected":[{"package":{"name":"starcitizenwiki/embedvideo","ecosystem":"Packagist","purl":"pkg:composer/starcitizenwiki/embedvideo"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.1.0"}]}],"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"],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/06/GHSA-c29q-5xm7-5p62/GHSA-c29q-5xm7-5p62.json","last_known_affected_version_range":"\u003c= 4.0.0"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N"}]}