Citizen skin vulnerable to stored XSS through multiple system messages
Moderate severity
GitHub Reviewed
Published
Jun 11, 2025
in
StarCitizenTools/mediawiki-skins-Citizen
•
Updated Jun 13, 2025
Package
Affected versions
>= 2.4.2, < 3.3.1
Patched versions
3.3.1
Description
Published to the GitHub Advisory Database
Jun 11, 2025
Reviewed
Jun 11, 2025
Published by the National Vulnerability Database
Jun 12, 2025
Last updated
Jun 13, 2025
Summary
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.
Details
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-L66currentTip
is set to one of these messages: https://github.com/StarCitizenTools/mediawiki-skins-Citizen/blob/072e4365e9084e4b153eac62d3666566c06f5a49/resources/skins.citizen.commandPalette/components/CommandPaletteFooter.vue#L69currentTip
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-L4PoC
citizen-command-palette-tip-commands
,citizen-command-palette-tip-users
,citizen-command-palette-tip-namespace
andcitizen-command-palette-tip-templates
to<img src="" onerror="alert(1)">
(script tags don't work here due to the way the HTML is inserted)Impact
This impacts wikis where a group has the
editinterface
but not theeditsitejs
user right.References