CVE-2025-4102

7.2 HIGH

📋 TL;DR

The Beaver Builder Plugin (Starter Version) for WordPress has a vulnerability allowing authenticated administrators to upload arbitrary files due to missing file type validation. This can lead to remote code execution on affected WordPress sites. Only sites using vulnerable versions of this specific plugin are affected.

💻 Affected Systems

Products:
  • Beaver Builder Plugin (Starter Version) for WordPress
Versions: All versions up to and including 2.9.1
Operating Systems: Any OS running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: Requires authenticated administrator access to exploit. The vulnerability was partially patched in version 2.9.1 but not fully resolved.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Full server compromise through remote code execution, allowing attackers to install backdoors, steal data, or use the server for malicious activities.

🟠

Likely Case

Attackers with administrator credentials upload malicious files to execute arbitrary code, potentially taking control of the WordPress site.

🟢

If Mitigated

With proper access controls and file upload restrictions, impact is limited to file uploads that don't execute due to server hardening.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: LIKELY
Unauthenticated Exploit: ✅ No
Complexity: LOW

Exploitation requires administrator credentials but is straightforward once access is obtained. The vulnerability is publicly documented.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Versions after 2.9.1

Vendor Advisory: https://www.wpbeaverbuilder.com/change-logs/?utm_medium=bb-lite&utm_source=repo-readme&utm_campaign=repo-changelog-page

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins > Installed Plugins. 3. Find Beaver Builder Plugin (Starter Version). 4. Click 'Update Now' if available. 5. Alternatively, download latest version from WordPress repository and replace plugin files.

🔧 Temporary Workarounds

Restrict File Uploads via .htaccess

linux

Add server-side restrictions to prevent execution of uploaded files in WordPress uploads directory

Add to .htaccess in wp-content/uploads: <FilesMatch "\.(php|php5|php7|phtml|phar)$">
  Order Allow,Deny
  Deny from all
</FilesMatch>

Remove Administrator Access

all

Temporarily disable or limit administrator accounts until patch is applied

🧯 If You Can't Patch

  • Implement strict access controls and monitoring for administrator accounts
  • Deploy web application firewall with file upload protection rules

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin panel > Plugins > Beaver Builder Plugin version. If version is 2.9.1 or earlier, you are vulnerable.

Check Version:

WordPress CLI: wp plugin list --name='Beaver Builder Plugin (Starter Version)' --field=version

Verify Fix Applied:

After updating, verify plugin version is higher than 2.9.1 in WordPress admin panel.

📡 Detection & Monitoring

Log Indicators:

  • Unusual file uploads to wp-content/uploads directory
  • POST requests to /wp-admin/admin-ajax.php with save_enabled_icons action
  • Administrator account logins from unusual locations

Network Indicators:

  • HTTP POST requests with file uploads to WordPress admin endpoints
  • Unusual outbound connections from web server after file uploads

SIEM Query:

source="wordpress.log" AND ("save_enabled_icons" OR "admin-ajax.php") AND ("upload" OR "file")

🔗 References

📤 Share & Export