RegistrationMagic accepts mismatched or replayed PayPal captures before 6.0.9.5
RegistrationMagic before 6.0.9.5 verifies only that a submitted PayPal capture reports COMPLETED. It does not bind the capture to the registration by checking amount, currency or payee and does not reject a reused capture. An unauthenticated attacker can use a genuine low-value capture to finalize a more expensive registration, then replay it for additional registrations. The callback endpoint or action, capture-ID parameter and verification and finalization functions are not disclosed.
- Component
- RegistrationMagic
- Plugin slug
registrationmagic- Affected
- < 6.0.9.5
- Safe version
6.0.9.5- Published
- Aug 06, 2026
This CVE was published Aug 06, 2026 and is one of 18 known issues for this plugin.
Update, patch or deactivate.
Update RegistrationMagic to 6.0.9.5 or later. Reconcile registrations against PayPal capture amount, currency, payee and unique capture ID, and revoke mismatched or replayed registrations.
A safe version is available, so updating to that version or later is the preferred remediation. If an immediate update is not practical, consider a targeted application patch or temporarily restricting the affected functionality.
Deactivate only when warranted by your risk profile, or when advised by your hosting provider in the limited circumstances where the vulnerability cannot otherwise be mitigated. If you’re unsure which action is appropriate, contact Fused or your hosting provider for guidance.
Technical description
The RegistrationMagic WordPress plugin before 6.0.9.5 does not compare the verified PayPal capture's amount, currency, payee, or prior use against the registration it is finalising: its server-side check only confirms the capture status is COMPLETED. An unauthenticated attacker can therefore finalise an expensive paid registration with any genuinely-completed low-value capture, and replay a single capture across unlimited registrations because captures are not de-duplicated.
CVE / CNA vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N