CVE-2023-51409
📋 TL;DR
This vulnerability allows unauthenticated attackers to upload arbitrary files to WordPress sites running the vulnerable AI Engine plugin. Attackers can achieve remote code execution by uploading malicious files like PHP shells. All WordPress sites using AI Engine plugin versions up to 1.9.98 are affected.
💻 Affected Systems
- WordPress AI Engine: ChatGPT Chatbot plugin
📦 What is this software?
Ai Engine by Meowapps
⚠️ Risk & Real-World Impact
Worst Case
Complete server compromise leading to data theft, ransomware deployment, or use as part of a botnet.
Likely Case
Website defacement, malware distribution, credential theft, and backdoor installation.
If Mitigated
Limited impact if file uploads are restricted at web server level or WAF blocks malicious uploads.
🎯 Exploit Status
Public exploit code available with 0-click RCE capability.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 1.9.99 or later
Vendor Advisory: https://patchstack.com/database/vulnerability/ai-engine/wordpress-ai-engine-plugin-1-9-98-unauthenticated-arbitrary-file-upload-vulnerability
Restart Required: No
Instructions:
1. Log into WordPress admin panel. 2. Navigate to Plugins → Installed Plugins. 3. Find 'AI Engine: ChatGPT Chatbot'. 4. Click 'Update Now' if available. 5. Alternatively, download version 1.9.99+ from WordPress repository and manually update.
🔧 Temporary Workarounds
Disable plugin
allTemporarily disable the vulnerable plugin until patched
wp plugin deactivate ai-engine
Restrict file uploads via .htaccess
linuxBlock PHP file uploads in WordPress uploads directory
<FilesMatch "\.(php|php5|php7|phtml|phar)$">
Order Allow,Deny
Deny from all
</FilesMatch>
🧯 If You Can't Patch
- Implement web application firewall (WAF) rules to block file uploads to vulnerable endpoints
- Restrict access to /wp-content/uploads/ directory and monitor for suspicious file uploads
🔍 How to Verify
Check if Vulnerable:
Check WordPress admin panel → Plugins → AI Engine version. If version ≤ 1.9.98, vulnerable.
Check Version:
wp plugin get ai-engine --field=version
Verify Fix Applied:
Confirm plugin version is 1.9.99 or higher in WordPress admin.
📡 Detection & Monitoring
Log Indicators:
- Unusual file uploads to /wp-content/uploads/
- POST requests to AI Engine endpoints with file parameters
- Execution of unexpected PHP files in uploads directory
Network Indicators:
- HTTP POST requests with file uploads to AI Engine plugin endpoints
- Unexpected outbound connections from WordPress server
SIEM Query:
source="web_server" AND (uri_path="/wp-json/ai-engine/" OR uri_path="/wp-admin/admin-ajax.php") AND method="POST" AND (file_upload="true" OR content_type="multipart/form-data")
🔗 References
- https://patchstack.com/database/vulnerability/ai-engine/wordpress-ai-engine-plugin-1-9-98-unauthenticated-arbitrary-file-upload-vulnerability?_s_id=cve
- https://github.com/JoshuaProvoste/0-click-RCE-Exploit-for-CVE-2023-51409
- https://patchstack.com/database/vulnerability/ai-engine/wordpress-ai-engine-plugin-1-9-98-unauthenticated-arbitrary-file-upload-vulnerability?_s_id=cve