>_ VIBECODECONTROLE Controleren
← Alle artikelen Stripe webhooks veilig bouwen met AI-gegenereerde code

Stripe webhooks veilig bouwen met AI-gegenereerde code

Stel je voor: iemand krijgt toegang tot je betaalde product zonder dat hij er iets voor heeft betaald. Niet door te hacken, maar gewoon door een verzoekje te sturen naar je server.

Dit klinkt vergezocht. Maar het is precies wat er kan gebeuren als je Stripe webhooks niet goed zijn beveiligd.

Wat is een webhook?

Als iemand betaalt via Stripe, stuurt Stripe een bericht naar jouw app: “betaling gelukt”. Jouw app verwerkt dat bericht en geeft de gebruiker toegang.

Dat bericht heet een webhook. Het is een gewoon HTTP-verzoek, net zoals elk ander verzoek dat je server ontvangt.

Wat gaat er mis?

Het probleem: jouw server weet niet automatisch of dat verzoek echt van Stripe komt. Zonder extra beveiliging kan iedereen een nep-betaling sturen en toegang krijgen.

De oplossing heet handtekeningcontrole. Stripe voegt een handtekening toe aan elk verzoek. Jouw server controleert die handtekening voordat hij iets doet.

Als de handtekening niet klopt, negeer je het verzoek. Zo simpel is het.

Hoe doet AI-code het?

Helaas slaat AI deze stap regelmatig over. De webhook wordt gebouwd, de data wordt verwerkt, maar de verificatie ontbreekt. Soms staat er een opmerking als “voeg hier verificatie toe”, maar die code zit er niet in.

Resultaat: je hebt een werkende webhook die iedereen kan misbruiken.

Hoe ziet correcte verificatie eruit?

In de meeste frameworks gaat het zo:

  1. Je ontvangt het webhook-verzoek als ruwe bytes. Niet als verwerkte JSON. Dat is belangrijk.
  2. Je haalt de Stripe-Signature header op uit het verzoek.
  3. Je gebruikt de Stripe-bibliotheek om te controleren of de handtekening klopt met je geheime webhook-sleutel.
  4. Pas daarna verwerk je de betaling.

Stap 1 wordt vaak verkeerd gedaan. Als je framework automatisch JSON verwerkt, is de handtekening al ongeldig, ook al is het verzoek wel echt van Stripe.

Wat is het risico?

Dit is geen theoretisch risico. Het zijn dingen die echt gebeuren bij apps die dit niet controleren.

Twijfel je of jouw Stripe-integratie dit goed doet? Dat is een van de eerste dingen die we nakijken.

Wil je jouw project laten controleren?

Binnen 3 dagen een concreet rapport van een specialist.

Laat jouw project controleren →

Gratis

Meer leren over goed en veilig vibecoden?

Ontvang gratis tips rechtstreeks in je inbox.

Geen spam. Uitschrijven kan altijd.