Multiple system messages are inserted into the CommandPaletteFooter as raw HTML, allowing anybody who can edit those messages to insert arbitrary HTML into the DOM.
The messages are retrieved using the plain()
output mode: https://github.com/StarCitizenTools/mediawiki-skins-Citizen/blob/072e4365e9084e4b153eac62d3666566c06f5a49/resources/skins.citizen.commandPalette/components/CommandPaletteFooter.vue#L61-L66
currentTip
is set to one of these messages: https://github.com/StarCitizenTools/mediawiki-skins-Citizen/blob/072e4365e9084e4b153eac62d3666566c06f5a49/resources/skins.citizen.commandPalette/components/CommandPaletteFooter.vue#L69
currentTip
is inserted as raw HTML (vue/no-v-html
should not be ignored here): https://github.com/StarCitizenTools/mediawiki-skins-Citizen/blob/072e4365e9084e4b153eac62d3666566c06f5a49/resources/skins.citizen.commandPalette/components/CommandPaletteFooter.vue#L3-L4
citizen-command-palette-tip-commands
, citizen-command-palette-tip-users
, citizen-command-palette-tip-namespace
and citizen-command-palette-tip-templates
to <img src="" onerror="alert(1)">
(script tags don't work here due to the way the HTML is inserted)This impacts wikis where a group has the editinterface
but not the editsitejs
user right.
{ "github_reviewed": true, "github_reviewed_at": "2025-06-11T19:59:54Z", "nvd_published_at": "2025-06-12T19:15:20Z", "cwe_ids": [ "CWE-79" ], "severity": "MODERATE" }