CVE-2026-10038 json
Charitable <= 1.8.11.1 - Authenticated (Subscriber+) Insecure Direct Object Reference to Arbitrary Attachment Deletion via 'avatar' Parameter
published 2026-06-05 5 mo ago modified 2026-07-23 3 mo ago also EUVD-2026-34927
- cvss
- 4.3
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.3%
- EPSS 0.3% chance of exploitation in 30 days, percentile 21%
- public exploits
- 0
- none known
Summary
The Charitable – Donation Plugin for WordPress – Fundraising with Recurring Donations & More plugin for WordPress is vulnerable to Insecure Direct Object Reference / Authorization Bypass leading to Arbitrary Attachment Deletion in versions up to, and including, 1.8.11.1 via the profile avatar update flow. This is due to the save_avatar() function in Charitable_Profile_Form calling wp_delete_attachment() on an attachment ID read from the user's 'avatar' meta without validating that the attachment is owned by the user, combined with Charitable_Data_Processor::process_picture() returning the raw posted value when no file is uploaded, allowing the 'avatar' user meta to be poisoned with any attacker-chosen attachment ID. This makes it possible for authenticated attackers, with Subscriber-level access and above, to delete arbitrary attachments from the Media Library by performing a two-request chain (first poisoning the stored avatar meta value with a target attachment ID, then triggering deletion via a normal avatar upload).
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- partial
- Assessed
- 5 mo ago
Exploit prediction
0.29% chance of exploitation in the next 30 days, higher than 21% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 4.3 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N |
Affected products
- smub Charitable – Donation Plugin for WordPress – Fundraising with Recurring Donations & More
Classification
- Weakness
-
- CWE-639 Authorization Bypass Through User-Controlled Key
- Technology feeds
References
- wordfence.com /threat-intel/vulnerabilities/id/657bea00-9709-48b8-807a-c9a18b0aee1d?source=cve
- plugins.trac.wordpress.org /browser/charitable/tags/1.8.10/includes/abstracts/abstract-class-charitable-form.php#L429
- plugins.trac.wordpress.org /browser/charitable/tags/1.8.10/includes/utilities/class-charitable-data-processor.php#L270
- plugins.trac.wordpress.org /browser/charitable/tags/1.8.10/includes/users/class-charitable-user.php#L986
- plugins.trac.wordpress.org /browser/charitable/tags/1.8.10.5/includes/forms/class-charitable-profile-form.php#L728
- plugins.trac.wordpress.org /browser/charitable/tags/1.8.10.5/includes/forms/class-charitable-profile-form.php#L724
- plugins.trac.wordpress.org /browser/charitable/tags/1.8.10.5/includes/utilities/class-charitable-data-processor.php#L270
- plugins.trac.wordpress.org /browser/charitable/tags/1.8.10.5/includes/users/class-charitable-user.php#L986
- plugins.trac.wordpress.org /browser/charitable/tags/1.8.10.5/includes/abstracts/abstract-class-charitable-form.php#L429
- plugins.trac.wordpress.org /browser/charitable/tags/1.8.10/includes/forms/class-charitable-profile-form.php#L728
- plugins.trac.wordpress.org /browser/charitable/tags/1.8.10/includes/forms/class-charitable-profile-form.php#L724
- plugins.trac.wordpress.org /changeset/3557047/charitable/trunk/includes/forms/class-charitable-profile-form.php?old=3435951&old_path=char
Sources
- CVE List CVE-2026-10038
- NVD CVE-2026-10038
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.