GitHub Advisoryadvisory · Packagist

GHSA-86xf-2mgp-gv3g starcitizentools/citizen-skin allows stored XSS in search no result messages

MEDIUM Published 2025-06-13 Modified 2025-06-13 Official page ↗
Aliases
CVE-2025-49576
Ecosystem
Packagist
Packages
starcitizentools/citizen-skin
Severity
Moderate
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:N
Weaknesses
CWE-79
Reviewed
2025-06-13

Affected packages

• Packagist starcitizentools/citizen-skin: >= 2.31.0, < 3.3.1 → fixed in 3.3.1

Description

Summary The `citizen-search-noresults-title` and `citizen-search-noresults-desc` system messages are inserted into raw HTML, allowing anybody who can edit those messages to insert arbitrary HTML into the DOM. Details The system messages are inserted as raw HTML by the mustache template: https://github.com/StarCitizenTools/mediawiki-skins-Citizen/blob/407052e7069bdeae927d6f1a2a1c9a45b473bf9a/resources/skins.citizen.search/templates/TypeaheadPlaceholder.mustache#L8-L9 PoC 1. Edit `citizen-search-noresults-title` and `citizen-search-noresults-desc` to `` and `` (script tags don't work here due to the way the HTML is inserted) 2. Open the search bar and search for a page that doesn't exist to get the "no results" messages to show up Impact This impacts wikis where a group has the `editinterface` but not the `editsitejs` user right.

Related

Alias · CVE (1)

  • CVE-2025-49576 Citizen is a MediaWiki skin that makes extensions part of the cohesive experience. vulnerability

Weakness · CWE (1)

  • CWE-79 Improper Neutralization of Input During Web Page Generation weakness

References