CVE-2023-0477

8.8 HIGH

📋 TL;DR

The Auto Featured Image WordPress plugin before version 3.9.16 contains an insecure AJAX endpoint that allows authenticated users with Author privileges or higher to upload arbitrary files, including PHP files, due to insufficient file extension validation. This vulnerability affects WordPress sites using vulnerable versions of the plugin. Attackers can exploit this to upload malicious files and potentially execute arbitrary code on the server.

💻 Affected Systems

Products:
  • Auto Featured Image (Auto Post Thumbnail) WordPress plugin
Versions: All versions before 3.9.16
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Requires at least Author-level user account (authenticated attack).

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Remote code execution leading to complete server compromise, data theft, defacement, or ransomware deployment.

🟠

Likely Case

Unauthorized file upload leading to backdoor installation, website defacement, or malware distribution.

🟢

If Mitigated

Limited impact if proper file upload restrictions and web application firewalls are in place.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Exploitation requires authenticated access but is straightforward once credentials are obtained.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 3.9.16

Vendor Advisory: https://wpscan.com/vulnerability/e5ef74a2-e04a-4a14-bd0e-d6910cd1c4b4

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins > Installed Plugins. 3. Find 'Auto Featured Image' plugin. 4. Click 'Update Now' if update available. 5. If no update appears, manually download version 3.9.16+ from WordPress repository and replace plugin files.

🔧 Temporary Workarounds

Disable vulnerable plugin

all

Temporarily deactivate the Auto Featured Image plugin until patched.

wp plugin deactivate auto-featured-image

Restrict file uploads via .htaccess

linux

Block 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

  • Remove Author and higher privileges from untrusted users
  • Implement web application firewall rules to block suspicious file uploads

🔍 How to Verify

Check if Vulnerable:

Check plugin version in WordPress admin under Plugins > Installed Plugins. If version is below 3.9.16, site is vulnerable.

Check Version:

wp plugin get auto-featured-image --field=version

Verify Fix Applied:

Confirm plugin version is 3.9.16 or higher after update.

📡 Detection & Monitoring

Log Indicators:

  • POST requests to /wp-admin/admin-ajax.php with action=apt_ajax_upload
  • File uploads with .php extensions in uploads directory
  • Unauthorized file creation in wp-content/uploads

Network Indicators:

  • HTTP POST requests with file uploads to AJAX endpoints
  • Unusual file upload patterns from Author-level accounts

SIEM Query:

source="web_server" AND (uri_path="/wp-admin/admin-ajax.php" AND method="POST" AND params.action="apt_ajax_upload")

🔗 References

📤 Share & Export