Niveaus
Hoe diep kijken we?
De letter (A–G) zegt hoe goed je software is. Het niveau (1–4) zegt hoe diep we gekeken hebben. Ze staan altijd samen, bijvoorbeeld 'B · niveau 2'. Elk niveau bevat alles van het niveau ervoor.
| Kenmerk | Niveau 1Basisscan | Niveau 2Gekeurd | Niveau 3Gekeurd Plus | Niveau 4Kritiek |
|---|---|---|---|---|
| Voor | Interne tools, kleine apps, een eerste meting | De meeste zakelijke apps | Aanbestedingen, veel persoonsgegevens, klanten onder NIS2 | Zorg, overheid, financiële sector (DORA), hoog-risico-AI |
| Wie meet | Volledig automatisch | Automatisch + erkende keurder | Keurder + pentester | Keurder + pentester, doorlopend |
| Checks | 45 | ±100, plus checks die je erbij kiest | Alles van niveau 2 + verplichte uitbreidingen | Alles, met de strengste drempels |
| Werkt het echt? | — | Ja: functies doen wat ze beloven, negatieve tests op inloggen, rechten en invoer, scan van de draaiende app | Ja, dieper | Ja, dieper |
| Aanvalstests | — | Gerichte aanvalstests op de meest voorkomende risico's | 4 dagen handmatige pentest + hertest | 8 dagen pentest |
| Hoogste letter | B | A | A | A |
| Geldig | Zolang de scan actueel is | 12 maanden, met automatische checks bij elke release | 12 maanden | Doorlopend |
| Beschikbaar | Nu, gratis | In voorbereiding (pilots) | In voorbereiding (pilots) | Vanaf juli 2028 |
Niveau 1 controleert automatisch
Afhankelijkheden
bekende lekken (dagelijks bijgewerkt), verzonnen of verdachte pakketten, verouderde frameworks, licenties, lockfiles.
Geheimen
API-sleutels, wachtwoorden en tokens in code, configuratie, de JavaScript-bundel en de volledige git-geschiedenis.
Bouwen met AI
agentbestanden (zoals CLAUDE.md en MCP-configuratie) zonder geheimen of onveilige instructies, en waar AI in het product zit.
Code
injectie (SQL, OS, XSS), zwakke cryptografie, foutafhandeling, achtergebleven rommel, onveilige functies in de browser.
AI in het product
de uitvoer van het model wordt niet blind uitgevoerd, er zijn limieten op verbruik.
Pipeline en repository
tests en beveiligingsscans in de pipeline, een beschermde hoofdbranch, veilige repo-instellingen.
Live site
TLS, beveiligingsheaders, cookies, geen trackers vóór toestemming, e-mailbeveiliging (SPF, DKIM, DMARC).
Niveau 2 doet daar bovenop
Testen of het werkt
Knoppen, validaties en beveiliging doen wat ze beloven. We testen inloggen, rechten en invoer met foute en kwaadwillige gegevens, en scannen de draaiende app in een testomgeving.
Gerichte aanvalstests
Zo'n 14 tests op de plekken waar het meestal misgaat:
- kan gebruiker A de gegevens van gebruiker B zien
- zijn klanten van elkaar gescheiden
- zijn de API's afgeschermd
- inloggen via een externe dienst
- misleiden van AI-functies (prompt injection) en lekken via AI
- GraphQL, XML en WebSockets
- gateway en firewall
- opslag en verkeer van mobiele apps
Een keurder kijkt mee
Rechten en inloggen, structuur van de code, hosting en cloud, databank, logging, koppelingen, AI-inventaris, en de privacyverklaring tegenover wat de app echt doet.
Bewijs van het proces
Meldbeleid voor kwetsbaarheden, wijzigingsbeheer, releases, foutenbeheer.
Niveau 2 is geen volledige pentest. Die begint bij niveau 3.