Alle checks
Wat we controleren
Alle 292 checks van CheckMijn.AI, uitgeschreven: wat we controleren, hoe, op welk niveau, en uit welke norm of wet het komt. De lijst is open (CC BY 4.0) en dezelfde voor iedereen.
292 checks
Legenda: ● verplicht · ◐ verplicht als het van toepassing is · ○ optioneel · – niet gevraagd
A. Product, scope en inventaris
Wie niet weet wat er in zijn software zit en welke AI erin gebruikt wordt, kan geen risico's inschatten of melden. De CRA en de AI Act vragen die inventaris.
| ID | Wat we controleren | N1 | N2 | N3 | N4 | Hoe |
|---|---|---|---|---|---|---|
| A-01 | Product, versielijn, scope en wat buiten scope valt zijn beschreven; de gekeurde versie is herkenbaar (versienummer in build en app) ISO/IEC 17067; CRA bijlage II |
– | – | ● | ● | document + keurder |
| A-02 | Architectuuroverzicht: componenten, datastromen, externe koppelingen, hosting en regio ISO/IEC 27034; CRA bijlage VII |
– | – | ● | ● | document + keurder |
| A-03 | SBOM in machineleesbaar formaat (SPDX of CycloneDX), automatisch bij de build gemaakt, minstens alle directe afhankelijkheden CRA bijlage I deel II (1); ISO/IEC 5962 |
● | ● | ● | ● | scan in de scanner |
| A-04 | AI-inventaris: welke AI-tools bij het bouwen gebruikt zijn (assistenten, agents, MCP-servers) en welke AI-modellen het product zelf gebruikt (aanbieder, versie, regio) ISO/IEC 42001 bijlage A; AI Act art. 50 |
– | ● | ● | ● | scan + verklaring |
| A-05 | Het gescande artefact (build of container) komt overeen met de aangeleverde broncode (hashvergelijking of reproduceerbare build), en de app toont in productie een build-ID die overeenkomt met de gescande build SLSA |
– | ○ | ● | ● | scan + analist |
| A-06 | Ondersteuningsperiode vastgelegd en publiek: tot wanneer komen er security-updates CRA art. 13(8), bijlage II |
– | – | ● | ● | document |
| A-07 | Benoemd aanspreekpunt voor de beveiliging van het product ISO/IEC 27001; CRA bijlage II |
– | – | ● | ● | document |
| A-08 | Wettenscan: vastgesteld welke Europese wetten gelden (persoonsgegevens, AI, EU-markt, financiële klanten, consumenten, gebruikersinhoud, betalingen, overheid, clouddienst, verbonden product). Ook vastgelegd: in welke EU-landen de app wordt aangeboden of gebruikt. Daaruit volgen de verplichte modules en landenprofielen Tabblad Wetgeving |
– | – | ● | ● | document + keurder |
| A-09 | AI-vermelding: vastgesteld of het product AI gebruikt (scan met vaste regels en verklaring van de bouwer); het rapport toont "AI: ja" of "AI: nee", met het hoogste autonomieniveau AI Act art. 50; ISO/IEC 42001 |
● | ● | ● | ● | scan + verklaring in de scanner |
B. Bouwen met AI
Software die met AI gebouwd wordt, heeft eigen risico's: verzonnen pakketten, geheimen in agentbestanden, code die niemand nagelezen heeft.
| ID | Wat we controleren | N1 | N2 | N3 | N4 | Hoe |
|---|---|---|---|---|---|---|
| B-01 | Beleid voor AI bij het ontwikkelen: welke tools mogen, voor welke code, welke gegevens nooit naar een tool gaan (klantdata, geheimen) ISO/IEC 42001 bijlage A; NIST SP 800-218A |
– | – | ● | ● | document |
| B-02 | Herkomst: AI-geschreven of AI-gewijzigde code is herkenbaar (commit-vermelding, label op de wijziging of toollogs), zodat de analist gericht steekproeven kan nemen NIST SP 800-218A; ISO/IEC 5338 |
– | ○ | ● | ● | scan + verklaring |
| B-03 | Menselijke review: elke wijziging op de hoofdbranch is goedgekeurd door een mens die ze niet zelf of via de eigen agent schreef; branchbeveiliging staat aan ISO/IEC 20246; ISO/IEC 27002 8.25, 8.32 |
– | ● | ● | ● | scan + analist |
| B-04 | Codeeragents met schrijfrechten werken met minimale rechten, zonder toegang tot productiegeheimen en zonder automatisch samenvoegen zonder mens OWASP Agentic ASI02, ASI03 |
– | – | ● | ● | keurder + verklaring |
| B-05 | Agentconfiguratie in de repo (instructiebestanden, regels, MCP-configuratie, prompt- en agentlogs) bevat geen geheimen, geen klantgegevens en geen onveilige instructies zoals "sla tests over" OWASP Agentic ASI01, ASI04 |
● | ● | ● | ● | scan + analist in de scanner |
| B-06 | Geen verzonnen of verdachte pakketten: elke afhankelijkheid bestaat in het officiële register, is niet pas geregistreerd en lijkt niet op een bekende naam OWASP A03:2025 |
● | ● | ● | ● | scan in de scanner |
| B-07 | Typische AI-patronen opgespoord: gedupliceerde blokken, dode code, aanroepen van functies of API's die niet bestaan, inconsistente foutafhandeling, onnodige complexiteit. statische analyse met vaste regels markeert, analist bevestigt ISO/IEC 5055; ISO/IEC 25010 |
– | ● | ● | ● | scan + analist |
| B-08 | Licentiebesmetting: AI-uitvoer die letterlijk overeenkomt met bestaande open-sourcecode wordt opgespoord en de licentie is verenigbaar ISO/IEC 5230 |
– | ○ | ● | ● | scan |
| B-09 | AI-codeertools zijn zakelijke versies met afspraken over bewaartermijn en geen training op de code ISO/IEC 42001 bijlage A; ISO/IEC 27036 |
– | – | ● | ● | verklaring + document |
| B-10 | Eigenaarschap: minstens één persoon kan de architectuur en de kritieke code uitleggen zonder AI (kort interview met de keurder) AI Act art. 4 (AI-geletterdheid); ISO/IEC 42001 bijlage A |
– | – | ● | ● | keurder |
| B-11 | Geen schijnfunctionaliteit: knoppen, instellingen, validaties en beveiligingscontroles doen wat ze beloven; geen stubs of vaste antwoorden ("return true", lege handlers, nepdata) in productiecode ISO/IEC 25010:2023 (functionele juistheid); OWASP ASVS 5.0 |
– | ● | ● | ● | scan + analist |
C. Codekwaliteit en onderhoudbaarheid
Onleesbare of slordige code verbergt fouten en maakt herstel duur. Ook achtergebleven bestanden lekken soms gegevens.
| ID | Wat we controleren | N1 | N2 | N3 | N4 | Hoe |
|---|---|---|---|---|---|---|
| C-01 | Statische analyse zonder kritieke of hoge bevindingen op de vier kenmerken van ISO/IEC 5055 ISO/IEC 5055 |
● | ● | ● | ● | scan in de scanner |
| C-02 | Complexiteit: het aandeel functies boven de drempel (cyclomatische of cognitieve complexiteit) blijft onder de norm ISO/IEC 25010; ISO/IEC 25023 |
– | ○ | ● | ● | scan |
| C-03 | Duplicatie onder de drempel (voorstel: minder dan 5% gedupliceerde regels) ISO/IEC 25023 |
– | ○ | ● | ● | scan |
| C-04 | Geen dode code: ongebruikte functies, klassen en bestanden, uitgecommentarieerde blokken, en geen open TODO's in beveiligingskritieke delen ISO/IEC 5055 |
– | ○ | ● | ● | scan |
| C-05 | Duidelijke structuur: modules met afhankelijkheden in één richting; codeerstandaard vastgelegd en afgedwongen met een linter in de pipeline ISO/IEC 25010 (modulariteit); ISO/IEC 27002 8.28 |
– | ● | ● | ● | scan + analist |
| C-06 | Foutafhandeling: fouten worden niet ingeslikt, gebruikers zien geen stacktraces, gedrag bij uitzonderingen is bepaald OWASP A10:2025 |
● | ● | ● | ● | scan + analist in de scanner |
| C-07 | Het project bouwt uit een schone checkout met één gedocumenteerde opdracht; versies zijn vastgezet in een lockfile ISO/IEC 25010 (flexibiliteit); SLSA |
● | ● | ● | ● | scan in de scanner |
| C-08 | Leesbaarheid: de keurder leest 3–5 kritieke modules (inloggen, rechten, betalingen, data-export) op begrijpelijkheid en naamgeving ISO/IEC 20246 |
– | – | ● | ● | keurder |
| C-09 | Bekende technische schuld staat op een lijst met prioriteit ISO/IEC 25010 |
– | – | ● | ● | document |
| C-10 | Naamgeving: variabelen, functies en klassen volgen een vaste conventie en zeggen wat ze doen; geen nietszeggende namen (tmp, data2, x) buiten korte lussen ISO/IEC 25010 (analyseerbaarheid) |
– | ○ | ● | ● | scan + analist |
| C-11 | Commentaar: publieke functies en API's gedocumenteerd, commentaar legt het waarom uit, geen verouderd of misleidend commentaar (de analist vergelijkt in een steekproef commentaar met code) ISO/IEC 25010 (analyseerbaarheid) |
– | ○ | ● | ● | scan + analist |
| C-12 | Omvang onder de drempels: lengte van methodes, klassen en bestanden, aantal parameters, nestingsdiepte ISO/IEC 25023; ISO/IEC 5055 |
– | ○ | ● | ● | scan |
| C-13 | Geen blokkerende of kritieke code smells: ongebruikte variabelen en imports, magische getallen, lege catch-blokken, hardgecodeerde URL's of configuratie, verouderde (deprecated) API's. Lagere ernst staat in het rapport ISO/IEC 5055 |
● | ● | ● | ● | scan in de scanner |
| C-14 | Opmaak consistent en automatisch afgedwongen met een formatter in de pipeline ISO/IEC 25010 (onderhoudbaarheid) |
– | ○ | ● | ● | scan |
| C-15 | Kwaliteitsdrempel (quality gate) op nieuwe code: geen nieuwe kritieke issues en voldoende testdekking op elke wijziging, anders geen merge ISO/IEC 27002 8.25 |
– | ○ | ● | ● | scan |
| C-16 | Technische-schuldratio onder de drempel (voorstel: onderhoudbaarheidsscore A of B, te kalibreren) ISO/IEC 25023 |
– | ○ | ● | ● | scan |
| C-17 | Gevoelige plekken die de analyse markeert (security hotspots: cryptografie, reguliere expressies, deserialisatie, bestandspaden) zijn door een mens beoordeeld ISO/IEC 5055; OWASP ASVS 5.0 |
– | ● | ● | ● | scan + analist |
| C-18 | Geen uitgeschakelde of overgeslagen tests zonder vermelde reden (AI-agents schakelen falende tests soms uit) ISO/IEC/IEEE 29119 |
– | ○ | ● | ● | scan |
| C-19 | Geen ongebruikte afhankelijkheden: elk pakket in het manifest wordt echt gebruikt (ongebruikte pakketten zijn onnodig aanvalsoppervlak) ISO/IEC 5055; CRA bijlage I (2)(j) |
● | ● | ● | ● | scan in de scanner |
| C-20 | Geen achtergebleven rommel in repository en artefact: back-upbestanden (.bak, .old, .orig), database-dumps, testdata met echte gegevens, voorbeeld- en democode, tijdelijke bestanden van AI-agents, gecommitte buildoutput ISO/IEC 27002 8.4; OWASP WSTG-CONF-04 |
● | ● | ● | ● | scan in de scanner |
| C-21 | Opruimbeleid: feature flags, tijdelijke codepaden en oude branches hebben een eigenaar en einddatum; wat afgelopen is, wordt verwijderd ISO/IEC 25010:2023 (onderhoudbaarheid) |
– | – | ○ | ● | scan + keurder |
D. Hoe de bouwer test
Zonder automatische tests en beveiligingsscans in de pipeline glipt elke fout ongemerkt naar productie.
| ID | Wat we controleren | N1 | N2 | N3 | N4 | Hoe |
|---|---|---|---|---|---|---|
| D-01 | Teststrategie beschreven: welke niveaus (unit, integratie, end-to-end), wat niet getest wordt en waarom ISO/IEC/IEEE 29119-2, 29119-3 |
– | – | ● | ● | document |
| D-02 | Tests draaien automatisch bij elke wijziging en een falende test blokkeert de release ISO/IEC 27002 8.29 |
● | ● | ● | ● | scan in de scanner |
| D-03 | Codedekking gemeten, met een minimum voor kritieke modules (voorstel: 70% van de regels in inloggen, rechten en betalingen) ISO/IEC/IEEE 29119-4 |
– | ○ | ● | ● | scan |
| D-04 | Mutatietest op kritieke modules: tests vangen opzettelijk ingevoerde fouten (voorstel: mutatiescore minstens 60%); ontmaskert ook tests die alleen de eigen code bevestigen, zoals tests die in dezelfde AI-sessie als de code zijn geschreven ISO/IEC/IEEE 29119-4 |
– | ○ | ● | ● | scan |
| D-05 | Negatieve beveiligingstests: inloggen, rechten en invoervalidatie (bv. gebruiker A kan de gegevens van gebruiker B niet zien) OWASP ASVS 5.0; ISO/IEC 27002 8.29 |
– | ● | ● | ● | scan + analist |
| D-06 | Statische beveiligingsanalyse en afhankelijkheidsscan in de pipeline, met een drempel die de release blokkeert NIST SP 800-218; ISO/IEC 27002 8.25 |
● | ● | ● | ● | scan in de scanner |
| D-07 | Geautomatiseerde scan van de draaiende applicatie in een testomgeving (DAST) ISO/IEC 27002 8.29 |
– | ● | ● | ● | scan |
| D-08 | Geen echte persoonsgegevens in test- en ontwikkelomgevingen, tenzij gepseudonimiseerd ISO/IEC 27002 8.33; AVG art. 25 |
– | – | ● | ● | verklaring + keurder |
| D-09 | Testresultaten per release bewaard ISO/IEC 25051; ISO/IEC/IEEE 29119-3 |
– | – | ● | ● | document |
| D-10 | Handmatige pentest in de laatste 12 maanden door een onafhankelijke, gekwalificeerde tester (bv. CREST of OSCP): web, API's, inloggen, rechten en bedrijfslogica; mobiele apps apart CRA bijlage I deel II (3); OWASP WSTG, MASTG |
– | – | ● | ● | pentest |
| D-11 | Prestatie- en belastingtest voor kritieke functies ISO/IEC 25010 (prestatie-efficiëntie) |
– | – | ○ | ● | document |
| D-12 | Extern aanvalsoppervlak gescand: alle domeinen, subdomeinen, open poorten en publiek bereikbare diensten van de app in kaart gebracht en getest op bekende zwakheden (externe kwetsbaarheidsscan; geen pentest) CRA I (2)(j); ISO/IEC 27002 8.8 |
● | ● | ● | ● | scan in de scanner |
| D-13 | Hertest na de pentest bevestigt dat kritieke en hoge bevindingen echt opgelost zijn CRA I deel II (3) |
– | – | ● | ● | pentest |
| D-14 | Kernfuncties werken: de kritieke functies doen wat de beschrijving van het product belooft, van begin tot eind nieuw, voorstel ISO/IEC 25010 (functionele geschiktheid) |
– | ● | ● | ● | keurder (test) + document |
| D-15 | Validaties werken op de server: foute, ontbrekende, te lange en kwaadwillige invoer wordt door de server geweigerd, niet alleen in het scherm nieuw, voorstel OWASP ASVS V5; ISO/IEC 27002 8.26 |
– | ● | ● | ● | keurder (test) + aanvalstest |
| D-16 | De kritieke functies hebben automatische tests die bij elke wijziging draaien: minstens één positieve en één negatieve test per functie nieuw, voorstel NIST SP 800-218 PW.8; ISO/IEC 27002 8.29 |
– | ● | ● | ● | scan + test |
E. Applicatiebeveiliging
De klassieke lekken: inloggen, rechten, injectie, geheimen en versleuteling. Hier gaat het in de praktijk het vaakst mis.
| ID | Wat we controleren | N1 | N2 | N3 | N4 | Hoe |
|---|---|---|---|---|---|---|
| E-01 | Inloggen: geen standaardwachtwoorden; MFA verplicht voor beheerders en beschikbaar voor gebruikers OWASP ASVS 5.0; A07:2025; CRA I (2)(d) |
– | ● | ● | ● | scan + analist |
| E-02 | Rechten worden per object op de server gecontroleerd: niemand bereikt andermans gegevens via een ander ID A01:2025; OWASP ASVS 5.0 |
– | ● | ● | ● | scan + analist + aanvalstest |
| E-03 | Sessies: veilige cookies, time-outs, afmelden maakt de sessie ongeldig OWASP ASVS 5.0 |
● | ● | ● | ● | scan in de scanner |
| E-04 | Geen injectie: geparametriseerde queries, output-encoding, geen SQL-, OS-, template- of XSS-lekken A05:2025 |
● | ● | ● | ● | scan + analist in de scanner |
| E-05 | Geen geheimen in code, configuratie of git-geschiedenis; geheimen staan in een kluis of de omgeving ISO/IEC 27002 8.24; CRA I (2)(e) |
● | ● | ● | ● | scan in de scanner |
| E-06 | Versleuteling: TLS 1.2 of hoger voor al het verkeer, gevoelige gegevens versleuteld opgeslagen, geen verouderde of zelfgemaakte algoritmen A04:2025; CRA I (2)(e) |
● | ● | ● | ● | scan in de scanner |
| E-07 | Veilig standaard: debug uit, beheerschermen afgeschermd, terugzetten naar een veilige toestand mogelijk A02:2025; CRA I (2)(b) |
– | ● | ● | ● | scan + analist |
| E-08 | Beveiligingsheaders en configuratie: CSP, HSTS, restrictieve CORS A02:2025 |
● | ● | ● | ● | scan in de scanner |
| E-09 | Bescherming tegen misbruik: limieten op inlogpogingen en zware functies; uploads gecontroleerd CRA I (2)(h) |
– | ○ | ● | ● | scan + aanvalstest |
| E-10 | Klein aanvalsoppervlak: geen overbodige poorten, endpoints of functies; geen endpoints buiten de API-specificatie CRA I (2)(j) |
– | ● | ● | ● | scan + analist |
| E-11 | Integriteit: artefacten en updates ondertekend; geen onveilige deserialisatie A08:2025; CRA I (2)(f) |
– | ○ | ● | ● | scan |
| E-12 | Dreigingsmodel van het product, bijgewerkt bij grote wijzigingen A06:2025; IEC 62443-4-1; ISO/IEC 27034 |
– | – | ● | ● | document + keurder |
| E-13 | Beveiligingsgebeurtenissen gelogd (inloggen, rechtenwijzigingen, fouten), zonder gevoelige gegevens in de logs, met alarm bij afwijkingen A09:2025; CRA I (2)(l) |
– | ● | ● | ● | scan + analist |
| E-14 | Sleutelbeheer: sleutels voor ondertekening, versleuteling en TLS in een sleutelkluis, KMS of HSM, met een vaste levenscyclus (aanmaken, roteren, intrekken, vernietigen); toegang beperkt en gelogd ISO/IEC 27002 8.24; CRA I (2)(e), (f) |
– | – | ● | ● | keurder + document |
| E-15 | Netwerk: databanken, caches en beheerinterfaces niet publiek bereikbaar; beheer alleen via VPN, bastion of zero-trusttoegang; omgevingen gescheiden ISO/IEC 27002 8.20, 8.22; CRA I (2)(j) |
– | ● | ● | ● | scan + analist |
| E-16 | Inloggen via een externe identiteitsdienst (SAML, OpenID Connect): handtekeningen, doelgroep en vervaldatum van tokens gecontroleerd, terugkeeradressen vastgelegd, geen open redirects OWASP ASVS 5.0; A07:2025 |
– | ● | ● | ● | scan + aanvalstest |
F. Afhankelijkheden en supply chain
Het grootste deel van moderne software bestaat uit pakketten van anderen. Eén lek daarin is een lek in jouw app.
| ID | Wat we controleren | N1 | N2 | N3 | N4 | Hoe |
|---|---|---|---|---|---|---|
| F-01 | Geen afhankelijkheden met bekende uitbuitbare kwetsbaarheden (bv. CISA KEV, EU-kwetsbaarhedendatabank) en geen kritieke CVE zonder mitigatie CRA I deel I (2)(a) |
● | ● | ● | ● | scan in de scanner |
| F-02 | Geen frameworks of runtimes die niet meer ondersteund worden; geen onbeheerde pakketten in kritieke functies A03:2025 |
● | ● | ● | ● | scan in de scanner |
| F-03 | Versies vastgezet met een lockfile en integriteitscontrole (hashes) SLSA |
● | ● | ● | ● | scan in de scanner |
| F-04 | Pakketten alleen uit officiële of vertrouwde registers; nieuwe pakketten gecontroleerd voor ze erin komen A03:2025 |
– | ● | ● | ● | scan + document |
| F-05 | Alle licenties gekend en verenigbaar met het gebruik; geen onbedoelde copyleft ISO/IEC 5230 |
● | ● | ● | ● | scan in de scanner |
| F-06 | Beveiligde pipeline: beperkte geheimen in de build, externe acties vastgepind op hash, herkomst van de build vastgelegd SLSA Build L2; OpenSSF Scorecard |
– | ○ | ● | ● | scan + analist |
| F-07 | Containerimages: minimale basisimage, geen kritieke CVE's, draait niet als root A02:2025 |
– | ○ | ● | ● | scan |
| F-08 | Externe diensten en AI-aanbieders gekend, met verwerkersovereenkomst waar persoonsgegevens meegaan ISO/IEC 27036; NIS2 art. 21(2)(d); AVG art. 28 |
– | – | ● | ● | document |
| F-09 | Gezondheidsscore (bv. OpenSSF Scorecard) voor kritieke open-sourceafhankelijkheden OpenSSF Scorecard; ISO/IEC 18974 |
– | ○ | ○ | ● | scan |
| F-10 | Versieachterstand gemeten per component; in kritieke functies geen component meer dan twee major versies achter (voorstel) A03:2025; ISO/IEC 25010 (onderhoudbaarheid) |
– | ○ | ● | ● | scan |
| F-11 | Patchsnelheid: beschikbare security-patches voor kritieke lekken binnen 14 dagen toegepast, voor hoge binnen 30 dagen (voorstel; gemeten over het laatste jaar) CRA I deel II (2); ISO/IEC 30111 |
– | ○ | ● | ● | scan + analist |
| F-12 | Ook de infrastructuur: besturingssysteem, runtime (bv. Java, .NET, Node.js, PHP, Python), webserver, database en CMS op een ondersteunde versie met actuele patches ISO/IEC 27002 8.8; CRA I (2)(a) |
– | ● | ● | ● | scan + analist |
| F-13 | Indirecte (transitieve) afhankelijkheden worden mee gescand; bij niveau 2 staan ze ook in de SBOM CRA I deel II (1) |
● | ● | ● | ● | scan in de scanner |
| F-14 | Scripts en bibliotheken die de browser van externe servers laadt, hebben een integriteitscontrole (SRI) of worden zelf gehost A08:2025 |
– | ○ | ● | ● | scan |
G. Kwetsbaarheden en updates (CRA)
De CRA verplicht fabrikanten om kwetsbaarheden te melden en updates te leveren. Daarvoor moet het proces er zijn.
| ID | Wat we controleren | N1 | N2 | N3 | N4 | Hoe |
|---|---|---|---|---|---|---|
| G-01 | Publiek beleid voor gecoördineerde melding van kwetsbaarheden, met meldadres (bv. security.txt) CRA I deel II (5), (6); ISO/IEC 29147 |
– | ● | ● | ● | scan + document |
| G-02 | Intern proces voor kwetsbaarheden: triage, ernst bepalen, hersteltermijn per ernst ISO/IEC 30111; CRA I deel II (2) |
– | – | ● | ● | document |
| G-03 | Hersteltermijnen worden in de praktijk gehaald (steekproef uit de tickets van het laatste jaar) ISO/IEC 30111 |
– | – | ● | ● | keurder |
| G-04 | Security-updates gratis en waar mogelijk los van functionele updates, met advies aan gebruikers CRA I deel II (2), (8) |
– | – | ● | ● | document + verklaring |
| G-05 | Updates veilig verspreid (ondertekend, vertrouwd kanaal); bij geïnstalleerde software staan automatische updates standaard aan CRA I deel I (2)(c); deel II (7) |
– | ● | ● | ● | scan + analist |
| G-06 | Opgeloste kwetsbaarheden publiek vermeld in releasenotes of advisories CRA I deel II (4) |
– | – | ● | ● | document |
| G-07 | Meldproces klaar om actief uitgebuite kwetsbaarheden en ernstige incidenten binnen 24 uur te melden CRA art. 14 |
– | – | ● | ● | document |
| G-08 | Doorlopende bewaking van nieuwe kwetsbaarheden in afhankelijkheden via de SBOM CRA I deel II (1), (3) |
● | ● | ● | ● | scan in de scanner |
H. AI in het product
Een AI-functie kan misleid worden (prompt injection), gegevens lekken of onverwacht duur worden.
| ID | Wat we controleren | N1 | N2 | N3 | N4 | Hoe |
|---|---|---|---|---|---|---|
| H-01 | Prompt injection getest, direct en indirect (via documenten, webpagina's, toolresultaten) LLM01; OWASP AISVS; ETSI EN 304 223 |
– | ● | ● | ● | scan + aanvalstest |
| H-02 | Uitvoer van het model wordt behandeld als onbetrouwbare invoer: niet rechtstreeks uitgevoerd, gevalideerd en geëncodeerd LLM05 |
● | ● | ● | ● | scan + analist in de scanner |
| H-03 | Model en agent hebben minimale rechten op tools; onomkeerbare acties vragen bevestiging door een mens LLM06; ASI02, ASI03 |
– | – | ● | ● | keurder |
| H-04 | Geen lekken: geen geheimen in de systeemprompt, gegevens van klanten gescheiden in zoek- en vectoropslag LLM02, LLM07, LLM08 |
– | ● | ● | ● | scan + aanvalstest |
| H-05 | Gebruikers weten dat ze met AI praten; door AI gemaakte inhoud is gemarkeerd waar dat moet AI Act art. 50 |
– | – | ● | ● | keurder |
| H-06 | Modelaanbieder en -versie vastgelegd; een ander model is een ingrijpende wijziging en vraagt herkeuring Schema: toezicht en wijzigingen |
– | – | ● | ● | document |
| H-07 | Kwaliteit gemeten met een testset van verwachte antwoorden; regressietest bij elke modelwissel ISO/IEC 25059; ISO/IEC TR 29119-11 |
– | – | ● | ● | document + keurder |
| H-08 | Limieten op verbruik (tokens, aanvragen) tegen misbruik en onverwachte kosten LLM10 |
● | ● | ● | ● | scan in de scanner |
| H-09 | Autonomieniveau per AI-functie vastgesteld (AI-1 helpt, AI-2 mens bevestigt, AI-3 mens houdt toezicht, AI-4 beslist zelfstandig) en passend bij de gevolgen voor mensen; een mens kan altijd ingrijpen AI Act art. 14; ISO/IEC 42001; ISO/IEC 22989 |
– | – | ● | ● | keurder + document |
| H-10 | De bouwer heeft vastgesteld dat het product geen verboden AI-praktijk bevat en of het onder hoog risico valt (AI Act); zo ja, vervangt het keurmerk de wettelijke conformiteitsbeoordeling niet AI Act art. 5, 6, bijlage III |
– | – | ● | ● | document |
| H-11 | Bij eigen training of finetuning: herkomst van de data, rechten en persoonsgegevens gedocumenteerd ISO/IEC 42001 bijlage A; AI Act art. 10 |
– | – | ● | ● | document |
| H-12 | Agents: bescherming tegen vergiftigd geheugen en context, veilige communicatie tussen agents, een noodstop ASI06, ASI07, ASI10 |
– | – | ● | ● | keurder + pentest |
| H-13 | AI-kaart, publiek: per AI-functie wat ze doet, welke beslissingen of adviezen ze geeft, welke gegevens ze gebruikt, aanbieder en model, bekende beperkingen en foutsoorten AI Act art. 13, 50; ISO/IEC 42001; ISO/IEC 22989 |
– | – | ● | ● | document |
| H-14 | AI-beslissingen gelogd: per beslissing tijdstip, functie, model en versie, verwijzing naar de invoer, uitvoer, uitgevoerde acties en wie bevestigde; beschermd tegen wijziging, minstens zes maanden bewaard, zonder onnodige persoonsgegevens AI Act art. 12, 19, 26(6); ISO/IEC 42001 |
– | ● | ● | ● | scan + analist |
| H-15 | Vieroogenprincipe: beslissingen met rechtsgevolg of grote financiële gevolgen worden door een mens bevestigd voor ze uitgevoerd worden; ook de bevestiging wordt gelogd AI Act art. 14; AVG art. 22 |
– | – | ● | ● | keurder |
| H-16 | Uitleg en herbeoordeling: wie door een AI-beslissing geraakt wordt, kan uitleg vragen en een herbeoordeling door een mens krijgen AVG art. 22(3); AI Act art. 86 |
– | – | ◐ | ◐ | keurder + document |
| H-17 | AI in productie bewaakt: foutpercentage, klachten, afwijkingen in de invoer en hoe vaak mensen de AI overrulen (te vaak of nooit is een signaal) AI Act art. 72; ISO/IEC 42001 |
– | ○ | ● | ● | scan + document |
| H-18 | Getest op oneerlijke uitkomsten (bias) bij beslissingen over personen, met vastgelegde testset en uitslag AI Act art. 10, 15; ISO/IEC TR 24027 |
– | – | ◐ | ◐ | document + keurder |
| H-19 | AI uitschakelbaar: elke AI-functie kan apart uitgezet worden en de app blijft dan bruikbaar of valt veilig terug AI Act art. 14(4)(e); ISO/IEC 25010:2023 |
– | – | ● | ● | keurder |
| H-20 | Herkomst van modellen (AI-BOM): modellen en datasets in een machineleesbare lijst met herkomst, licentie en hash of handtekening; modelbestanden in een veilig formaat, geen uitvoerbare formaten uit onbekende bron OWASP LLM03; CycloneDX ML-BOM; ISO/IEC 42001 |
– | ● | ● | ● | scan + document |
| H-21 | Tools en MCP-servers van de app: inventaris, herkomst, vastgepinde versie, minimale rechten; toolbeschrijvingen gecontroleerd op verborgen instructies OWASP LLM03; OWASP Agentic ASI04 |
– | ● | ● | ● | scan + analist |
| H-22 | Veilige uitvoer: vaste testset voor schadelijke inhoud en gevaarlijk advies (zelfbeschadiging, medisch, financieel, illegaal), met drempel OWASP LLM09; AI Act art. 15; ISO/IEC 42001 |
– | ● | ● | ● | scan + document |
| H-23 | Geen training op klantgegevens zonder toestemming: afspraken met de AI-aanbieder over training, bewaartermijn en regio, in lijn met de AI-kaart AVG art. 5, 28; AI Act art. 10 |
– | – | ● | ● | document |
| H-24 | Door AI gemaakte beelden, geluid, video en tekst machineleesbaar gemarkeerd (bv. C2PA of watermerk) waar de AI Act dat vraagt AI Act art. 50(2); C2PA |
– | ● | ● | ● | scan + analist |
| H-25 | Ernstige AI-incidenten: procedure om ze te melden aan de toezichthouder en de klant, gekoppeld aan de incidentanalyse AI Act art. 73 |
– | – | ◐ | ◐ | document |
I. Data en privacy
Persoonsgegevens vragen bescherming volgens de AVG: scheiding tussen klanten, bewaartermijnen, toestemming.
| ID | Wat we controleren | N1 | N2 | N3 | N4 | Hoe |
|---|---|---|---|---|---|---|
| I-01 | Overzicht van de gegevens: welke persoonsgegevens, waar opgeslagen, hoe lang en waarvoor AVG art. 30; CRA I (2)(g) |
– | – | ● | ● | document |
| I-02 | Niet meer gegevens dan nodig; privacyvriendelijke standaardinstellingen AVG art. 25; CRA I (2)(g) |
– | – | ● | ● | keurder |
| I-03 | Gegevens van verschillende klanten zijn gescheiden, en dat is getest ISO/IEC 27002 8.3 |
– | ● | ● | ● | scan + aanvalstest |
| I-04 | Gebruikers kunnen hun gegevens exporteren en definitief laten verwijderen CRA I (2)(m); AVG art. 17, 20 |
– | – | ● | ● | keurder |
| I-05 | Hostingregio en doorgifte buiten de EER gekend en gedocumenteerd AVG hoofdstuk V |
– | – | ● | ● | document |
| I-06 | Back-ups versleuteld; herstel getest ISO/IEC 27002 8.13 |
– | – | ● | ● | document |
| I-07 | Gegevensbeschermingseffectbeoordeling (DPIA) waar de verwerking een hoog risico geeft AVG art. 35 |
– | – | ● | ● | document |
| I-08 | Persoonsgegevens gaan alleen naar AI-aanbieders met een verwerkersovereenkomst en zonder training op die gegevens AVG art. 28; ISO/IEC 42001 bijlage A |
– | – | ● | ● | document |
| I-09 | Cookies en trackers: zonder toestemming alleen strikt noodzakelijke; toestemming vooraf, weigeren even makkelijk als aanvaarden, intrekken altijd mogelijk ePrivacyrichtlijn art. 5(3); AVG art. 7 |
– | ● | ● | ● | scan + analist |
| I-10 | Clouddienst (SaaS): klanten kunnen overstappen. Export van al hun gegevens in een gangbaar formaat, overstapregeling in het contract, geen overstapkosten vanaf 12 januari 2027 Data Act hoofdstuk VI, art. 29 |
– | – | ◐ | ◐ | document + keurder |
| I-11 | App bij een verbonden product: gebruikers krijgen standaard toegang tot de gegevens van product en dienst (producten op de markt vanaf 12 september 2026) Data Act art. 3 |
– | – | ◐ | ◐ | keurder + document |
| I-12 | Bewaartermijnen worden automatisch afgedwongen: gegevens worden na de termijn verwijderd of geanonimiseerd, ook in back-ups en logs AVG art. 5(1)(e) |
– | ○ | ● | ● | scan + analist |
| I-13 | Minderjarigen: als de app op kinderen gericht is of door kinderen gebruikt wordt, een leeftijdscontrole passend bij het risico, de strengste privacy- en veiligheidsinstellingen als standaard en geen profilering voor reclame DSA art. 28; AVG art. 8; AI Act art. 9(9) |
– | – | ◐ | ◐ | keurder + document |
J. Documentatie
Zonder documentatie kan niemand anders de software beheren, controleren of veilig overnemen.
| ID | Wat we controleren | N1 | N2 | N3 | N4 | Hoe |
|---|---|---|---|---|---|---|
| J-01 | Gebruikersinformatie: doel, beoogd gebruik, veilige installatie en configuratie, einddatum van de ondersteuning, contact CRA bijlage II; ISO/IEC/IEEE 26514 |
– | – | ● | ● | document |
| J-02 | Beheerdocumentatie: installatie, configuratie, back-up en herstel, updateprocedure ISO/IEC 25051 |
– | – | ● | ● | document |
| J-03 | Technische documentatie: architectuur, vastgelegde ontwerpkeuzes, datamodel, API-specificatie (bv. OpenAPI) CRA bijlage VII; ISO/IEC/IEEE 42010 |
– | – | ● | ● | document + keurder |
| J-04 | Ontwikkelaarsdocumentatie: een README met bouwen, testen en uitrollen; een nieuwe ontwikkelaar kan binnen een dag bouwen ISO/IEC 25010 (onderhoudbaarheid) |
– | – | ● | ● | keurder |
| J-05 | Documentatie klopt met de code (steekproef: gedocumenteerde API tegenover de echte endpoints) ISO/IEC 25051 |
– | ○ | ● | ● | scan + analist |
| J-06 | Wijzigingslog per release, met de security-fixes apart vermeld CRA I deel II (4) |
– | – | ● | ● | document |
| J-07 | Beveiligingsinformatie voor klanten: hoe het product veilig te gebruiken en wat de klant zelf moet doen CRA bijlage II |
– | – | ● | ● | document |
| J-08 | Informatie over AI-functies voor klanten: welke functies, welke aanbieder, wat er met hun gegevens gebeurt (alleen bij module H) AI Act art. 50; ISO/IEC 42001 bijlage A |
– | – | ◐ | ◐ | document |
K. Werking, monitoring en logging
Wat je niet ziet, kun je niet herstellen: logging, monitoring en een plan voor als het misgaat.
| ID | Wat we controleren | N1 | N2 | N3 | N4 | Hoe |
|---|---|---|---|---|---|---|
| K-01 | Ontwikkeling, test en productie gescheiden; ontwikkelaars en agents hebben standaard geen toegang tot productie ISO/IEC 27002 8.31 |
– | – | ● | ● | keurder |
| K-02 | Uitrol geautomatiseerd en herhaalbaar; terugrollen mogelijk ISO/IEC 27002 8.32 |
– | – | ● | ● | document + keurder |
| K-03 | Bewaking van beschikbaarheid en fouten, met alarmering ISO/IEC 25010 (betrouwbaarheid) |
– | – | ● | ● | document |
| K-04 | RTO en RPO per dienst afgeleid uit de gevolgen van uitval voor de klant; herstel na uitval getest in de laatste 12 maanden ISO/IEC 27002 8.13; ISO/IEC 27031; NIS2 art. 21(2)(c) |
– | – | ● | ● | document + keurder |
| K-05 | Incidentrespons: plan, contactpersoon, minstens één oefening per jaar ISO/IEC 27002 5.24; NIS2 art. 21(2)(b) |
– | – | ● | ● | document |
| K-06 | Infrastructuur als code gescand op foute cloudconfiguratie (open opslag, te ruime rechten) A02:2025 |
– | ○ | ● | ● | scan |
| K-07 | Toegang tot code en infrastructuur: MFA voor alle ontwikkelaars, rechten periodiek nagekeken, vertrekkers meteen verwijderd ISO/IEC 27002 5.15–5.18; NIS2 art. 21(2)(i), (j) |
– | – | ● | ● | verklaring + keurder |
| K-08 | Overdraagbaarheid voor maatwerk: escrow of afspraak over broncode als de bouwer stopt ISO/IEC 27036 |
– | – | ○ | ● | document |
| K-09 | Logbeleid: wat wordt gelogd (toegang, beheeracties, fouten, wijzigingen aan gegevens), hoe lang bewaard, wie erbij kan; logs beschermd tegen wijziging ISO/IEC 27002 8.15; CRA I (2)(l) |
– | – | ● | ● | document + keurder |
| K-10 | Logs centraal verzameld en te doorzoeken, met gesynchroniseerde klokken ISO/IEC 27002 8.15, 8.17 |
– | – | ● | ● | keurder |
| K-11 | Alarmen op beveiligingsgebeurtenissen worden opgevolgd: wie reageert, binnen welke tijd, en dat is aantoonbaar gebeurd ISO/IEC 27002 8.16; NIS2 art. 21(2)(b) |
– | – | ● | ● | document + keurder |
| K-12 | Prestaties en capaciteit bewaakt (responstijden, foutpercentages, opslag) met drempels ISO/IEC 27002 8.6; ISO/IEC 25010 (prestatie-efficiëntie) |
– | – | ● | ● | document |
| K-13 | Audittrail voor gevoelige gegevens: vastgelegd wie persoonsgegevens heeft bekeken, gewijzigd of geëxporteerd AVG art. 5(2), 32 |
– | ○ | ● | ● | scan + analist |
| K-14 | Container-orkestratie (bv. Kubernetes) gehard: geen geprivilegieerde containers, netwerkbeleid tussen diensten, geheimen niet als platte tekst, getoetst aan een CIS-benchmark CIS Kubernetes Benchmark; ISO/IEC 27002 8.9 |
– | ○ | ◐ | ◐ | scan + analist |
| K-15 | DR-plan: scenario's, rollen, beslissers, volgorde van herstel en communicatie naar klanten ISO/IEC 27031; ISO 22301; ISO/IEC 27002 5.29, 5.30 |
– | – | ● | ● | document |
| K-16 | Herstelproef: in een testomgeving wordt een databank of configuratie onbruikbaar gemaakt; herstel binnen de RTO, gegevens gecontroleerd op volledigheid ISO/IEC 27031; ISO/IEC 27002 8.13 |
– | – | ● | ● | keurder |
| K-17 | Herbouw vanaf nul: de volledige omgeving opnieuw opgebouwd uit infrastructuurcode en back-ups, in een schone account ISO/IEC 27031; NIST SP 800-34 |
– | – | ○ | ● | keurder + document |
| K-18 | Ransomwarescenario: herstel naar een schone toestand van vóór de aanval, met back-ups die een aanvaller met beheerrechten niet kan wissen (W-11) ISO/IEC 27002 8.13; NIS2 art. 21(2)(c) |
– | – | ● | ● | keurder + document |
| K-19 | Ook de rest is herstelbaar: sleutels, geheimen, configuratie, DNS-zones, domeinen en certificaten zitten in de back-up of het herstelplan ISO/IEC 27002 8.13, 8.24 |
– | – | ● | ● | document + keurder |
| K-20 | Uitval van derden: voor cloud, AI-aanbieder, betaaldienst en codeplatform een terugvaloptie of een vastgelegde aanvaarding van het risico ISO/IEC 27031; DORA art. 28 |
– | – | ● | ● | document |
| K-21 | Foutinjectie: de keurder laat een externe dienst uitvallen of stuurt ongeldige gegevens; de app degradeert netjes, zonder datalek of corrupte gegevens ISO/IEC 25010:2023 (fouttolerantie); OWASP WSTG |
– | – | ○ | ● | keurder + pentest |
| K-22 | DR-test minstens jaarlijks (niveau 4: elk halfjaar), met verslag en verbeteracties ISO 22301; DORA art. 11(6) |
– | – | ● | ● | document |
L. Toegankelijkheid
Software moet bruikbaar zijn voor iedereen. Voor overheden en vanaf 2025 voor veel webwinkels is toegankelijkheid verplicht.
| ID | Wat we controleren | N1 | N2 | N3 | N4 | Hoe |
|---|---|---|---|---|---|---|
| L-01 | Voldoet aan WCAG 2.1 AA (via EN 301 549): automatische scan van app en website plus handmatige steekproef van de belangrijkste schermen en taken; punten uit WCAG 2.2 apart gemeld EN 301 549; WCAG 2.1/2.2 |
– | ○ | ● | ● | scan + analist |
| L-02 | Toegankelijkheidsinformatie gepubliceerd: een verklaring of informatie in de voorwaarden over hoe de dienst toegankelijk is Europese Toegankelijkheidsakte; Richtlijn 2016/2102 |
– | – | ◐ | ◐ | document |
O. Website, domein en juridische informatie
De website is vaak de eerste indruk en de eerste ingang voor aanvallers: TLS, cookies, e-mailbeveiliging en de wettelijke gegevens.
| ID | Wat we controleren | N1 | N2 | N3 | N4 | Hoe |
|---|---|---|---|---|---|---|
| O-01 | Bedrijfsgegevens op de site: naam, geografisch adres, e-mail, ondernemingsnummer, btw-nummer, en waar van toepassing toezichthouder of beroepsorganisatie E-commercerichtlijn (2000/31) art. 5 |
– | ● | ● | ● | scan + analist |
| O-02 | Algemene voorwaarden vindbaar, en op te slaan en af te drukken vóór de klant een overeenkomst sluit E-commercerichtlijn art. 10(3) |
– | – | ● | ● | keurder |
| O-03 | Privacyverklaring vindbaar, actueel en in lijn met de werkelijke verwerking (vergeleken met wat de scan aan trackers vindt) AVG art. 13 |
– | ● | ● | ● | scan + analist |
| O-04 | Geen cookies of trackers vóór toestemming: de scan bezoekt de site zonder te klikken en noteert wat er wordt geplaatst ePrivacyrichtlijn art. 5(3) |
● | ● | ● | ● | scan in de scanner |
| O-05 | De site zelf is veilig: TLS, beveiligingsheaders, CMS en plugins op een ondersteunde versie, geen beheerpagina's open OWASP Top 10:2025; CRA I (2)(a) |
● | ● | ● | ● | scan in de scanner |
| O-06 | Domein en e-mail beschermd tegen misbruik: SPF, DKIM en DMARC ingesteld, geen overneembare subdomeinen, DNSSEC waar mogelijk Basis cyberhygiëne (NIS2 art. 21(2)(g)) |
● | ● | ● | ● | scan in de scanner |
| O-07 | Wat de site belooft, klopt: claims over beveiliging, AI, certificaten en hosting stemmen overeen met de keuring; het keurmerk wordt volgens de regels gebruikt Richtlijn oneerlijke handelspraktijken; ISO/IEC 17030 |
– | – | ● | ● | keurder |
| O-08 | Domeinregistratie en DNS-beheer beveiligd: MFA op het account bij registrar en DNS-aanbieder, registrar lock, CAA-records; certificaten automatisch vernieuwd en op vervaldatum bewaakt Basis cyberhygiëne (NIS2 art. 21(2)(g)); ISO/IEC 27002 8.24 |
– | ● | ● | ● | scan + verklaring |
P. Koppelingen met andere systemen
Koppelingen met andere systemen zijn de deuren van je app. Elke deur heeft een slot en een logboek nodig.
| ID | Wat we controleren | N1 | N2 | N3 | N4 | Hoe |
|---|---|---|---|---|---|---|
| P-01 | Overzicht van alle koppelingen: richting, protocol, welke gegevens, eigenaar, authenticatie; ook oude en testkoppelingen ISO/IEC 27002 5.14; OWASP API9 |
– | ● | ● | ● | scan + document |
| P-02 | Authenticatie tussen systemen zonder gedeelde of vaste wachtwoorden: OAuth 2.0, mTLS of ondertekende tokens, met beperkte rechten en vervaldatum OWASP API2; OWASP ASVS 5.0 |
– | ● | ● | ● | scan + analist |
| P-03 | Sleutels en tokens voor koppelingen worden geroteerd en zijn per omgeving gescheiden ISO/IEC 27002 8.24 |
– | – | ● | ● | keurder + verklaring |
| P-04 | Eigen API's controleren rechten per object en per functie, valideren invoer, beperken verbruik en geven geen overbodige gegevens terug OWASP API1, API3, API4, API5 |
– | ● | ● | ● | scan + aanvalstest |
| P-05 | Inkomende webhooks en berichten worden gecontroleerd (handtekening, herkomst); uitgaande verzoeken alleen naar toegestane bestemmingen; antwoorden van derden worden niet blind vertrouwd OWASP API7, API10 |
● | ● | ● | ● | scan + analist in de scanner |
| P-06 | Robuust bij storingen: time-outs, herhaalpogingen, geen dubbele verwerking, bepaald gedrag als een gekoppeld systeem uitvalt, en dat is getest ISO/IEC 25010 (betrouwbaarheid); A10:2025 |
– | – | ● | ● | keurder + document |
| P-07 | Versiebeheer van API's: gedocumenteerd (bv. OpenAPI), wijzigingen aangekondigd, oude versies met een termijn uitgefaseerd ISO/IEC 25010 (compatibiliteit) |
– | – | ● | ● | document |
| P-08 | Gegevens die via koppelingen naar derden gaan, staan in de gegevensinventaris en zijn gedekt door een verwerkersovereenkomst AVG art. 28, 30 |
– | – | ● | ● | document |
| P-09 | Open standaarden en exportformaten, zodat klanten kunnen koppelen en overstappen Data Act hoofdstuk VIII |
– | – | ○ | ● | document |
| P-10 | API-gateway, reverse proxy of WAF juist ingesteld: TLS volgens E-06, authenticatie en limieten aan de rand én in de dienst zelf; de diensten erachter zijn niet rechtstreeks bereikbaar (geen omweg langs de gateway) OWASP API8; A02:2025 |
– | ● | ● | ● | scan + analist + aanvalstest |
| P-11 | SOAP en XML: parser beschermd tegen XXE en entity-expansie, berichten gevalideerd tegen het schema, authenticatie via WS-Security of mTLS, XML-handtekeningen correct gecontroleerd (geen signature wrapping), WSDL niet publiek in productie OWASP ASVS 5.0; OWASP Cheat Sheet XXE |
– | ● | ● | ● | scan + aanvalstest |
| P-12 | GraphQL: introspectie uit in productie, limieten op diepte en complexiteit, rechten per veld. gRPC: TLS en authenticatie per aanroep OWASP API4, API8; OWASP Cheat Sheet GraphQL |
– | ● | ● | ● | scan + aanvalstest |
| P-13 | Berichtenbussen en bestandsoverdracht (bv. Kafka, MQ, SFTP, EDI): authenticatie en versleuteling, rechten per wachtrij of map, geen anonieme toegang ISO/IEC 27002 5.14, 8.21 |
– | ● | ● | ● | scan + analist |
Q. Governance
Wie mag wat veranderen, en wie keurt het goed? Zonder afspraken hangt beveiliging af van toeval.
| ID | Wat we controleren | N1 | N2 | N3 | N4 | Hoe |
|---|---|---|---|---|---|---|
| Q-01 | Rollen vastgelegd voor product, beveiliging, privacy en AI, met mandaat en vervanging ISO/IEC 27001 5.3; ISO/IEC 42001 5.3; NIS2 art. 20 |
– | – | ● | ● | document |
| Q-02 | Risicobeoordeling van het product, herzien minstens jaarlijks en bij grote wijzigingen CRA art. 13(2); ISO/IEC 27001 6.1 |
– | – | ● | ● | document |
| Q-03 | Wijzigingsbeheer: wie mag wat naar productie brengen, met goedkeuring en een regeling voor noodwijzigingen ISO/IEC 27002 8.32 |
– | ● | ● | ● | scan + document |
| Q-04 | Releasebeleid: versienummering, releasenotes, welke versies ondersteund worden, einde van ondersteuning tijdig aangekondigd CRA art. 13(8) |
– | – | ● | ● | document |
| Q-05 | Kritieke leveranciers (cloud, AI-aanbieders) beoordeeld en jaarlijks herzien ISO/IEC 27036; NIS2 art. 21(2)(d) |
– | – | ● | ● | document |
| Q-06 | Directie bekijkt minstens jaarlijks beveiliging, kwaliteit en open bevindingen van het product ISO/IEC 27001 9.3; NIS2 art. 20 |
– | – | ● | ● | document |
| Q-07 | Ontwikkelaars krijgen jaarlijks opleiding in veilig programmeren en verantwoord AI-gebruik ISO/IEC 27002 6.3; NIS2 art. 21(2)(g); AI Act art. 4 |
– | – | ● | ● | document |
| Q-08 | Niet afhankelijk van één persoon: minstens twee mensen kunnen bouwen, uitrollen en herstellen ISO/IEC 25010 (onderhoudbaarheid) |
– | – | ● | ● | keurder |
R. Versiebeheer en releases
Versiebeheer en vaste releases maken zichtbaar wat er in productie staat en wie wat veranderde.
| ID | Wat we controleren | N1 | N2 | N3 | N4 | Hoe |
|---|---|---|---|---|---|---|
| R-01 | Alle broncode, configuratie en infrastructuur-als-code staan in versiebeheer; niets in productie dat er niet in zit ISO/IEC 27002 8.4, 8.32 |
– | ● | ● | ● | scan + analist |
| R-02 | Toegang tot de repository: MFA, minimale rechten, geen gedeelde accounts, vertrekkers verwijderd, periodiek nagekeken ISO/IEC 27002 8.4, 5.18 |
– | ● | ● | ● | scan + verklaring |
| R-03 | Branchstrategie vastgelegd; hoofdbranch beschermd: geen directe of geforceerde push, verplichte review (B-03) en een geslaagde pipeline ISO/IEC 27002 8.32 |
● | ● | ● | ● | scan in de scanner |
| R-04 | Herleidbaarheid: elke wijziging gekoppeld aan een ticket of reden, met zinvolle commitberichten ISO/IEC 27002 8.32; RTS 2024/1774 art. 16(7) |
– | ○ | ● | ● | scan |
| R-05 | Ondertekende commits of tags, of een gelijkwaardige herkomstcontrole SLSA |
– | ○ | ● | ● | scan |
| R-06 | Repository opgeruimd: geen grote binaire bestanden, build-uitvoer of geheimen in de geschiedenis ISO/IEC 27002 8.4 |
– | ○ | ● | ● | scan |
| R-07 | Elke release getagd, met versienummer (bv. semantisch), releasenotes en een reproduceerbaar artefact CRA I deel II (4); SLSA |
– | ● | ● | ● | scan + document |
| R-08 | Vast releaseproces: bouwen, testen, goedkeuren, uitrollen; vastgelegd wie goedkeurt ISO/IEC 27002 8.32 |
– | – | ● | ● | document + keurder |
| R-09 | Artefacten ondertekend en bewaard in een beheerde registry; productie draait alleen goedgekeurde artefacten SLSA Build L2; A08:2025 |
– | ○ | ● | ● | scan + analist |
| R-10 | Terugrollen naar de vorige versie getest; databasemigraties omkeerbaar of met herstelplan ISO/IEC 27002 8.32 |
– | – | ● | ● | document + keurder |
| R-11 | Risicovolle wijzigingen gefaseerd uitgerold (feature flags, canary, blauw-groen) en na de release bewaakt ISO/IEC 25010 (betrouwbaarheid) |
– | – | ○ | ● | document |
| R-12 | Overzicht van welke versies bij klanten draaien en welke nog updates krijgen; security-fixes ook naar ondersteunde oudere versies CRA art. 13(8); I deel II (2) |
– | – | ● | ● | document |
| R-13 | Repository-instellingen: geheimenscanning en afhankelijkheidswaarschuwingen aan, geen onbedoeld publieke repositories, geen langlevende persoonlijke tokens OpenSSF Scorecard |
● | ● | ● | ● | scan in de scanner |
S. Mobiele apps (module)
Mobiele apps bewaren gegevens op het toestel en praten met servers via het internet: dat vraagt eigen controles.
| ID | Wat we controleren | N1 | N2 | N3 | N4 | Hoe |
|---|---|---|---|---|---|---|
| S-01 | Minimale permissies; elke permissie heeft een reden die de gebruiker te zien krijgt OWASP MASVS-PLATFORM; AVG art. 25 |
– | ● | ● | ● | scan + analist |
| S-02 | Gevoelige gegevens op het toestel versleuteld in de veilige opslag van het platform (Keychain, Keystore); niets gevoeligs in logs, back-ups of het klembord OWASP MASVS-STORAGE |
– | ● | ● | ● | scan + aanvalstest |
| S-03 | Netwerkverkeer alleen via TLS, certificaatcontrole nooit uitgeschakeld, pinning waar het risico het vraagt OWASP MASVS-NETWORK |
– | ● | ● | ● | scan + aanvalstest |
| S-04 | Geen geheimen of API-sleutels in de app zelf OWASP MASVS-STORAGE, MASVS-CODE |
● | ● | ● | ● | scan in de scanner |
| S-05 | Privacylabels in de app stores kloppen met de werkelijke verwerking en de SDK's in de app AVG art. 13 |
– | ● | ● | ● | scan + analist |
| S-06 | SDK's van derden (analyse, advertenties, crashrapporten) geïnventariseerd; tracking pas na toestemming ePrivacyrichtlijn art. 5(3); OWASP MASVS-PRIVACY |
● | ● | ● | ● | scan in de scanner |
| S-07 | Bescherming tegen manipulatie (root- of jailbreakdetectie, obfuscatie) waar het risico het vraagt, bv. bank- en betaalapps OWASP MASVS-RESILIENCE |
– | ○ | ● | ● | scan + aanvalstest |
T. Klassieke kwaliteitsborging
Klassieke kwaliteitszorg: testen, foutenbeheer en acceptatie, ook als de code door AI geschreven is.
| ID | Wat we controleren | N1 | N2 | N3 | N4 | Hoe |
|---|---|---|---|---|---|---|
| T-01 | Eisen vastgelegd, functioneel en niet-functioneel (prestaties, beschikbaarheid, beveiliging, privacy, toegankelijkheid), met acceptatiecriteria ISO/IEC/IEEE 29148 |
– | – | ● | ● | document |
| T-02 | Beveiligingseisen vooraf bepaald, afgeleid uit het dreigingsmodel en de geldende wetten ISO/IEC 27002 8.26; Grip op SSD |
– | – | ● | ● | document |
| T-03 | Traceerbaarheid van eis naar ontwerp, code en test (traceerbaarheidsmatrix of koppeling ticket–commit–test) ISO/IEC/IEEE 29148, 12207 |
– | ○ | ● | ● | scan + document |
| T-04 | Ontwerp vastgelegd en gereviewd vóór de bouw van grote wijzigingen ISO/IEC 20246; IEEE 1028 |
– | – | ● | ● | document |
| T-05 | Acceptatietest door opdrachtgever of producteigenaar op een aparte acceptatieomgeving (OTAP), met vastgelegde goedkeuring ISO/IEC/IEEE 29119-2; ISO/IEC 27002 8.29 |
– | – | ● | ● | document |
| T-06 | Foutenbeheer: elke fout geregistreerd met ernst, eigenaar en status; open fouten bij een release bekend en aanvaard ISO/IEC/IEEE 29119-3 |
– | ● | ● | ● | scan + document |
| T-07 | Oorzaakanalyse bij ernstige fouten en incidenten, met maatregelen tegen herhaling ISO/IEC 27001 10.2 |
– | – | ● | ● | document |
| T-08 | Overdracht aan beheer: draaiboeken, operationele acceptatie, kennisoverdracht ISO/IEC 20000-1 |
– | – | ● | ● | document |
| T-09 | Definitie van 'klaar': wat af moet zijn voor een wijziging als klaar geldt (review, tests, documentatie, beveiliging) ISO/IEC/IEEE 90003; IEEE 730 |
– | – | ● | ● | document |
| T-10 | De productbeschrijving klopt: beschreven functies werken zoals gedocumenteerd (steekproef) ISO/IEC 25051 |
– | – | ● | ● | keurder |
| T-11 | Kwaliteitscijfers over tijd gevolgd (fouten, hersteltijd, testdekking) en gebruikt om te verbeteren ISO/IEC 25023; TMMi |
– | – | ○ | ● | document |
| T-12 | Veranderproef: de keurder vraagt een kleine functionele wijziging; het team voert ze door met tests, review en uitrol, zonder iets anders te breken ISO/IEC/IEEE 12207; ISO/IEC 25010:2023 (wijzigbaarheid) |
– | – | ○ | ● | keurder |
U. Frontend (webclient)
Alles wat in de browser staat, kan iedereen lezen. Geheimen, tokens en scripts van derden horen daar niet zomaar.
| ID | Wat we controleren | N1 | N2 | N3 | N4 | Hoe |
|---|---|---|---|---|---|---|
| U-01 | Geen geheimen, API-sleutels of interne adressen in de JavaScript-bundel OWASP ASVS 5.0; A02:2025 |
● | ● | ● | ● | scan in de scanner |
| U-02 | Source maps en debugmodus niet publiek in productie A02:2025 |
● | ● | ● | ● | scan in de scanner |
| U-03 | Sessietokens en gevoelige gegevens niet in localStorage of sessionStorage; cookies met HttpOnly, Secure en SameSite OWASP ASVS 5.0 |
● | ● | ● | ● | scan in de scanner |
| U-04 | Bescherming tegen CSRF en clickjacking (frame-ancestors) OWASP ASVS 5.0 |
● | ● | ● | ● | scan in de scanner |
| U-05 | Controles in de browser zijn gemak, geen beveiliging: elke controle gebeurt ook op de server (getest door de browser te omzeilen) A06:2025; OWASP ASVS 5.0 |
– | – | ● | ● | pentest + keurder |
| U-06 | Scripts van derden (analyse, chat, advertenties) geïnventariseerd, met toestemming waar nodig en beperkt via CSP; op betaalpagina's goedgekeurd en bewaakt ePrivacyrichtlijn art. 5(3); A08:2025; PCI DSS 4.0 req. 6.4.3 |
● | ● | ● | ● | scan in de scanner |
| U-07 | Geen gevaarlijke DOM-functies met gebruikersinvoer (innerHTML, eval); berichten tussen vensters (postMessage) met controle van de herkomst A05:2025 |
● | ● | ● | ● | scan + analist in de scanner |
| U-08 | Prestaties en gebruikservaring gemeten (bv. Core Web Vitals); werkt in de ondersteunde browsers ISO/IEC 25010 (prestatie-efficiëntie, compatibiliteit) |
– | ○ | ○ | ● | scan |
W. Backend en opslag
De databank en de opslag bevatten wat het meest waard is: gegevens van klanten. Die verdienen minimale rechten en versleuteling.
| ID | Wat we controleren | N1 | N2 | N3 | N4 | Hoe |
|---|---|---|---|---|---|---|
| W-01 | Databankaccounts met minimale rechten per dienst; de app verbindt nooit als beheerder ISO/IEC 27002 8.2, 8.3 |
– | ● | ● | ● | scan + analist |
| W-02 | Verbindingen met databank en opslag versleuteld; gevoelige velden extra versleuteld waar het risico dat vraagt CRA I (2)(e) |
– | ● | ● | ● | scan + analist |
| W-03 | Bestandsopslag (bv. S3, Blob) privé, toegang via kortlevende ondertekende links; uploads gecontroleerd en buiten de webroot bewaard A01:2025; OWASP ASVS 5.0 |
● | ● | ● | ● | scan in de scanner |
| W-04 | Achtergrondtaken en geplande jobs met minimale rechten, bewaakt, en ze falen zichtbaar ISO/IEC 27002 8.16 |
– | – | ● | ● | keurder |
| W-05 | Gegevensintegriteit bij gelijktijdig gebruik: transacties, geen race conditions (bv. dubbele betaling), idempotente verwerking ISO/IEC 25010 (betrouwbaarheid); A06:2025 |
– | – | ● | ● | keurder + pentest |
| W-06 | Limieten op middelen: time-outs, maximale grootte van verzoeken en uploads, paginering, bescherming tegen trage queries OWASP API4; CRA I (2)(h) |
● | ● | ● | ● | scan in de scanner |
| W-07 | Configuratie gescheiden van code, per omgeving, zonder geheimen in platte tekst ISO/IEC 27002 8.9 |
– | ● | ● | ● | scan + analist |
| W-08 | Servers en runtime gehard: overbodige diensten uit, niet als root, beveiligingsupdates automatisch (zie F-12) CIS Benchmarks; ISO/IEC 27002 8.9 |
– | ● | ● | ● | scan + analist |
| W-09 | Databank: standaardaccounts en voorbeelddatabanken verwijderd; beheertoegang persoonlijk, met MFA en gelogd CIS Benchmarks; ISO/IEC 27002 8.2 |
– | ● | ● | ● | scan + analist |
| W-10 | Databank versleuteld in rust, ook back-ups, replica's en snapshots; sleutels apart beheerd CRA I (2)(e); AVG art. 32 |
– | ● | ● | ● | scan + analist |
| W-11 | Back-ups: frequentie volgens het toegelaten gegevensverlies, minstens één onveranderbare of offline kopie tegen ransomware, herstel getest ISO/IEC 27002 8.13; NIS2 art. 21(2)(c) |
– | – | ● | ● | document + keurder |
| W-12 | Beheeracties en grote exports op de databank gelogd en bewaakt ISO/IEC 27002 8.15; AVG art. 32 |
– | ○ | ● | ● | scan + analist |
| W-13 | Rechten per rij in de databank (Row Level Security of Security Rules) staan aan op elke tabel met gebruikersgegevens, getest met twee accounts; de sleutel met volledige rechten zit nooit in de frontend nieuw, voorstel OWASP API1:2023; AVG art. 32 |
– | ● | ● | ● | scan + document + test |
X. Hosting en infrastructuur
Hosting en cloud: wie beheert wat, waar staan de gegevens, en zijn de beheeraccounts goed beveiligd?
| ID | Wat we controleren | N1 | N2 | N3 | N4 | Hoe |
|---|---|---|---|---|---|---|
| X-01 | Hostingoverzicht: welke aanbieders en diensten, welke regio's en datacenters, wie beheert wat (gedeelde verantwoordelijkheid) CRA bijlage VII; AVG art. 30; DORA art. 30(2) |
– | ● | ● | ● | scan + document |
| X-02 | De hostingaanbieder heeft een geldig certificaat dat de gebruikte diensten dekt (bv. ISO/IEC 27001, SOC 2 Type II, BSI C5, SecNumCloud) ISO/IEC 27001, 27017; NIS2 art. 21(2)(d) |
– | – | ● | ● | document |
| X-03 | Gegevens en back-ups in de EER, of doorgifte gedekt (I-05); blootstelling aan niet-Europese wetgeving (bv. de Amerikaanse CLOUD Act) staat in het rapport AVG hoofdstuk V |
– | – | ● | ● | document |
| X-04 | Cloudaccount beveiligd: hoofdaccount met MFA en niet in dagelijks gebruik, rechten via rollen met minimale rechten, geen langlevende toegangssleutels CIS Foundations Benchmarks; ISO/IEC 27002 8.2 |
– | ● | ● | ● | scan + analist |
| X-05 | Logging op cloudniveau: wie wijzigt wat aan de infrastructuur, bewaard en bewaakt ISO/IEC 27002 8.15 |
– | ○ | ● | ● | scan + analist |
| X-06 | Beschikbaarheid passend bij het gebruik: meerdere zones of een uitwijklocatie, met een beschikbaarheidsdoel dat gehaald wordt ISO/IEC 27002 8.14; ISO/IEC 25010 |
– | – | ● | ● | document |
| X-07 | Exitplan: gegevens en infrastructuur kunnen naar een andere aanbieder (infrastructuur als code, exportformaten) Data Act hoofdstuk VI; DORA art. 28 |
– | – | ● | ● | document |
| X-08 | Budgetalarmen en limieten, zodat een aanval of fout geen onbeperkte kosten of uitval veroorzaakt CRA I (2)(h) |
– | ○ | ● | ● | scan + analist |
| X-09 | Eigen servers of colocatie: fysieke beveiliging, stroom, koeling en toegang tot het datacenter aangetoond (certificaat of bezoek) ISO/IEC 27002 7.1–7.8 |
– | – | ◐ | ◐ | document + keurder |
Y. Communicatieprotocollen
Verouderde of onversleutelde protocollen zijn een open deur, ook als de app zelf goed gebouwd is.
| ID | Wat we controleren | N1 | N2 | N3 | N4 | Hoe |
|---|---|---|---|---|---|---|
| Y-01 | TLS juist ingesteld: alleen TLS 1.2 en 1.3, sterke cipher suites met forward secrecy, geldige certificaten met volledige keten, HSTS NIST SP 800-52 Rev. 2; BSI TR-02102-2 |
● | ● | ● | ● | scan in de scanner |
| Y-02 | Geen onversleutelde protocollen voor gegevens of beheer: geen HTTP behalve doorverwijzing, geen FTP, Telnet, LDAP of MQTT zonder TLS, geen SNMP v1/v2 CRA I (2)(e); ISO/IEC 27002 8.21 |
● | ● | ● | ● | scan in de scanner |
| Y-03 | Verkeer tussen interne diensten ook versleuteld (bv. mTLS) of aantoonbaar afgeschermd NIST SP 800-207; ISO/IEC 27002 8.20 |
– | ○ | ● | ● | scan + analist |
| Y-04 | Verouderde protocolversies uit: SSH alleen versie 2 met sterke algoritmen en sleutels, SMBv1 uit, RDP niet publiek bereikbaar CIS Benchmarks |
● | ● | ● | ● | scan in de scanner |
| Y-05 | Uitgaande e-mail van de app versleuteld afgeleverd (MTA-STS, TLS-rapportage) RFC 8461 |
– | ○ | ○ | ● | scan |
| Y-06 | WebSockets en andere realtimeverbindingen: alleen versleuteld (wss), authenticatie bij het opzetten, rechten per bericht, controle van de herkomst OWASP Cheat Sheet WebSocket |
– | ● | ● | ● | scan + aanvalstest |
| Y-07 | Algoritmen en sleutellengtes volgens actuele aanbevelingen; inventaris van de gebruikte cryptografie als voorbereiding op post-quantumcryptografie BSI TR-02102; EU-routekaart post-quantumcryptografie |
– | ○ | ○ | ● | scan + document |
| Y-08 | Certificaatbeheer: inventaris van alle certificaten, automatische vernieuwing, geen zelfondertekende certificaten op verbindingen met derden, privésleutels nooit gedeeld ISO/IEC 27002 8.24 |
– | ● | ● | ● | scan + analist |
| Y-09 | Klaar voor post-kwantumcryptografie: inventaris van de cryptografie (Y-07) en een plan om algoritmen te vervangen, met voorrang voor gegevens die lang vertrouwelijk moeten blijven EU-routekaart post-kwantumcryptografie (2025); BSI TR-02102; NIST FIPS 203–205 |
– | – | ○ | ● | document + keurder |
Z. Beheer, overdracht, kosten, energie en gebruik
Software moet ook over vijf jaar nog te beheren, over te dragen en betaalbaar te houden zijn.
| ID | Wat we controleren | N1 | N2 | N3 | N4 | Hoe |
|---|---|---|---|---|---|---|
| Z-01 | Beheerdossier voor de beheerpartij: draaiboeken voor de meest voorkomende storingen, bekende fouten met een omweg, escalatiepad en contacten ISO/IEC 20000-1; ITIL 4 (servicetransitie) |
– | – | ● | ● | document + keurder |
| Z-02 | Diagnose zonder ontwikkelaar: health- en readiness-controles, gedocumenteerde foutcodes, een correlatie-ID die een melding door alle logs volgt ISO/IEC 25010:2023 (analyseerbaarheid) |
– | ○ | ● | ● | scan + analist |
| Z-03 | Dagelijks beheer zonder codewijziging: configuratie, gebruikers en rechten, certificaten vernieuwen, herstarten en schalen, gedocumenteerd ISO/IEC 20000-1; ISO/IEC 25010:2023 |
– | – | ● | ● | keurder + document |
| Z-04 | Supportafspraken: reactie- en oplostijden per prioriteit, onderhoudsvensters, ondersteunde versies en kanalen ISO/IEC 20000-1; CRA art. 13 |
– | – | ● | ● | document |
| Z-05 | Operationele acceptatietest door de beheerpartij, aantoonbaar geslaagd vóór ingebruikname ISO/IEC 20000-1 |
– | – | ○ | ● | document + keurder |
| Z-06 | Overdrachtstest: een ontwikkelaar die het project niet kent bouwt, test en rolt uit naar een testomgeving met alleen de documentatie (niveau 3 binnen een dag, niveau 4 binnen vier uur) ISO/IEC 25010:2023 (onderhoudbaarheid, overdraagbaarheid) |
– | – | ● | ● | keurder |
| Z-07 | Eigendom en toegang bij de opdrachtgever: repository, cloudaccounts, domeinen, certificaten, appwinkelaccounts en sleutels op naam van de opdrachtgever of aantoonbaar overdraagbaar ISO/IEC 27002 5.9 |
– | – | ● | ● | document + verklaring |
| Z-08 | Intellectueel eigendom en licenties geregeld: overdracht of gebruiksrecht vastgelegd; geen licenties op naam van de bouwer die niet mee kunnen ISO/IEC 5230 |
– | – | ● | ● | document + verklaring |
| Z-09 | Geen gesloten eigen frameworks, bibliotheken of codegeneratoren van de bouwer zonder broncode of overdraagbare licentie ISO/IEC 25010:2023 (overdraagbaarheid) |
– | ○ | ● | ● | scan + analist |
| Z-10 | Ontwerpkeuzes (architectuurbeslissingen) en bedrijfsregels vastgelegd buiten de code, en actueel ISO/IEC/IEEE 42010 |
– | – | ● | ● | document + keurder |
| Z-11 | AI-werkwijze overdraagbaar: instructiebestanden, agentconfiguratie en vaste opdrachten die de bouw sturen staan in de repository en zijn beschreven (zie B-05) ISO/IEC 42001 |
– | ○ | ◐ | ◐ | scan + document |
| Z-12 | Exitplan bij einde van het contract: termijnen, kennisoverdracht en ondersteuning tijdens de overgang ISO/IEC 27036; DORA art. 28(8) |
– | – | ○ | ● | document |
| Z-13 | Overzicht van de beheerkosten: alle terugkerende kosten per maand (hosting, licenties, externe diensten, AI-gebruik, beheeruren) ISO/IEC 20000-1 |
– | – | ● | ● | document |
| Z-14 | Kosten per functionele eenheid bekend, met een prognose bij twee- en tienvoudige groei FinOps Framework |
– | – | ○ | ● | document + keurder |
| Z-15 | Beheercomplexiteit gemeten en in het rapport: aantal uitrolbare onderdelen, talen en frameworks, directe afhankelijkheden, externe diensten, omgevingen en handmatige beheerstappen ISO/IEC 25010:2023; ISO/IEC 5055 |
– | ○ | ● | ● | scan + analist |
| Z-16 | Operationele cijfers bijgehouden: wijzigingsfaalpercentage, hersteltijd, uitrolfrequentie, doorlooptijd en incidenten per maand DevOps Research and Assessment |
– | – | ○ | ● | document + scan |
| Z-17 | Energieverbruik gemeten per functionele eenheid volgens ISO/IEC 21031, apart voor server, toestel en AI-aanroepen, met vastgelegde meetmethode ISO/IEC 21031:2024; Blauer Engel DE-UZ 215 |
– | – | ● | ● | document + keurder |
| Z-18 | AI-verbruik apart: tokens en geschatte energie per aanroep bekend; geen onnodige aanroepen (caching, kleiner model waar het kan) ISO/IEC 21031:2024 |
– | ○ | ◐ | ◐ | scan + document |
| Z-19 | Zuinig in rust: geen onnodige achtergrondprocessen, polling of wekprocessen; op mobiel het batterijverbruik gemeten Blauer Engel DE-UZ 215 |
– | ○ | ○ | ● | scan + analist |
| Z-20 | Werkt op oudere toestellen en browsers: minimumvereisten gepubliceerd; updates maken bestaande hardware niet onbruikbaar Blauer Engel DE-UZ 215 |
– | – | ● | ● | document + keurder |
| Z-21 | Omvang beheerst: paginagewicht, bundel- en appgrootte en dataverkeer per sessie gemeten, met een drempel Blauer Engel DE-UZ 215; W3C Web Sustainability Guidelines |
– | ○ | ○ | ● | scan |
| Z-22 | Energiebron en efficiëntie (PUE) van het datacenter bekend en in het rapport Gedelegeerde Verordening (EU) 2024/1364 (datacenters) |
– | – | ○ | ● | document |
| Z-23 | Einde levensduur: uitfaseerplan met tijdige aankondiging, teruggave van de gegevens en aantoonbaar veilig wissen CRA art. 13; AVG art. 17 |
– | – | ● | ● | document |
| Z-24 | Gebruikslogica getoetst: de keurder beoordeelt de kerntaken op de interactieprincipes van ISO 9241-110 ISO 9241-110:2020; ISO/IEC 25010:2023 (interactievermogen) |
– | – | ● | ● | keurder |
| Z-25 | Geen misleidende ontwerpen: opzeggen even makkelijk als afsluiten, weigeren even makkelijk als toestemmen, geen verborgen of voorgeselecteerde keuzes DSA art. 25; Richtlijn 2005/29/EG; AVG art. 7 |
– | ○ | ● | ● | scan + analist |
| Z-26 | Gebruikstest met echte gebruikers op de kerntaken, gerapporteerd volgens ISO/IEC 25066 ISO 9241-11:2018; ISO/IEC 25066:2016 |
– | – | ○ | ● | document |
| Z-27 | Fouten helpen herstellen: begrijpelijke foutmeldingen met een oplossing; acties met grote gevolgen vragen bevestiging en zijn waar mogelijk ongedaan te maken ISO 9241-110:2020 |
– | – | ● | ● | keurder |
Modules bovenop elk niveau
Deze checks komen erbij zodra een wet van toepassing is, op elk niveau. Bijvoorbeeld DORA als je klant een bank of verzekeraar is.
DORA — klant is een financiële instelling
| M-D01 | Broncodereview met statische én dynamische tests, inclusief securitytests van alles wat aan internet hangt; gevonden zwakheden krijgen een actieplan dat aantoonbaar wordt opgevolgd (D-06 en D-07 worden verplicht) |
| M-D02 | Softwarepakketten van derden uiterlijk bij de integratie op beveiliging getest |
| M-D03 | Niet-productieomgevingen bevatten alleen geanonimiseerde, gepseudonimiseerde of gerandomiseerde gegevens; uitzonderingen zijn tijdelijk, goedgekeurd en gemeld |
| M-D04 | Integriteit van de broncode beschermd: toegang beperkt, wijzigingen herleidbaar, ondertekende commits of gelijkwaardig |
| M-D05 | Standaardcontract bevat alle bepalingen van art. 30(2): diensten, locaties van dienst en gegevens, gegevensbescherming, teruggave van gegevens, service levels, incidentbijstand, medewerking met toezichthouders, opzegging, deelname aan opleidingen |
| M-D06 | Bij kritieke of belangrijke functies ook art. 30(3): meetbare service levels, geteste continuïteitsplannen, deelname aan dreigingsgestuurde pentests (TLPT), audit- en toegangsrechten, exitstrategie met overgangsperiode |
| M-D07 | Leverancier levert de gegevens voor het informatieregister van de klant, waaronder de keten van onderaannemers |
| M-D08 | Incidentbijstand: de leverancier meldt incidenten snel genoeg zodat de klant zijn eigen DORA-meldtermijnen haalt |
Betalingen
| M-B01 | Betalingen lopen via een vergunde betaaldienstaanbieder; sterke klantauthenticatie wordt niet omzeild |
| M-B02 | De app slaat zelf geen volledige kaartgegevens op |
Consumenten — online verkoop aan particulieren
| M-C01 | Herroepingsknop: "overeenkomst hier herroepen" zichtbaar tijdens de hele termijn, bevestiging in twee stappen, ontvangstbevestiging op een duurzame drager |
| M-C02 | Prijzen en verplichte informatie zichtbaar vóór de bestelling; de bestelknop zegt "bestelling met betalingsverplichting" |
| M-C03 | Geen vooraf aangevinkte vakjes voor extra betalingen en geen misleidende interfaceontwerpen |
| M-C04 | Toont de app beoordelingen, dan staat erbij of en hoe gecontroleerd wordt dat ze van echte kopers komen |
Platformen — de app bewaart of toont inhoud van gebruikers
| M-P01 | Meldsysteem voor illegale inhoud; motivering aan de gebruiker bij verwijdering of blokkering |
| M-P02 | Contactpunten voor autoriteiten en gebruikers; gebruiksvoorwaarden beschrijven de moderatie |
| M-P03 | Online platformen: geen misleidende ontwerpen, uitleg over aanbevelingen, bescherming van minderjarigen (micro- en kleine ondernemingen deels vrijgesteld) |
| M-P04 | Online marktplaatsen: verkopers geïdentificeerd |
Digitale identiteit
| M-E01 | Sectoren die wettelijk sterke authenticatie vragen: plan om de Europese digitale-identiteitswallet te aanvaarden binnen de wettelijke termijn (datum na te kijken) |
Overheid — de klant is een overheidsinstantie
| M-O01 | Toegankelijkheid verplicht (L-01), met toegankelijkheidsverklaring |
| M-O02 | Open standaarden en gedocumenteerde koppelingen; ondersteuning bij de interoperabiliteitsbeoordeling van de klant |
N. Uw organisatie (klantmodule)
| N-01 | De app staat in het verwerkingsregister |
| N-02 | Verwerkersovereenkomst met de leverancier getekend; subverwerkers gekend |
| N-03 | Rechtsgrond bepaald; de privacyverklaring vermeldt de verwerking |
| N-04 | DPIA gedaan, of onderbouwd waarom die niet nodig is |
| N-05 | Verzoeken om inzage of verwijdering kunnen voor deze app binnen een maand afgehandeld worden |
| N-06 | De datalekprocedure dekt deze app (melden binnen 72 uur) |
| N-07 | Wie de AI-functies gebruikt, is voldoende AI-geletterd |
| N-08 | Bij hoog-risicogebruik: gebruik volgens de instructies, menselijk toezicht door bevoegde mensen, logs minstens 6 maanden bewaard, werknemers geïnformeerd |
| N-09 | De leverancier is opgenomen in de leveranciersbeoordeling; volgens het nationale kader (bv. CyberFundamentals in België) |
| N-10 | De incidentmeldprocedure dekt deze app (vroege waarschuwing binnen 24 uur) |
| N-11 | Contract met de art. 30-bepalingen getekend, leverancier in het informatieregister, exitplan bij een kritieke functie |
| N-12 | Toegang bij de klant: MFA aan, minimale rechten, vertrekkers verwijderd |
| N-13 | De veilige configuratie uit de handleiding (J-07) is toegepast |
| N-14 | Security-updates worden binnen een afgesproken termijn geïnstalleerd |
De checks van niveau 3 en 4 en de modules zijn een concept (norm 0.2). Ze worden definitief na de pilots.