API Security Test
REST, GraphQL, SOAP - wij vinden wat uw developers misten
API's zijn het nieuwe aanvalsoppervlak. Wij testen REST-, GraphQL- en SOAP-API's op authenticatielekken, autorisatiefouten, excessive data exposure en injectie-kwetsbaarheden. Met diepgaand begrip van moderne API-architecturen.
Wat is een API pentest?
Een API pentest is een beveiligingstest gericht op uw Application Programming Interfaces. API's zijn de communicatielaag tussen applicaties, mobiele apps, microservices en externe partners. Ze verwerken vaak de meest gevoelige data - persoonsgegevens, financiële transacties, medische dossiers - maar worden zelden zo grondig beveiligd als de front-end die erop draait.
Wij testen REST-, GraphQL- en SOAP-API's op kwetsbaarheden die geautomatiseerde scanners structureel missen. De OWASP API Security Top 10 is ons startpunt, maar de kwetsbaarheden die wij het vaakst rapporteren vallen daarbuiten: IDOR's waarmee u data van andere klanten kunt opvragen, race conditions in betaalflows, JWT's die niet correct gevalideerd worden, rate limiting die makkelijk te omzeilen is.
Veelvoorkomende API-kwetsbaarheden
- Broken Object Level Authorization (BOLA) - kan een gebruiker data van andere gebruikers opvragen door ID's te manipuleren? Dit vinden wij bij meer dan de helft van de API's die wij testen.
- Broken Function Level Authorization (BFLA) - kan een gewone gebruiker admin-endpoints aanroepen?
- Excessive Data Exposure - stuurt de API meer data terug dan de client nodig heeft?
- Mass Assignment - kan een gebruiker read-only velden overschrijven?
- Injection - SQL, NoSQL, GraphQL en command injection via API-parameters.
- Improper rate limiting - ontbrekende throttling op authenticatie-endpoints.
Waarom een API pentest laten uitvoeren?
API's zijn het snelstgroeiende aanvalsoppervlak. API-gerelateerde datalekken zijn aan de orde van de dag:
- API's worden over het hoofd gezien: de webapplicatie krijgt een pentest, de onderliggende API niet. Dat is alsof u de voordeur beveiligt maar de achterdeur openlaat.
- Documentatie klopt niet: Swagger/OpenAPI-specs zijn vaak verouderd. Wij vinden undocumented endpoints die buiten het zicht van ontwikkelaars vallen.
- Autorisatiefouten zijn #1: BOLA en BFLA zijn verantwoordelijk voor het merendeel van API-datalekken. Geen scanner vindt ze.
- Microservices vermenigvuldigen het risico: elke service met een eigen API vergroot het aanvalsoppervlak.
Onze aanpak
Onze API-pentesters combineren diep begrip van API-architecturen met aanvalservaring. Korte lijnen: kritieke bevindingen delen wij direct.
- API discovery - alle endpoints inventariseren via documentatie, traffic analyse en actieve fuzzing. Wij vinden ook undocumented en deprecated endpoints.
- Authentication testing - JWT-validatie (algoritme confusion, key disclosure), OAuth-flows, API key management, session handling.
- Authorization testing - systematisch testen op BOLA en BFLA. Kan gebruiker A bij data van gebruiker B? Kan een reguliere gebruiker admin-functionaliteit uitvoeren?
- Input validation - injection testing (SQL, NoSQL, GraphQL query manipulation), parameter tampering, mass assignment.
- Rate limiting & abuse - brute force bescherming, resource exhaustion, business logic abuse.
- Data exposure - API-responses analyseren op overmatige data, interne identifiers, stack traces, debug-informatie.
- Rapportage - per bevinding: beschrijving, proof-of-concept request/response, CVSS-score en aanbeveling. Hertest op aanvraag.
Wat kost een API pentest?
Ons uurtarief is €175 per uur. De kosten worden bepaald door:
- Aantal endpoints: 10 endpoints is minder dan 200.
- Logica-complexiteit: betaal-API's en multi-tenant-API's vergen meer testuren.
- Authenticatie/autorisatie: het aantal rollen en permissie-niveaus bepaalt de hoeveelheid autorisatietests.
- Type API: GraphQL vergt meer tijd dan REST door de flexibiliteit van queries.
Veelgestelde vragen
Testen jullie ook GraphQL API's?
Ja. GraphQL kent specifieke risico's die REST niet heeft: introspection queries die het schema onthullen, diep geneste queries die denial-of-service veroorzaken, batch-aanvallen die rate limiting omzeilen. Wij testen dit regelmatig en weten precies waar we moeten zoeken.
Hebben jullie API-documentatie nodig?
Handig, maar niet vereist. Bij blackbox ontdekken wij endpoints zelf. Bij greybox/whitebox gebruiken wij uw Swagger/OpenAPI-spec als startpunt en testen of de werkelijkheid overeenkomt met de documentatie. Vaak niet - en dat is precies waar de kwetsbaarheden zitten.
Wat is het verschil tussen een API-pentest en een webapplicatie-pentest?
Een webapplicatie-pentest test de volledige applicatie inclusief frontend. Een API-pentest focust op de API-laag: endpoints, authenticatie, autorisatie, data-handling. Heeft u een SPA met API-backend? Dan adviseren wij om beide te testen. Dat bespreken we in het scopingsgesprek.
Gerelateerde diensten
Web Applicatie & API Pentest
OWASP, businesslogica, auth-bypass - van login tot back-end
// OffensiveMobiele App Pentest
iOS en Android - van binaire analyse tot runtime hooking
// OffensiveCloud Security (AWS & GCP)
IAM misconfigs, storage exposure en privilege escalation in AWS en GCP
Klaar om uw security te testen?
Neem contact op met ons team voor een vrijblijvend gesprek over uw security uitdagingen.