CVE-2023-25444
📋 TL;DR
This vulnerability allows attackers to upload malicious files to WordPress sites using the JS Help Desk plugin. It affects all versions up to 2.7.7, potentially leading to complete site compromise.
💻 Affected Systems
- JS Help Desk – Best Help Desk & Support Plugin for WordPress
📦 What is this software?
⚠️ Risk & Real-World Impact
Worst Case
Remote code execution leading to full server compromise, data theft, and website defacement.
Likely Case
Malware upload leading to backdoor installation, credential theft, and unauthorized administrative access.
If Mitigated
Limited impact if file uploads are disabled or strict file type validation is enforced.
🎯 Exploit Status
Simple file upload exploitation with publicly available proof-of-concept.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 2.7.8 or later
Restart Required: No
Instructions:
1. Update JS Help Desk plugin to version 2.7.8 or higher via WordPress admin panel. 2. Verify update completes successfully. 3. Clear WordPress cache if applicable.
🔧 Temporary Workarounds
Disable file uploads
allTemporarily disable file upload functionality in the plugin settings
Web server file type restrictions
linuxConfigure web server to block execution of uploaded files in upload directories
# Apache: Add to .htaccess in upload directory
<FilesMatch "\.(php|phtml|php3|php4|php5|pl|py|jsp|asp|sh|cgi)$">
Order Deny,Allow
Deny from all
</FilesMatch>
# Nginx: Add to server block
location ~* \.(php|phtml|php3|php4|php5|pl|py|jsp|asp|sh|cgi)$ {
deny all;
}
🧯 If You Can't Patch
- Disable or uninstall the JS Help Desk plugin immediately
- Implement web application firewall rules to block malicious file uploads
🔍 How to Verify
Check if Vulnerable:
Check WordPress admin panel > Plugins > JS Help Desk version. If version is 2.7.7 or lower, you are vulnerable.
Check Version:
# WordPress CLI
wp plugin list --name="js-help-desk" --field=version
# Or check wp-content/plugins/js-help-desk/js-support-ticket.php header
Verify Fix Applied:
Verify plugin version is 2.7.8 or higher in WordPress admin panel.
📡 Detection & Monitoring
Log Indicators:
- Unusual file uploads to /wp-content/uploads/js-support-ticket/
- POST requests to upload endpoints with suspicious file extensions
- Web shell access patterns in access logs
Network Indicators:
- HTTP POST requests to /wp-admin/admin-ajax.php with file upload parameters
- Traffic to unexpected PHP files in upload directories
SIEM Query:
source="web_access_logs" AND (uri_path="*admin-ajax.php*" AND method="POST" AND (form_data="*action=upload*" OR form_data="*jsst_upload*"))
🔗 References
- https://patchstack.com/database/vulnerability/js-support-ticket/wordpress-js-help-desk-best-help-desk-support-plugin-plugin-2-7-7-arbitrary-file-upload-vulnerability?_s_id=cve
- https://patchstack.com/database/vulnerability/js-support-ticket/wordpress-js-help-desk-best-help-desk-support-plugin-plugin-2-7-7-arbitrary-file-upload-vulnerability?_s_id=cve