𝗔𝘂𝘁𝗵𝗲𝗻𝘁𝗶𝗰𝗮𝘁𝗶𝗻𝗴 𝗮 𝗪𝗲𝗯𝗵𝗼𝗼𝗸 𝗜𝘀𝗻'𝘁 𝗩𝗮𝗹𝗶𝗱𝗮𝘁𝗶𝗻𝗴 𝗜𝘁

Many developers ship a dangerous bug to production. They confuse authentication with validation.

Authentication means the message came from the right provider. Validation means the data inside the message is correct.

If you only do the first step, you lose money.

A recent WordPress vulnerability (CVE-2026-9189) shows this error. The Contact Form 7 PayPal and Stripe Add-on failed to check payment amounts.

Here is how an attacker exploits this:

The plugin trusted the messenger but ignored the message.

Do not make this mistake. When you handle webhooks, follow these steps:

If you use the Contact Form 7 PayPal and Stripe Add-on version 2.4.9 or older, update it now. Every unpaid order is a target for this exploit.

Always authenticate the messenger, then check the data.

Source: https://dev.to/nitishyaddala/authenticating-a-webhook-isnt-validating-it-a-payment-bypass-lesson-cve-2026-9189-248k