CVE-2024-8353
mass1Unauthenticated PHP Object Injection to RCE in GiveWP WordPress Plugin
GiveWP, the WordPress donation and fundraising plugin, is vulnerable to unauthenticated PHP object injection (CWE-502) through deserialization of untrusted input in parameters such as 'give_title' and 'card_address'. A stripslashes_deep call applied to the user_info data bypasses the plugin's is_serialized check, allowing attacker-supplied serialized payloads to be accepted and instantiated as PHP objects during donation submissions. Because a usable POP chain is present in the plugin, attackers can delete arbitrary files and achieve remote code execution on the affected site. All GiveWP versions up to and including 3.16.1 are affected, and the flaw is essentially the same vulnerability as CVE-2024-5932. The issue was mostly patched in 3.16.1 with further hardening added in 3.16.2; it carries a critical CVSS 9.8 score, has no known public proof-of-concept, is not yet in CISA's KEV catalog, and shows a high 28.7% EPSS probability of exploitation within 30 days.
What to do: Upgrade GiveWP to version 3.16.2 or later, which contains the additional hardening beyond the partial 3.16.1 fix. Sites that cannot update immediately should review logs and the site for signs of exploitation such as unexplained file deletions or unexpected code changes, and consider a web application firewall rule that blocks serialized-looking input in donation form fields.
| GiveWP – Donation Plugin and Fundraising Platform (WordPress plugin) | all versions up to and including 3.16.1 |
Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.
The GiveWP – Donation Plugin and Fundraising Platform plugin for WordPress is vulnerable to PHP Object Injection in all versions up to, and including, 3.16.1 via deserialization of untrusted input via several parameters like 'give_title' and 'card_address'. This makes it possible for unauthenticated attackers to inject a PHP Object. The additional presence of a POP chain allows attackers to delete arbitrary files and achieve remote code execution. This is essentially the same vulnerability as CVE-2024-5932, however, it was discovered the the presence of stripslashes_deep on user_info allows the is_serialized check to be bypassed. This issue was mostly patched in 3.16.1, but further hardening was added in 3.16.2.
- Vendors
- givewp
- Products
- givewp
- Ecosystems
- WordPress
- Weakness
- CWE-502
- Vector
- CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H