CVE-2022-0658

9.8 CRITICAL

📋 TL;DR

This vulnerability allows unauthenticated attackers to execute arbitrary SQL commands on WordPress sites running vulnerable versions of the CommonsBooking plugin. Attackers can potentially read, modify, or delete database content, including sensitive user data. All WordPress sites with CommonsBooking plugin versions before 2.6.8 are affected.

💻 Affected Systems

Products:
  • WordPress CommonsBooking Plugin
Versions: All versions before 2.6.8
Operating Systems: Any OS running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: Vulnerability exists in default plugin configuration and affects all WordPress installations with the vulnerable plugin version.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete database compromise leading to data theft, site defacement, or full administrative access to the WordPress installation.

🟠

Likely Case

Data exfiltration of user information, plugin settings, or WordPress configuration details.

🟢

If Mitigated

Limited impact with proper input validation and database permissions restricting damage to the CommonsBooking plugin tables only.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ⚠️ Yes
Weaponized: LIKELY
Unauthenticated Exploit: ⚠️ Yes
Complexity: LOW

SQL injection via location parameter in calendar_data AJAX endpoint requires no authentication and has simple exploitation vectors.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 2.6.8

Vendor Advisory: https://wpscan.com/vulnerability/d7f0805a-61ce-454a-96fb-5ecacd767578

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins > Installed Plugins. 3. Find CommonsBooking plugin. 4. Click 'Update Now' if available. 5. If manual update needed, download version 2.6.8+ from WordPress.org, deactivate old version, upload new version, and activate.

🔧 Temporary Workarounds

Disable vulnerable AJAX endpoint

all

Block access to the vulnerable calendar_data AJAX action via .htaccess or web application firewall

# Add to .htaccess:
RewriteCond %{QUERY_STRING} action=calendar_data [NC]
RewriteRule ^wp-admin/admin-ajax\.php$ - [F,L]

Temporary plugin deactivation

linux

Deactivate CommonsBooking plugin until patched version can be installed

wp plugin deactivate commonsbooking

🧯 If You Can't Patch

  • Implement web application firewall rules to block SQL injection patterns targeting the calendar_data endpoint
  • Restrict database user permissions to read-only access for the CommonsBooking plugin tables

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin panel > Plugins > Installed Plugins for CommonsBooking version number

Check Version:

wp plugin list --name=commonsbooking --field=version

Verify Fix Applied:

Confirm CommonsBooking plugin version is 2.6.8 or higher in WordPress admin

📡 Detection & Monitoring

Log Indicators:

  • Unusual SQL errors in WordPress debug logs
  • Multiple requests to /wp-admin/admin-ajax.php with action=calendar_data and SQL-like parameters

Network Indicators:

  • POST requests to /wp-admin/admin-ajax.php containing SQL injection payloads in location parameter

SIEM Query:

source="web_access" AND uri_path="/wp-admin/admin-ajax.php" AND query="*action=calendar_data*" AND (query="*UNION*" OR query="*SELECT*" OR query="*INSERT*" OR query="*DELETE*")

🔗 References

📤 Share & Export