Cloud, QA en beveiliging

Penetratietests voor webapplicaties

Gjethe test webapplicaties zoals aanvallers ze benaderen: logins en sessies, toegang tussen gebruikers en rollen, verwerking van invoer, betalingen en bedrijfslogica. Het testen volgt de OWASP-richtlijnen, elke bevinding komt met bewijs en een oplossing, en een hertest bevestigt dat de problemen weg zijn.

  • Gratis eerste adviesgesprek
  • Schriftelijke offerte voor uw project
  • Flexibele betaalmijlpalen
✓ build passed

In één oogopslag

Standards
OWASP Top 10, OWASP ASVS, WSTG
Focus
Toegangscontrole, logica, blootstelling van data
Aanpak
Meestal grey box met testaccounts
Resultaat
Rapport, oplossingen en hertest

Definition

Wat is penetratietesten voor webapplicaties?

Een penetratietest voor webapplicaties is een handmatige beveiligingsbeoordeling van een website of webapp die probeert de controles te omzeilen, bij data te komen die niet blootgesteld mag worden en de functies te misbruiken, om uitbuitbare zwakke plekken te vinden en op te lossen.

De meeste serieuze problemen in webapplicaties zijn niet exotisch. Een gebruiker die de factuur van een andere klant ziet door een getal in de adresbalk te wijzigen. Een beheeractie die het menu controleert maar niet het verzoek erachter. Een wachtwoordreset die opnieuw gebruikt kan worden. Aan de oppervlakte gedraagt dat zich normaal; de applicatie vertrouwt alleen het verkeerde. Ze vinden vraagt om een tester die begrijpt hoe de applicatie bedoeld is te werken en bewust controleert of de regels op de server worden afgedwongen en niet alleen in de interface zijn verborgen.

Voor wie is het?

  • SaaS-producten

    Meerdere klanten delen één systeem, dus de scheiding tussen accounts moet waterdicht zijn.

  • Webshops en boekingssystemen

    Checkout, kortingen, voorraad en betalingen zijn veelvoorkomende doelwitten voor misbruik.

  • Portalen met persoonsgegevens

    Portalen voor klanten, patiënten of leden moeten elke persoon alleen zijn of haar eigen gegevens tonen.

  • Teams voor een grote release

    Een test voor de lancering is het goedkoopste moment om structurele problemen te vinden.

Wat is inbegrepen en wat u houdt

Wat is inbegrepen

  • Inventarisatie van pagina's, functies en gebruikersrollen
  • Testen van authenticatie en wachtwoordreset
  • Review van sessiebeheer en tokens
  • Testen van toegangscontrole over gebruikers en rollen heen
  • Testen van invoerverwerking en injecties
  • Controles op uitvoer en verwerking aan de clientzijde
  • Review van het uploaden en downloaden van bestanden
  • Testen op misbruik van bedrijfslogica en workflows
  • Review van blootstelling van gevoelige data
  • Review van beveiligingsheaders, cookies en TLS
  • Review van scripts van derden en dependencies
  • Rapport met bewijs, oplossingen en een hertest

Wat u ontvangt

Aan het einde overgedragen. Van u om te houden.

  • Testrapport webapplicatie
  • Bevindingen gekoppeld aan OWASP-categorieën
  • Heldere beschrijving van elk bevestigd probleem
  • Geprioriteerd plan van aanpak
  • Hertestrapport

Wat wij in een webapplicatie altijd controleren

  • Kan een gebruiker de data van een andere gebruiker lezen of wijzigen?
  • Kan een gewone gebruiker rechtstreeks bij beheerfuncties?
  • Kunnen logins worden omzeild of hergebruikt?
  • Verlopen wachtwoordresets en uitnodigingen op de juiste manier?
  • Wordt gebruikersinvoer ooit als code of query behandeld?
  • Kunnen geüploade bestanden schade toebrengen op de server of aan andere gebruikers?
  • Kunnen prijzen, aantallen of workflowstappen worden gemanipuleerd?
  • Bevatten antwoorden data die de pagina nooit toont?

Waarom problemen met toegangscontrole de meest voorkomende bevinding zijn

Broken access control staat niet voor niets bovenaan de OWASP Top 10. Frameworks handelen veel beveiligingstaken automatisch af, maar ze kunnen niet weten welke records bij welke klant horen of op welke knoppen een manager mag drukken. Die regels zitten in uw code, functie voor functie geschreven, en één ontbrekende controle is genoeg.

Wij testen dit systematisch: belangrijke verzoeken worden herhaald als andere gebruikers en andere rollen, met gewijzigde identificatoren, om te zien of de server de regel afdwingt of alleen de interface de optie verbergt. Het is zorgvuldig, repetitief werk en daar komen veel van de ernstige bevindingen in moderne applicaties vandaan.

OWASP Top 10-gebieden die wij afdekken

GebiedVoorbeeld van wat wij controleren
Kapotte toegangscontrole (broken access control)Records van andere gebruikers bekijken of bewerken
Cryptografische foutenGevoelige data verzonden of opgeslagen zonder goede bescherming
InjectionQueries of commando's opgebouwd uit gebruikersinvoer
Onveilig ontwerpWorkflows die door het ontwerp te misbruiken zijn
Verkeerde beveiligingsconfiguratieDebugpagina's, standaardinstellingen, uitgebreide foutmeldingen
Kwetsbare componentenVerouderde bibliotheken met bekende zwakke plekken
Fouten in authenticatieZwakke afhandeling van login, sessies of resets
Integriteit van software en dataOnveilige updates of onbetrouwbare code van derden
Logging en monitoringAanvallen die onopgemerkt zouden blijven
Server-side request forgeryDe server haalt adressen op die een aanvaller bepaalt

De onderdelen van een app testen die scanners overslaan

Geautomatiseerde scanners zijn goed in het opsporen van gereflecteerde invoer en bekende patronen, maar ze begrijpen niet waarvoor uw applicatie dient. Ze kunnen niet weten dat een kortingscode maar één keer mag gelden, dat een conceptfactuur niet betaalbaar mag zijn of dat een supportmedewerker tickets mag zien maar de facturatie niet mag wijzigen. Die regels zijn specifiek voor uw bedrijf en het schenden ervan is precies hoe echt misbruik ontstaat.

Het grootste deel van een test van een webapplicatie besteden wij aan deze menselijke kant: lezen hoe elke functie bedoeld is te werken en dan controleren of de server dat daadwerkelijk afdwingt wanneer een verzoek in de verkeerde volgorde, met een gewijzigde waarde of vanaf het verkeerde account binnenkomt. Het is langzamer dan een scan en veel nuttiger, omdat het de problemen bereikt die geld en vertrouwen kosten en niet die een tool toch al had gemarkeerd.

Hoe penetratietesten voor webapplicaties werken, stap voor stap

Elke stap heeft een duidelijk resultaat dat u kunt beoordelen. De planning wordt afgesproken in uw offerte.

  1. 1

    Scope

    Applicatie, omgevingen, rollen en testaccounts schriftelijk afgesproken.

  2. 2

    Kaart

    Elke pagina, elk verzoek en elke rol geïnventariseerd voordat het testen begint.

  3. 3

    Testen

    Handmatig testen over de OWASP-gebieden en uw bedrijfslogica.

  4. 4

    Verifiëren

    Elke bevinding zorgvuldig bevestigd, met veilig bewijs van de impact.

  5. 5

    Rapport

    Bevindingen, risicoclassificaties en oplossingen die uw ontwikkelaars kunnen volgen.

  6. 6

    Hertest

    Oplossingen geverifieerd en het rapport bijgewerkt.

Tools, en wat uw offerte bepaalt

De prijs hangt af van uw project en wordt afgesproken in uw offerte. Dit zijn de zaken die hem beïnvloeden.

Penetratietesten voor webapplicaties: prijsfactoren
FactorWaarom het ertoe doet
Omvang van de applicatieMeer pagina's, formulieren en endpoints betekenen meer om in kaart te brengen en te testen.
Rollen en tenantsElke rol en klantgrens vermenigvuldigt de tests van toegangscontrole.
WorkflowsBetalingen, goedkeuringen en processen met meerdere stappen vragen om zorgvuldig logica testen.
OmgevingEen stabiele stagingkopie versnelt het testen; kwetsbare productie vraagt om meer zorg.
Toegang tot broncodeEen white box-review naast het testen voegt diepte en inspanning toe.

Veelgemaakte fouten die u moet vermijden

Wat we het vaakst mis zien gaan, en hoe een goed project dat voorkomt.

  • Knoppen verbergen in plaats van rechten controleren

    Als de server niet elk verzoek verifieert, kan iedereen die het adres vindt de functie gebruiken.

  • Waarden uit de browser vertrouwen

    Prijzen, gebruikers-ID's en rollen die de browser meestuurt kunnen worden gewijzigd; de server moet ze bepalen.

  • Uitgebreide foutmeldingen

    Stacktraces en databasefouten geven aanvallers een plattegrond van uw systeem.

  • Alleen met één account testen

    Zonder accounts voor meerdere gebruikers en rollen blijven problemen met toegangscontrole verborgen.

Veelgestelde vragen

Hebt u onze broncode nodig?

Nee, de meeste tests van webapps zijn grey box met testaccounts. Toegang tot broncode helpt ons dieper te gaan en is nuttig voor kritieke applicaties.

Kunt u een single-page app testen die met React of Vue is gebouwd?

Ja. De interface draait in de browser, dus we richten ons op de API's erachter, waar de echte beveiligingsbeslissingen moeten vallen.

Test u op productie of staging?

Beide kan. Staging is veiliger wanneer die productie goed nabootst. Als we productie testen, spreken we periodes af en vermijden we acties die echte klanten kunnen raken.

Maakt u echte bestellingen of e-mails aan?

Alleen waar afgesproken. Wij gebruiken testaccounts en testbetaalmodi en ruimen de testdata die we aanmaken op.

Hoe beoordeelt u risico?

Elke bevinding krijgt een beoordeling op basis van hoe gemakkelijk die kan worden uitgebuit en wat een aanvaller kan winnen, met CVSS waar dat past naast de zakelijke impact in gewone taal.

Is dekking van de OWASP Top 10 genoeg?

Het is een sterke basis. Wij testen ook uw specifieke bedrijfslogica, die geen algemene lijst volledig dekt.

Kunt u hertesten nadat wij dingen hebben opgelost?

Ja, een hertest van de bevindingen is inbegrepen en het rapport wordt met de resultaten bijgewerkt.

Kunt u de problemen ook oplossen?

Ja. Als ontwikkelteam kunnen wij de oplossingen doorvoeren, of de oplossingen van uw team beoordelen vóór de hertest.

Ontdek wat uw webapp werkelijk blootstelt.

Vertel ons wat u nodig hebt. U krijgt een eerlijke beoordeling, een duidelijk plan en een schriftelijke offerte. Het eerste adviesgesprek is altijd gratis.

  1. Wat er daarna gebeurt
  2. 1U vertelt ons wat u nodig hebt
  3. 2We streven ernaar binnen 24 uur te reageren met vragen
  4. 3U ontvangt een schriftelijke offerte voor uw project