CVE-2023-32513

7.5 HIGH

📋 TL;DR

CVE-2023-32513 is a PHP object injection vulnerability in the GiveWP WordPress plugin that allows attackers to execute arbitrary code through deserialization of untrusted data. This affects all WordPress sites running GiveWP version 2.25.3 or earlier. Successful exploitation could lead to complete site compromise.

💻 Affected Systems

Products:
  • GiveWP - Donation Plugin and Fundraising Platform
Versions: n/a through 2.25.3
Operating Systems: Any OS running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: All WordPress installations with vulnerable GiveWP versions are affected regardless of configuration.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Remote code execution leading to complete server compromise, data theft, malware installation, and website defacement.

🟠

Likely Case

Unauthenticated attackers gain administrative access to WordPress, allowing them to modify content, install backdoors, or pivot to other systems.

🟢

If Mitigated

With proper input validation and security controls, exploitation attempts would be blocked or detected before causing damage.

🌐 Internet-Facing: HIGH
🏢 Internal Only: LOW

🎯 Exploit Status

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

Public exploit details available on Patchstack and security research sites. Attack requires no authentication.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 2.25.4 and later

Vendor Advisory: https://wordpress.org/plugins/give/#developers

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins → Installed Plugins. 3. Find GiveWP plugin. 4. Click 'Update Now' if available. 5. Alternatively, download latest version from WordPress.org and manually update.

🔧 Temporary Workarounds

Disable GiveWP Plugin

all

Temporarily disable the vulnerable plugin until patching is possible

wp plugin deactivate give

Web Application Firewall Rule

all

Block malicious requests targeting the vulnerable endpoint

🧯 If You Can't Patch

  • Implement strict WAF rules to block deserialization attempts
  • Restrict access to WordPress admin interface using IP whitelisting

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin → Plugins → GiveWP version. If version is 2.25.3 or earlier, you are vulnerable.

Check Version:

wp plugin list --name=give --field=version

Verify Fix Applied:

Verify GiveWP version is 2.25.4 or later in WordPress admin panel.

📡 Detection & Monitoring

Log Indicators:

  • Unusual POST requests to GiveWP endpoints
  • PHP deserialization errors in logs
  • Unauthorized admin user creation

Network Indicators:

  • HTTP requests containing serialized PHP objects
  • Traffic to GiveWP-specific endpoints from unusual sources

SIEM Query:

source="wordpress.log" AND ("give" OR "givewp") AND ("unserialize" OR "php_object" OR "admin_user")

🔗 References

📤 Share & Export