StarCitizenWiki Extension Embed Video: Stored XSS via unsanitized service name in exception text
Summary
When 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.Details
There is a hardcoded list of allowed services in a switch statement insideEmbedServiceFactory#newFromName here. When the service name is not known, an exception is thrown with the service name injected into the message via sprintf here. This message is not sanitized and is marked as isHtml here. Similarly with {{evl: here.PoC
// Must be on a page, not on ExpandTemplates
{{#ev:|dQw4w9WgXcQ}}
{{#evl:id=dummy|service=}}