CVE-2023-2298

7.2 HIGH

📋 TL;DR

This stored XSS vulnerability in the vcita WordPress plugin allows unauthenticated attackers to inject malicious JavaScript via the 'business_id' parameter. The injected scripts execute whenever users access compromised pages, potentially affecting all visitors to vulnerable WordPress sites. WordPress administrators using the plugin versions up to 4.2.10 are affected.

💻 Affected Systems

Products:
  • Online Booking & Scheduling Calendar for WordPress by vcita
Versions: Up to and including 4.2.10
Operating Systems: Any OS running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: All WordPress installations using vulnerable plugin versions are affected regardless of configuration.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers could steal administrator credentials, deface websites, redirect users to malicious sites, or install backdoors for persistent access.

🟠

Likely Case

Session hijacking, credential theft from users, and website defacement through injected malicious scripts.

🟢

If Mitigated

With proper input validation and output escaping, the vulnerability would be prevented entirely.

🌐 Internet-Facing: HIGH
🏢 Internal Only: LOW

🎯 Exploit Status

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

The vulnerability requires no authentication and has public technical details available.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 4.2.11 or later

Vendor Advisory: https://wordpress.org/plugins/meeting-scheduler-by-vcita/#developers

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins. 3. Find 'Online Booking & Scheduling Calendar for WordPress by vcita'. 4. Click 'Update Now' if available. 5. Alternatively, download version 4.2.11+ from WordPress repository and manually update.

🔧 Temporary Workarounds

Temporary Plugin Deactivation

all

Disable the vulnerable plugin until patched

wp plugin deactivate meeting-scheduler-by-vcita

Web Application Firewall Rule

all

Block requests containing malicious script patterns in business_id parameter

🧯 If You Can't Patch

  • Implement strict Content Security Policy (CSP) headers to limit script execution
  • Use web application firewall to filter malicious input patterns

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin panel > Plugins > Installed Plugins for 'Online Booking & Scheduling Calendar for WordPress by vcita' version

Check Version:

wp plugin get meeting-scheduler-by-vcita --field=version

Verify Fix Applied:

Verify plugin version is 4.2.11 or higher in WordPress admin panel

📡 Detection & Monitoring

Log Indicators:

  • Unusual POST requests to vcita endpoints with script tags in parameters
  • Multiple failed injection attempts in web server logs

Network Indicators:

  • HTTP requests containing <script> tags in business_id parameter
  • Unusual outbound connections from WordPress site after page visits

SIEM Query:

source="web_server" AND ("business_id" AND ("<script>" OR "javascript:" OR "onerror="))

🔗 References

📤 Share & Export