CVE-2023-6219
📋 TL;DR
The BookingPress WordPress plugin up to version 1.0.76 contains an arbitrary file upload vulnerability in the 'bookingpress_process_upload' function due to insufficient file validation. This allows authenticated attackers with administrator-level privileges to upload malicious files to the server, potentially leading to remote code execution. WordPress sites using vulnerable versions of the BookingPress plugin are affected.
💻 Affected Systems
- BookingPress Appointment Booking WordPress Plugin
📦 What is this software?
Bookingpress by Reputeinfosystems
⚠️ Risk & Real-World Impact
Worst Case
Full server compromise via remote code execution, allowing attackers to install backdoors, steal data, deface websites, or pivot to other systems.
Likely Case
Website defacement, data theft, or installation of malware/backdoors on the compromised WordPress site.
If Mitigated
Limited impact if proper file upload restrictions and server hardening are in place, though the vulnerability still provides unauthorized file upload capability.
🎯 Exploit Status
Exploitation requires administrator credentials but is technically simple once authenticated. Multiple public references demonstrate the vulnerability.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 1.0.77 and later
Vendor Advisory: https://plugins.trac.wordpress.org/changeset/3001484/bookingpress-appointment-booking/trunk/core/classes/class.bookingpress_fileupload_class.php
Restart Required: No
Instructions:
1. Log into WordPress admin panel. 2. Navigate to Plugins → Installed Plugins. 3. Find BookingPress Appointment Booking. 4. Click 'Update Now' if available. 5. Alternatively, download version 1.0.77+ from WordPress.org and manually update.
🔧 Temporary Workarounds
Disable BookingPress Plugin
allTemporarily disable the vulnerable plugin until patched
wp plugin deactivate bookingpress-appointment-booking
Restrict File Uploads via .htaccess
linuxBlock PHP file execution in upload directories
Add to .htaccess in wp-content/uploads: <Files *.php> deny from all </Files>
🧯 If You Can't Patch
- Remove administrator accounts that are not absolutely necessary
- Implement web application firewall rules to block suspicious file upload patterns
🔍 How to Verify
Check if Vulnerable:
Check WordPress admin → Plugins → BookingPress version. If version is 1.0.76 or lower, you are vulnerable.
Check Version:
wp plugin get bookingpress-appointment-booking --field=version
Verify Fix Applied:
Verify BookingPress plugin version is 1.0.77 or higher in WordPress admin panel.
📡 Detection & Monitoring
Log Indicators:
- Unusual file uploads to wp-content/uploads via bookingpress_process_upload
- PHP file creation in upload directories by admin users
- Multiple failed upload attempts with unusual file extensions
Network Indicators:
- POST requests to /wp-admin/admin-ajax.php with action=bookingpress_process_upload containing executable files
SIEM Query:
source="wordpress.log" AND "bookingpress_process_upload" AND ("php" OR "exe" OR "phtml" OR file_extension IN (php, exe, phtml, jsp))
🔗 References
- https://plugins.trac.wordpress.org/browser/bookingpress-appointment-booking/tags/1.0.76/core/classes/class.bookingpress_fileupload_class.php#L140
- https://plugins.trac.wordpress.org/changeset/3001484/bookingpress-appointment-booking/trunk/core/classes/class.bookingpress_fileupload_class.php
- https://plugins.trac.wordpress.org/changeset/3001484/bookingpress-appointment-booking/trunk/core/classes/class.bookingpress_settings.php
- https://www.wordfence.com/threat-intel/vulnerabilities/id/710b8e4e-01de-4e99-8cf2-31abc2419b29?source=cve
- https://plugins.trac.wordpress.org/browser/bookingpress-appointment-booking/tags/1.0.76/core/classes/class.bookingpress_fileupload_class.php#L140
- https://plugins.trac.wordpress.org/changeset/3001484/bookingpress-appointment-booking/trunk/core/classes/class.bookingpress_fileupload_class.php
- https://plugins.trac.wordpress.org/changeset/3001484/bookingpress-appointment-booking/trunk/core/classes/class.bookingpress_settings.php
- https://www.wordfence.com/threat-intel/vulnerabilities/id/710b8e4e-01de-4e99-8cf2-31abc2419b29?source=cve