GHSA-jfj7-249r-7j2m

ghsaUSosv

TabberNeue vulnerable to Stored XSS through wikitext

view advisory published 2025-06-27Licence: CC-BY-4.0

### Summary Arbitrary HTML can be inserted into the DOM by inserting a payload into any allowed attribute of the `<tabber>` tag. ### Details The `args` provided within the wikitext as attributes to the `<tabber>` tag are passed to the TabberComponentTabs class: https://github.com/StarCitizenTools/mediawiki-extensions-TabberNeue/blob/3a23b703ce36cfc4128e7921841f68230be4059a/includes/Tabber.php#L76 In TabberComponentTabs, the attributes are validated before being supplied to the Tabs template. https://github.com/StarCitizenTools/mediawiki-extensions-TabberNeue/blob/3a23b703ce36cfc4128e7921841f68230be4059a/includes/Components/TabberComponentTabs.php#L15-L31 However, the validation is insufficient. What `Sanitizer::validateTagAttributes` does is call `validateAttributes`, which ``` * - Discards attributes not on the given list * - Unsafe style attributes are discarded * - Invalid id attributes are re-encoded ``` However, the attribute values are expected to be escaped when inserted into HTML. The attribute values are then inserted into HTML without being escaped: https://github.com/StarCitizenTools/mediawiki-extensions-TabberNeue/blob/3a23b703ce36cfc4128e7921841f68230be4059a/includes/templates/Tabs.mustache#L1 ### PoC #### XSS through attributes: 1. Go to Special:ExpandTemplates and insert the following wikitext: ``` <tabber class='test123" onmouseenter="alert(1)"'> |-|First Tab Title= First tab content goes here. </tabber> ``` 2. Press "OK" 3. Hover over the tabber ![image](https://github.com/user-attachments/assets/bb65a587-e277-4936-b9f9-400ad7c39040) #### XSS through script tags: 1. Go to Special:ExpandTemplates and insert the following wikitext: ``` <tabber class='test123"&gt;&lt;script&gt;alert(2)&lt;/script&gt;'> |-|First Tab Title= First tab content goes here. </tabber> ``` 2. Press "OK" ![image](https://github.com/user-attachments/assets/a51ede5c-f9a0-49be-875e-37d30a083721) ### Impact Arbitrary HTML can be inserted into the DOM by any user, allowing for JavaScript to be executed.

01

describes (1)

Related CVEs.

IDseverity exploitable
CVE-2025-53093US——
TabberNeue is a MediaWiki extension that allows the wiki to create tabs. Starting in version 3.0.0 and prior to version 3.1.1, any user can insert arbitrary HTMLinto the DOM by ins…
02

references

External citations — patches, advisories, analysis.

scry

Advisories like this name the exposed products attackers go after on your perimeter. See what is exposed on your perimeter with a free passive scan.

Free scan