✓ OSCP · OSWE · OSEP gecertificeerd | Joost voert elke test zelf uit — geen juniors | Reactie binnen 1 werkdag | Gevestigd in Haarlem

Pentest voor e-commerce en webshops: specifieke risico’s

Een webshop is voor een aanvaller een aantrekkelijker doelwit dan de meeste bedrijven beseffen: er staan betaalgegevens, klantdata en vaak een koppeling met voorraad- en logistieke systemen op het spel, en de drempel om misbruik te maken van een kwetsbaarheid is laag zodra iemand gewoon als klant kan inloggen. Een pentest voor e-commerce verschilt daarom op een aantal specifieke punten van een reguliere webapplicatie-pentest.

Betaalgegevens: PCI DSS is niet optioneel

Zodra een webshop kaartgegevens verwerkt, opslaat of doorgeeft, valt deze onder PCI DSS. Onder versie 4.0 betekent dat minimaal jaarlijkse interne en externe penetratietesten, plus een hertest na elke significante wijziging aan de infrastructuur of applicaties binnen de kaartgegevensomgeving. De meeste webshops gebruiken een externe betaalprovider om zelf geen kaartgegevens te hoeven opslaan, wat de scope verkleint, maar niet elimineert: de integratie met die provider, de manier waarop bedragen worden doorgegeven en gevalideerd, en of het mogelijk is om een afgerond bedrag te manipuleren vóór het naar de betaalprovider gaat, blijven belangrijke testpunten. Zie onze PCI DSS pentest pagina voor de volledige scope.

Businesslogica rond prijzen, kortingen en voorraad

Webshops hebben een eigen categorie kwetsbaarheden die weinig met klassieke technische hacks te maken hebben, maar alles met het omzeilen van bedrijfsregels:

  • Kun je een kortingscode meerdere keren gebruiken, of combineren terwijl dat niet de bedoeling is?
  • Is het mogelijk om de prijs van een product te manipuleren tussen het winkelmandje en de daadwerkelijke afrekening?
  • Kun je voorraad reserveren of blokkeren door bestellingen te plaatsen en nooit af te ronden?
  • Zijn kortingsregels en cadeaubonnen te combineren op manieren die financieel verlies opleveren?

Dit soort kwetsbaarheden vindt een geautomatiseerde scanner zelden; ze vragen een tester die de webshop daadwerkelijk doorloopt als klant én als aanvaller.

Klantaccounts als aanvalsvector

Met honderden tot miljoenen klantaccounts is een webshop een groot doelwit voor credential stuffing: aanvallers proberen gelekte wachtwoorden van andere sites op jouw platform. Een pentest kijkt daarom standaard naar rate limiting op inlogpogingen, of accounts informatie lekken (bijvoorbeeld of een foutmelding verraadt of een e-mailadres al bestaat), en of persoonlijke bestelgeschiedenis en adresgegevens goed zijn afgeschermd tussen klanten onderling.

Piekmomenten vragen om een ander testmoment

Veel webshops draaien hun grootste omzet rond specifieke piekmomenten zoals Black Friday of de feestdagen. Een pentest vlak vóór zo’n piekperiode, in plaats van ergens willekeurig in het jaar, zorgt ervoor dat net de systemen die het zwaarst belast worden en het meest aantrekkelijk zijn voor misbruik, extra scherp zijn getest. Plan wel op tijd: een grondige pentest en de tijd om bevindingen op te lossen kosten weken, niet dagen.

Een voorbeeld uit de praktijk

Bij een recente opdracht bleek het mogelijk om tijdens het afrekenproces de totaalprijs van een bestelling aan te passen door een verborgen formulierveld in de browser te wijzigen vlak voordat de betaling werd geïnitieerd. De betaalprovider zelf verwerkte het (gemanipuleerde) bedrag correct, het probleem zat niet daar, maar in de webshop die het bedrag niet opnieuw valideerde voordat het naar de provider werd doorgestuurd. Op papier was “de betaling” dus technisch correct verwerkt, terwijl de webshop feitelijk voor een zelfgekozen bedrag kon worden afgerekend. Precies dit soort kwetsbaarheden, op het snijvlak van techniek en bedrijfslogica, zijn waar een gerichte e-commerce pentest voor bedoeld is.

Hoe MonkeysICT e-commerceplatforms test

Naast de reguliere webapplicatiebeveiliging testen we altijd expliciet op businesslogica rond prijzen, kortingen en voorraad, en nemen we de koppeling met je betaalprovider mee in de scope. Dat geeft een realistischer beeld van het risico dan een test die alleen naar technische kwetsbaarheden kijkt.

Scroll naar boven