CVE-2025-2025

6.5 MEDIUM

📋 TL;DR

The GiveWP WordPress plugin has an authorization vulnerability that allows unauthenticated attackers to access sensitive earnings report data. This affects all WordPress sites using GiveWP version 3.22.0 or earlier. Attackers can retrieve donation and financial information without any authentication.

💻 Affected Systems

Products:
  • GiveWP - Donation Plugin and Fundraising Platform for WordPress
Versions: All versions up to and including 3.22.0
Operating Systems: Any OS running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: Affects all WordPress installations with the vulnerable plugin version installed and activated.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete exposure of all donation records, donor information, and financial data stored in earnings reports, potentially including personally identifiable information (PII) and payment details.

🟠

Likely Case

Unauthorized access to donation amounts, donor names, email addresses, and transaction dates from earnings reports, compromising donor privacy and organizational financial data.

🟢

If Mitigated

No data exposure if proper access controls are implemented or the vulnerability is patched before exploitation.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

The vulnerability requires no authentication and minimal technical skill to exploit via direct API calls to the vulnerable function.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 3.22.1 or 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 and check for updates
4. Update to version 3.22.1 or later
5. Verify the update completed successfully

🔧 Temporary Workarounds

Disable Plugin

all

Temporarily disable the GiveWP plugin until patched

wp plugin deactivate give

Restrict Access via .htaccess

linux

Block access to the vulnerable endpoint using web server rules

# Add to .htaccess in WordPress root directory
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_URI} give_reports_earnings
RewriteRule .* - [F,L]
</IfModule>

🧯 If You Can't Patch

  • Implement web application firewall (WAF) rules to block requests to the give_reports_earnings endpoint
  • Monitor server logs for unauthorized access attempts to earnings report functionality

🔍 How to Verify

Check if Vulnerable:

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

Check Version:

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

Verify Fix Applied:

After updating, verify GiveWP version shows 3.22.1 or later in WordPress admin panel.

📡 Detection & Monitoring

Log Indicators:

  • HTTP requests to /wp-admin/admin-ajax.php with action=give_reports_earnings from unauthenticated users
  • Unusual access patterns to earnings report functionality

Network Indicators:

  • Unusual spikes in requests to WordPress admin-ajax.php endpoint
  • Requests containing give_reports_earnings parameter from external IPs

SIEM Query:

source="web_server_logs" AND uri="/wp-admin/admin-ajax.php" AND query="action=give_reports_earnings" AND NOT user_agent="WordPress/*"

🔗 References

📤 Share & Export