CVE-2023-37303
📋 TL;DR
This vulnerability in the CheckUser extension for MediaWiki allows denial-of-service attacks when attempting to block users, causing temporary browser hangs and database disconnection errors. It affects MediaWiki installations with the CheckUser extension enabled through version 1.39.3.
💻 Affected Systems
- MediaWiki with CheckUser extension
📦 What is this software?
Mediawiki by Mediawiki
⚠️ Risk & Real-World Impact
Worst Case
Complete service disruption preventing user management operations and potentially affecting database stability.
Likely Case
Temporary service degradation during user blocking attempts, impacting administrative functions.
If Mitigated
Minimal impact with proper monitoring and quick response to service interruptions.
🎯 Exploit Status
Exploitation requires access to user blocking functionality
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: MediaWiki 1.39.4 or later with updated CheckUser extension
Vendor Advisory: https://phabricator.wikimedia.org/T338276
Restart Required: No
Instructions:
1. Update MediaWiki to version 1.39.4 or later. 2. Update CheckUser extension to latest version. 3. Clear caches if applicable.
🔧 Temporary Workarounds
Disable CheckUser extension
allTemporarily disable the vulnerable CheckUser extension
Edit LocalSettings.php and comment out wfLoadExtension('CheckUser');
Restrict user blocking permissions
allLimit user blocking capabilities to essential administrators only
Edit LocalSettings.php to modify $wgGroupPermissions
🧯 If You Can't Patch
- Implement strict access controls for user blocking functionality
- Monitor logs for DBQueryDisconnectedError patterns and implement alerting
🔍 How to Verify
Check if Vulnerable:
Check MediaWiki version and CheckUser extension status in LocalSettings.php
Check Version:
php maintenance/run.php includes/DefaultSettings.php | grep wgVersion
Verify Fix Applied:
Verify MediaWiki version is 1.39.4+ and attempt user blocking operation
📡 Detection & Monitoring
Log Indicators:
- DBQueryDisconnectedError in MediaWiki logs
- Failed user blocking attempts with timeout errors
Network Indicators:
- Increased database connection failures
- Timeout responses from user management endpoints
SIEM Query:
source="mediawiki.logs" AND "DBQueryDisconnectedError"