CVE-2026-19658: Give Tributes <= 2.3.1 - Unauthenticated PHP Object Injection via 'give_tributes_ecard_notify[recipient][personalized][]' Parameter
The Give Tributes plugin for WordPress is vulnerable to PHP Object Injection in all versions up to, and including, 2.3.1 via deserialization of untrusted input . This makes it possible for unauthenticated attackers to inject a PHP Object. No known POP chain is present in the vulnerable software, which means this vulnerability has no impact unless another plugin or theme containing a POP chain is installed on the site. If a POP chain is present via an additional plugin or theme installed on the target system, it may allow the attacker to perform actions like delete arbitrary files, retrieve sensitive data, or execute code depending on the POP chain present. This vulnerability is only reachable when the "Allow Multiple Recipients" option is enabled for the donation form, as the single-recipient code path applies sanitizetextareafield() which would neutralize the payload. Exploitation additionally requires the eCard "Custom Message" option to be disabled, which is the plugin default: when it is enabled the personalized message becomes a required field and GiveWP's giveclean() blanks serialized input during validation, causing the donation to be rejected before it is stored.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
Give Tributes (WordPress)to a version that resolves this vulnerability.Fixed in 2.3.1 - Configuration
Disable the eCard "Custom Message" option (required for exploitation; when enabled the personalized message becomes a required field and GiveWP's give_clean() blanks serialized input during validation, causing donations to be rejected before storage).
Give Tributes (WordPress) eCard Custom Message option = disabled - Configuration
Disable the "Allow Multiple Recipients" option for the donation form; the vulnerability is only reachable when this option is enabled.
Give Tributes (WordPress) donation form Allow Multiple Recipients = disabled - Compensating control
Ensure no additional plugin or theme that contains a PHP POP chain is installed on the site, since exploitation impact depends on the presence of a POP chain in another installed component.
Event History
Frequently Asked Questions
Which sites are actually exposed to exploitation?
A site is exposed only if it runs Give Tributes 2.3.1 or earlier, has a donation form with “Allow Multiple Recipients” enabled, and has the eCard “Custom Message” option disabled. The custom-message setting is disabled by default, but the multiple-recipient option must also be enabled.
Does successful exploitation require anything else installed on the site?
Yes. The vulnerable plugin has no known usable POP chain, so object injection alone has no stated impact. An additional installed plugin or theme must provide a POP chain for an attacker to potentially delete files, retrieve sensitive data, or execute code.
Can an attacker exploit this without an account or user interaction?
Yes. The issue is described as exploitable by unauthenticated attackers, with no privileges or user interaction required, provided the affected form configuration and a usable POP chain are present.
How can I determine whether the vulnerable path is reachable on my site?
Check whether Give Tributes is version 2.3.1 or earlier, then review each donation form’s eCard configuration. The vulnerable path requires “Allow Multiple Recipients” to be enabled and “Custom Message” to be disabled; enabling Custom Message causes serialized input to be blanked during validation and the donation to be rejected.