CVE-2025-49576

6.5 MEDIUM

📋 TL;DR

This CVE describes a cross-site scripting (XSS) vulnerability in the Citizen MediaWiki skin where system messages are inserted as raw HTML without proper sanitization. Attackers who can edit these specific system messages can inject arbitrary HTML/JavaScript into web pages. This affects MediaWiki installations using the Citizen skin with vulnerable versions.

💻 Affected Systems

Products:
  • mediawiki-skins-Citizen
Versions: All versions before 3.3.1
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects MediaWiki installations using the Citizen skin. Requires users with message editing permissions to exploit.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Malicious users with edit permissions could inject JavaScript that steals session cookies, redirects users to phishing sites, or performs actions on behalf of authenticated users.

🟠

Likely Case

Authenticated users with message editing permissions could deface pages, insert malicious content, or perform limited client-side attacks against other users viewing affected pages.

🟢

If Mitigated

With proper user permission controls and content security policies, impact is limited to users with message editing access who could only affect the appearance of search result pages.

🌐 Internet-Facing: MEDIUM
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ✅ No
Complexity: LOW

Exploitation requires authenticated user with message editing permissions. The vulnerability is straightforward XSS via HTML injection.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 3.3.1

Vendor Advisory: https://github.com/StarCitizenTools/mediawiki-skins-Citizen/security/advisories/GHSA-86xf-2mgp-gv3g

Restart Required: No

Instructions:

1. Update Citizen skin to version 3.3.1 or later. 2. Navigate to MediaWiki skins directory. 3. Run: git pull origin master (if using git) or download and extract new version. 4. Clear MediaWiki cache if needed.

🔧 Temporary Workarounds

Restrict message editing permissions

all

Limit which users can edit system messages to trusted administrators only

Edit LocalSettings.php to restrict $wgGroupPermissions for message editing

Implement Content Security Policy

all

Add CSP headers to mitigate impact of successful XSS attacks

Add Content-Security-Policy headers via web server configuration

🧯 If You Can't Patch

  • Restrict message editing to only trusted administrators
  • Implement input validation and output encoding for citizen-search-noresults-title and citizen-search-noresults-desc messages

🔍 How to Verify

Check if Vulnerable:

Check Citizen skin version in MediaWiki skins directory or via MediaWiki Special:Version page

Check Version:

Check Citizen.php file for version number or use MediaWiki's Special:Version page

Verify Fix Applied:

Confirm Citizen skin version is 3.3.1 or later and test that HTML tags in citizen-search-noresults-title/desc messages are properly escaped

📡 Detection & Monitoring

Log Indicators:

  • Unusual edits to system messages, particularly citizen-search-noresults-title or citizen-search-noresults-desc

Network Indicators:

  • Unexpected JavaScript execution on search result pages

SIEM Query:

source="mediawiki" AND (message="*citizen-search-noresults*" AND action="edit")

🔗 References

📤 Share & Export