# Charitable – Donation & Fundraising Platform (Donation Forms, Recurring Donations & Fundraising Campaigns) <= 1.8.14.1 - Unauthenticated Stored Cross-Site Scripting via Donation Log

- **ID:** WPSEC-2026-2657
- **Plugin:** Charitable – Donation & Fundraising Platform (Donation Forms, Recurring Donations & Fundraising Campaigns) (`charitable`), https://wordpress.org/plugins/charitable/
- **Affected versions:** from 1.2.0 before 1.8.15
- **Fixed in:** 1.8.15 (Update to 1.8.15 or later.)
- **Severity:** High 7.2 (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N)
- **Weakness:** CWE-79
- **Usage among sites WPSec scans:** plugin Low, affected versions Low (as of 2026-11-06)
- **Attack surface analysis:** https://attacksurface.wpsec.com/plugin/charitable
- **Fix released:** 2026-11-05
- **Published:** 2026-11-06
- **URL:** https://wpsec.com/vuln/WPSEC-2026-2657/

## Description

The Charitable plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the donation log in all versions up to, and including, 1.8.14.1, due to insufficient input sanitization and output escaping. Values from PayPal IPN requests (the full IPN payload when a check fails, the transaction ID, parent transaction ID, reason code and payment status) and the Stripe payment method ID submitted with the donation form were written to the donation log without sanitization, and the donation log metabox printed log messages without escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts that execute whenever an administrator views the affected donation, on sites using the PayPal or Stripe gateway.

## References

- https://wpsec.com/vuln/WPSEC-2026-2657/
- https://plugins.svn.wordpress.org/charitable/tags/1.8.15/
- https://wordpress.org/plugins/charitable/

Source: WPSec, https://wpsec.com/vuln/WPSEC-2026-2657/

License: CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Free to use, share and adapt, also commercially, if you credit WPSec and link to this advisory.
