CVE-2025-62508

6.5 MEDIUM

📋 TL;DR

This stored cross-site scripting vulnerability in the Citizen MediaWiki skin allows users with editinterface rights to inject malicious JavaScript into the sticky header. When other users view pages with the injected content, their browsers execute the attacker's scripts, potentially compromising their sessions. The vulnerability affects MediaWiki installations using Citizen skin versions 3.3.0 through 3.9.0.

💻 Affected Systems

Products:
  • Citizen MediaWiki skin
Versions: 3.3.0 to 3.9.0
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects MediaWiki installations using the Citizen skin. Requires at least one user with editinterface rights (default sysop group).

⚠️ Manual Verification Required

This CVE does not have specific version information in our database, so automatic vulnerability detection cannot determine if your system is affected.

Why? The CVE database entry doesn't specify which versions are vulnerable (no version ranges provided by the vendor/NVD).

🔒 Custom verification scripts are available for registered users. Sign up free to download automated test scripts.

Recommended Actions:
  1. Review the CVE details at NVD
  2. Check vendor security advisories for your specific version
  3. Test if the vulnerability is exploitable in your environment
  4. Consider updating to the latest version as a precaution

⚠️ Risk & Real-World Impact

🔴

Worst Case

An attacker with editinterface rights could steal administrator session cookies, perform actions as other users, exfiltrate sensitive data, or deploy malware to visitors' browsers.

🟠

Likely Case

Privileged users (sysops) with editinterface rights could execute JavaScript in other users' sessions, potentially modifying content, stealing session tokens, or performing unauthorized actions.

🟢

If Mitigated

With proper access controls limiting editinterface rights to trusted administrators only, the attack surface is reduced to trusted insiders.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Requires authenticated user with editinterface rights. Exploitation involves editing system messages to inject JavaScript payloads.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 3.9.0

Vendor Advisory: https://github.com/StarCitizenTools/mediawiki-skins-Citizen/security/advisories/GHSA-g955-vw6w-v6pp

Restart Required: No

Instructions:

1. Update Citizen skin to version 3.9.0 or later. 2. Navigate to MediaWiki skins directory. 3. Replace existing Citizen skin files with patched version. 4. Clear any caches if applicable.

🔧 Temporary Workarounds

Restrict editinterface rights

all

Temporarily remove editinterface rights from all non-essential users until patching is complete.

MediaWiki LocalSettings.php: $wgGroupPermissions['sysop']['editinterface'] = false;

Disable sticky header feature

all

Disable the vulnerable sticky header functionality in Citizen skin configuration.

MediaWiki LocalSettings.php: $wgCitizenEnableStickyHeader = false;

🧯 If You Can't Patch

  • Immediately audit and restrict editinterface permissions to only absolutely necessary administrators
  • Implement Content Security Policy headers to mitigate XSS impact and monitor for suspicious interface message edits

🔍 How to Verify

Check if Vulnerable:

Check Citizen skin version in MediaWiki skin directory or via Special:Version page. If version is between 3.3.0 and 3.9.0, system is vulnerable.

Check Version:

Check MediaWiki Special:Version page or examine skins/Citizen/version.json file

Verify Fix Applied:

Verify Citizen skin version is 3.9.0 or higher. Test that sticky header buttons properly escape HTML content.

📡 Detection & Monitoring

Log Indicators:

  • Unusual interface message edits by users with editinterface rights
  • JavaScript injection patterns in recentchanges logs

Network Indicators:

  • Unexpected external JavaScript loads from MediaWiki pages
  • Suspicious outbound connections from user browsers

SIEM Query:

source="mediawiki" AND (event="edit" OR event="save") AND target="interface-message" AND user_has_right="editinterface"

🔗 References

📤 Share & Export