CVE-2024-11921

4.8 MEDIUM

📋 TL;DR

This vulnerability in the GiveWP WordPress plugin allows attackers to execute reflected cross-site scripting (XSS) attacks by injecting malicious scripts through unsanitized parameters. The attack primarily targets high-privilege users like administrators who might click on specially crafted links. WordPress sites running vulnerable versions of GiveWP are affected.

💻 Affected Systems

Products:
  • GiveWP WordPress Plugin
Versions: All versions before 3.19.0
Operating Systems: Any OS running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: All WordPress installations with GiveWP plugin versions below 3.19.0 are vulnerable regardless of configuration.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

An attacker could steal administrator session cookies, gain administrative access to the WordPress site, install backdoors, deface the site, or exfiltrate sensitive donor data.

🟠

Likely Case

Attackers would use crafted phishing links to target administrators, potentially stealing session cookies to gain unauthorized access to the WordPress admin panel.

🟢

If Mitigated

With proper web application firewalls and user awareness training, the risk is reduced to minimal as the attack requires user interaction with malicious links.

🌐 Internet-Facing: MEDIUM
🏢 Internal Only: LOW

🎯 Exploit Status

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

Exploitation requires crafting malicious URLs with XSS payloads and convincing users to click them. The vulnerability is publicly documented with proof-of-concept details available.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 3.19.0

Vendor Advisory: https://wpscan.com/vulnerability/5f196294-5ba9-45b6-a27c-ab1702cc001f/

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 update is available. 5. Alternatively, download version 3.19.0+ from WordPress.org and manually update.

🔧 Temporary Workarounds

Web Application Firewall (WAF)

all

Deploy a WAF with XSS protection rules to block malicious requests containing XSS payloads.

Content Security Policy (CSP)

all

Implement a strict CSP header to prevent execution of inline scripts and unauthorized script sources.

🧯 If You Can't Patch

  • Temporarily disable the GiveWP plugin if not critically needed
  • Implement network segmentation to restrict access to WordPress admin interface

🔍 How to Verify

Check if Vulnerable:

Check GiveWP plugin version in WordPress admin panel under Plugins → Installed Plugins. If version is below 3.19.0, the system is vulnerable.

Check Version:

wp plugin list --name=give --field=version (if WP-CLI is installed)

Verify Fix Applied:

After updating, verify the GiveWP plugin version shows 3.19.0 or higher in the WordPress admin plugins list.

📡 Detection & Monitoring

Log Indicators:

  • Unusual GET requests with script tags or JavaScript payloads in URL parameters
  • Multiple failed login attempts following suspicious URL accesses

Network Indicators:

  • HTTP requests containing <script> tags or JavaScript functions in query parameters
  • Traffic patterns showing users accessing unusual URLs with encoded payloads

SIEM Query:

source="wordpress.log" AND ("<script" OR "javascript:" OR "onload=" OR "onerror=") AND uri_query="*"

🔗 References

📤 Share & Export