Transparantie, geen badge

Beveiliging

Je legt je processen, je risico's en je beheersmaatregelen bij ons vast. Dan mag je weten hoe wij zelf met beveiliging omgaan. De meeste leveranciers tonen een logo. Wij laten ons huiswerk zien — inclusief wat er nog open staat.

Getoetst aan OWASP ASVS 5.0 Level 2

ASVS is de applicatiebeveiligingsstandaard van OWASP. Level 2 is het niveau dat bedoeld is voor applicaties die gevoelige gegevens verwerken. We hebben alle 253 eisen van Level 1 en 2 één voor één langsgelopen en per eis vastgelegd wat de stand is — en waarom.

Dit is een zelfbeoordeling, geen certificering

Er is geen externe auditor overheen gegaan. Daarom noemen we onszelf niet ASVS-compliant, -gecertificeerd of -ready: dat zou suggereren dat iemand anders het heeft getoetst. Wat je hier ziet is onze eigen beoordeling, per regel onderbouwd, met de open punten er gewoon bij.

De stand

142
voldaan
80
onderbouwd niet van toepassing
21
deels
10
open

222 van de 253 zijn afgerond of onderbouwd niet van toepassing. De overige 31 staan met naam en toenaam in ons register — inclusief de reden.

Deze cijfers worden uit het register afgeleid en bij elke release gecontroleerd. Ze kunnen dus niet stilletjes verouderen terwijl het register verandert.

Wat dat concreet betekent

Een norm is abstract. Dit is wat er in de praktijk in zit:

  • Scheiding tussen organisaties

    Alle proces-, risico- en masterdata-queries lopen langs een tenant-grens die de organisatie afdwingt en dichtklapt als de context ontbreekt — een vergeten grens levert een foutmelding op, nooit stilzwijgend andermans data. Een gebruiker van de ene organisatie kan de gegevens van een andere niet opvragen, ook niet met een geraden id.

  • Rollen en rechten op de server

    Wie wat mag, wordt op de server bepaald en niet in de browser. Een lezer kan niets aan de inhoud wijzigen, ook niet door een knop terug te toveren.

  • Tweestapsverificatie

    Beschikbaar via een authenticator-app, met backupcodes. We bieden het aan en verplichten het niet; die afweging staat onderbouwd in het register.

  • Gelekte wachtwoorden worden geweigerd

    Bij het instellen van een wachtwoord toetsen we tegen de database van Have I Been Pwned. Komt het daarin voor, dan kan het niet.

  • Begrensde inlogpaden

    De paden waar inloggegevens langskomen zijn begrensd — en die begrenzing staat in de database, niet in het geheugen van één proces, zodat een herstart of een tweede container hem niet reset.

  • Strikte Content-Security-Policy

    Met een nonce per pagina, zodat een geïnjecteerd script niet tot uitvoering komt.

  • Sessies

    De sessiecookie is HttpOnly, Secure en SameSite. Er geldt een absolute maximumduur, en gevoelige handelingen vragen opnieuw om je wachtwoord.

  • Audit-trail en security-logging

    Wijzigingen aan je processen, rollen, risico's en beheersmaatregelen worden vastgelegd met wie, wat en wanneer. Een geweigerde autorisatie wordt apart gelogd — een mislukte login is ruis, maar iemand die mét een geldige sessie iets probeert wat niet mag, is een signaal.

  • Toeleveringsketen

    We houden een SBOM bij van de afhankelijkheden die we in productie draaien, en de pipeline scant elke wijziging automatisch op per ongeluk gecommitte secrets.

Per hoofdstuk

De 17 hoofdstukken van de norm, met de stand per hoofdstuk. De hoofdstuktitels zijn de namen uit de norm zelf en laten we onvertaald — zo zijn ze terug te vinden.

HoofdstukEisenVoldaanN.v.t.DeelsOpen
V1 Encoding and Sanitization27121500
V2 Validation and Business Logic117130
V3 Web Frontend Security1918001
V4 API and Web Service102620
V5 File Handling94410
V6 Authentication3526621
V7 Session Management1815300
V8 Authorization77000
V9 Self-contained Tokens70700
V10 OAuth and OIDC2902900
V11 Cryptography1412110
V12 Secure Communication93123
V13 Configuration136043
V14 Data Protection97020
V15 Secure Coding and Architecture1310030
V16 Security Logging and Error Handling1613012
V17 WebRTC70700

Wat er open staat

We publiceren ook wat niet af is — anders is transparantie een marketingwoord. Op dit moment staan er 10 eisen open en 21 deels. Het zwaartepunt ligt bij infrastructuur-eisen die we op basis van ons dreigingsmodel bewust hebben geaccepteerd, aangevuld met een paar beleidskeuzes die nog een besluit vragen, één afwijking die in een externe library zit, en een restant aan hardening dat we zelf nog afmaken. Elk punt staat met reden in het register — inclusief de punten die we als eerste willen sluiten.

Waarom niet gewoon alles afvinken?

Omdat niet elke eis in deze applicatie even zwaar weegt. We hebben per eis een bewuste afweging gemaakt en die opgeschreven — inclusief de eisen waaraan we (nog) niet voldoen en waarom we dat risico aanvaardbaar vinden. Dat maakt ons op die punten niet ASVS-conform; het maakt de keuze navolgbaar. Een stilzwijgend gat zou dat niet zijn.

En NIS2?

Valt je organisatie onder NIS2, dan moet je aantoonbaar grip hebben op je processen, je risico's en je keten. Precies dat vastleggen is waar Proceshuis voor gebouwd is: processen, rollen via RASCI, risico's en beheersmaatregelen in één systeem, met versiehistorie en een audit-trail over die inhoud die laat zien wie wat wanneer wijzigde.

Wat we hier niet beweren

Proceshuis maakt je organisatie niet NIS2-conform, en wij noemen onszelf niet NIS2-compliant. NIS2 is een organisatorische richtlijn: risicomanagement, incidentmelding, ketenverantwoordelijkheid, bestuurdersaansprakelijkheid. Software dekt daar één deel van. Wij ondersteunen je verplichtingen; we nemen ze niet over.

Het volledige register

Alle 253 eisen met de onderbouwing per regel, inclusief de open punten en waarom ze open staan. We delen het op aanvraag: het bevat implementatiedetails die niet op een publieke pagina horen.

Vraag het register op

Lees verder

Zet je proceshuis vandaag nog op.

Bekijk de gevulde demo-omgeving of plan een demo op maat — en zie hoe RASCI, risk & control en APQC-benchmark aan één processtap hangen.

Beveiliging — hoe we Proceshuis bouwen en toetsen