Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Excerpt
nameInleiding

Het beleid van veilig ontwerpen en ontwikkelen bevat de maatregelen om op een veilige manier producten en interne toepassing te implementeren door vanaf de start bij het ontwerp tot aan de ingebruikname een aantal informatieveiligheidseisen in acht te nemen.

Inhoud

Table of Contents
maxLevel3
minLevel1
include
outlinefalse
indent
excludeInhoud
typelist
printabletrue
class

Doel

(blue star) DOELSTELLINGEN

Het beleid draagt bij tot de realisatie van volgende informatieveiligheidsdoelstellingen van de organisatie:

Filter by label (Content by label)
showLabelsfalse
showSpacefalse
excerptTyperich content
cqllabel = "doelstellingen" and label = "veilig_ontwerpen_en_ontwikkelen"

(blue star) DREIGINGEN

Het beleid draagt bij om de volgende dreigingen te verminderen of te voorkomen:

Filter by label (Content by label)
showLabelsfalse
sorttitle
showSpacefalse
cqllabel = "dreiging" and label = "veilig_ontwerpen_en_ontwikkelen"

Beleid

Informatieveiligheid in projectmanagement

Projectmanagement

Informatieveiligheid behoort te worden geïntegreerd in projectmanagement om ervoor te zorgen dat Informatieveiligheidsrisico's in alle fases van een project worden aangepakt. Dit kan worden toegepast op elk type project ongeacht de complexiteit, omvang, duur, discipline of het toepassingsgebied (bijvoorbeeld een project voor een proces voor kernactiviteiten, een ICT-project, een facility management project, enz.). 

Het vroegtijdig nadenken over Informatieveiligheidseisen voor het product of de dienst (bijv. tijdens de plannings- en ontwerpfasen) kan leiden tot doeltreffender en kostenefficiëntere oplossingen voor Informatieveiligheid. 

Risico binnen projectmanagement

Panel
panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
panelIcon:icon_beleidslijnen:
panelIconText:icon_beleidslijnen:
bgColor#F4F5F7

Implementatiemaatregel

Informatieveiligheid moet worden geïntegreerd in projectmanagement om ervoor te zorgen dat Informatieveiligheidsrisico's in het kader van projectmanagement worden aangepakt. 

Panel
panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
panelIcon:icon_beleidslijnen:
panelIconText:icon_beleidslijnen:
bgColor#F4F5F7

Implementatiemaatregel

Naast het beleid voor Risicobeheer MOETEN de volgende maatregelen worden gevolgd tijdens het projectmanagement:

  • Informatieveiligheidsrisico’s moeten tijdens een vroeg stadium en periodiek gedurende de volledige levenscyclus van het project als onderdeel van de projectrisico's worden beoordeeld en behandeld.

  • Informatieveiligheidsrisico’s in verband met de uitvoering van projecten, zoals de beveiliging van interne en externe communicatieaspecten, moeten gedurende de gehele levenscyclus van het project in aanmerking worden genomen en behandeld.

  •  De vorderingen met betrekking tot de behandeling van Informatieveiligheidsrisico’s moeten worden beoordeeld en de doeltreffendheid van de behandeling wordt beoordeeld en beproefd. 

Panel
panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
panelIcon:icon_beleidslijnen:
panelIconText:icon_beleidslijnen:
bgColor#F4F5F7

Implementatiemaatregel

Informatieveiligheidseisen inzake de naleving van intellectuele - eigendomsrechten (Zie zie Leveranciersrelaties) MOETEN in de vroege stadia van projecten worden aangepakt. 

Panel
panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
panelIcon:icon_beleidslijnen:
panelIconText:icon_beleidslijnen:
bgColor#F4F5F7

Implementatiemaatregel

De passendheid gepastheid van de informatieveiligheidsoverwegingen en -activiteiten MOET in vooraf bepaalde stadia worden gecontroleerd door geschikte personen of governance- instanties, zoals bijv. de projectstuurgroep.  

Panel
panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
panelIcon:icon_beleidslijnen:
panelIconText:icon_beleidslijnen:
bgColor#F4F5F7

Implementatiemaatregel

Verantwoordelijkheden en bevoegdheden voor Informatieveiligheid informatieveiligheid relevant voor het project MOETEN worden gedefinieerd en worden toegewezen aan gespecificeerde rollen. 

Panel
panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
panelIcon:icon_beleidslijnen:
panelIconText:icon_beleidslijnen:
bgColor#F4F5F7

Implementatiemaatregel

Informatieveiligheidseisen voor de door het project te leveren producten of diensten MOETEN worden vastgesteld met gebruikmaking van verschillende methoden zoals het afleiden van nalevingseisen uit informatieveiligheidsbeleid, onderwerpspecifieke onderwerp-specifieke beleidsregels en regelgeving.

Verdere informatieveiligheidseisen kunnen KUNNEN worden ontleend aan activiteiten zoals dreigingsmodellering, beoordelingen van incidenten, het gebruik van kwetsbaarheidsdrempels of het opstellen van noodplannen om zo te bewerkstelligen dat de architectuur en het ontwerp van informatiesystemen worden beschermd tegen bekende dreigingen die gebaseerd zijn op de operationele omgeving. 

Panel
panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
panelIcon:icon_beleidslijnen:
panelIconText:icon_beleidslijnen:
bgColor#F4F5F7

Implementatiemaatregel

Informatieveiligheidseisen MOETEN worden vastgesteld voor alle soorten projecten, niet alleen voor ICT-ontwikkelprojecten. Bij het vaststellen van deze eisen moet het volgende in aanmerking worden genomen:

  • welke informatie het betreft, wat de bijbehorende Informatieveiligheidsbehoeften informatieveiligheidsbehoeften zijn (classificatie) en de mogelijke negatieve bedrijfsimpact die het gevolg kan zijn van ontoereikende beveiliging;

  • de noodzaak om de desbetreffende informatie en andere gerelateerde bedrijfsmiddelen te beschermen, met name wat betreft vertrouwelijkheid, integriteit en beschikbaarheid; 

  • de vereiste mate van betrouwbaarheid of zekerheid ten opzichte van de beweerde identiteit van entiteiten om de authenticatie-eisen af te leiden;

  • processen voor het verlenen van toegang en autorisatie, voor klanten en andere zakelijke gebruikers en voor bevoorrechte of technische gebruikers, zoals relevante projectleden, mogelijk operationeel personeel of externe leveranciers;

  • het informeren van gebruikers over hun plichten en verantwoordelijkheden;

  • eisen die zijn afgeleid van bedrijfsprocessen, zoals registreren en monitoren van transacties, eisen voor onweerlegbaarheid;

  • eisen die verplicht zijn gesteld door andere beheersmaatregelen met betrekking tot Informatieveiligheid informatieveiligheid (bijv. interfaces voor het registreren en monitoren of systemen voor het detecteren van lekken van gegevens);

  • naleving van de wettelijke, statutaire, regelgevende en contractuele omgeving waarin de organisatie actief is;

  • het vereiste niveau van vertrouwen of zekerheid dat derden zullen voldoen aan het Informatieveiligheidsbeleid informatieveiligheidsbeleid en de onderwerpspecifieke onderwerp-specifieke beleidsregels van de organisatie, met inbegrip van relevante beveiligingsclausules in overeenkomsten of contracten. 

Toegangsbeveiliging op de broncode

Panel
panelIconIdatlassian-info
panelIcon:info:
bgColor#FFFFFF
Zie de

Broncode wordt beheerd binnen het GIT versiebeheer systeem. Dit maakt het mogelijk voor meerdere ontwikkelaars om gelijktijdig aan projecten samen te werken. Zie Termen en definities voor een formele definitie van “broncode”. Dit beleid gaat over alle situaties waar broncode is opgeslagen.

Broncode wordt beheerd binnen het GIT versiebeheer systeem. Dit maakt het mogelijk voor meerdere ontwikkelaars om gelijktijdig aan projecten samen te werken.

Panel
panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
panelIcon:icon_beleidslijnen:
panelIconText:icon_beleidslijnen:
bgColor#F4F5F7

Implementatiemaatregel

Broncode MOET gecontroleerd centraal worden opgeslagen in een versiebeheersysteem voor code (GIT). 

Panel
panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
panelIcon:icon_beleidslijnen:
panelIconText:icon_beleidslijnen:
bgColor#F4F5F7

Implementatiemaatregel

Lees- en schrijftoegang tot broncode MOET afgestemd worden conform Toegangsbeveiliging.

Panel
panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
panelIcon:icon_beleidslijnen:
panelIconText:icon_beleidslijnen:
bgColor#F4F5F7

Implementatiemaatregel

#### TOT HIER NAGEKEKEN

Om de impact van niet-geautoriseerde wijzigingen en het lekken van vertrouwelijke informatie via broncode te minimaliseren, MOETEN de broncodebibliotheken afgeschermd worden. Voor deze beveiliging MOETEN volgende richtlijnen worden gehanteerd: 

  • Broncodebibliotheken zijn privé en het publiek maken van broncode MOET het beleid voor toegangsbeveiliging Toegangsbeveiliging volgen;

  • Elke broncodebibliotheek is een bedrijfsmiddel en MOET het beleid beheer bedrijfsmiddelen volgen;

  • Procedures voor wijzigingsbeheer MOETEN worden toegepast op het bijwerken van broncode en gerelateerde zaken en het verlenen van toegang tot broncode en dit pas uitvoeren nadat de passende autorisatie is ontvangen; 

  • Vermijden Het MOET vermeden worden om vertrouwelijke informatie op te slaan in de broncode of commit messages, bvb. Door het gebruik van development configuratie bestanden. Voorbeelden van vertrouwelijke informatie

  • Activiteiten kunnen altijd aan een natuurlijke persoon worden gekoppeld of een proces waar een verantwoordelijke natuurlijk persoon aan is toegewezen

  • (interne) IP adressen of DNS entries 

  • Configuratiedetails (bvb. IaC, Database modellen) 

  • Persoonsgegevens vanaf klasse 3 

  • Controle houden op broncode wijzigingen

  • Pull requests / Broncode reviews 

  • Development / test / acceptatie en release branches wanneer toepasbaar 

  • Commits signen 

  • Ontwikkelaars mogen geen zijn IP adressen, DNS entries of persoonsgegevens vanaf klasse 3;

  • Ontwikkelaars MOGEN GEEN rechtstreekse toegang tot de broncodebibliotheek krijgen, maar via ontwikkelinstrumenten die activiteiten en autorisaties met betrekking tot de broncode beheersen; 

  • Lijsten van programma's MOETEN bewaard worden in een beveiligde omgeving bewaren waar lees- en schrijftoegang op passende wijze behoort te worden beheerd en toegewezen; 

  • Er MOET een auditlogbestand bijhouden logboekregistratie zijn van alle toegangsinstanties toegang tot en van alle wijzigingen aan de broncode. 

Beveiligen tijdens de ontwikkelcyclus

Panel
panelIconIdatlassian-info
panelIcon:info:
bgColor#FFFFFF

Bewerkstelligen dat Informatieveiligheid binnen de veilige ontwikkelcyclus van software en systemen wordt ontworpen en geïmplementeerd. 

Panel
panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
panelIcon:icon_beleidslijnen:
panelIconText:icon_beleidslijnen:
bgColor#F4F5F7

Implementatiemaatregel

Ontwikkel-, test-, acceptatie-, en productieomgevingen MOETEN gescheiden worden. 

OTAP staat voor:

  • Ontwikkeling (O): Dit is de fase waarin software wordt ontwikkeld of aangepast. Ontwikkelaars schrijven nieuwe code of passen bestaande code aan om nieuwe functionaliteiten toe te voegen of bugs op te lossen. Deze ontwikkelingen vinden plaats in een gecontroleerde ontwikkelomgeving.

  • Test (T): Nadat de ontwikkeling is voltooid, wordt de software getest in een aparte testomgeving om te controleren of

    De ontwikkelcyclus bestaat uit de zogenaamde OTAP fases, waarbij OTAP staat voor:

    • Ontwikkeling (O): Dit is de fase waarin software wordt ontwikkeld of aangepast. Ontwikkelaars schrijven nieuwe code of passen bestaande code aan om nieuwe functionaliteiten toe te voegen of bugs op te lossen. Deze ontwikkelingen vinden plaats in een gecontroleerde ontwikkelomgeving.

    • Test (T): Nadat de ontwikkeling is voltooid, wordt de software getest in een aparte testomgeving om te controleren of alles naar behoren werkt en of de nieuwe functionaliteiten correct functioneren. Eventuele fouten worden opgespoord en opgelost voordat de software wordt vrijgegeven voor productie.

    • Acceptatie (A): In deze fase wordt de software getest in een omgeving die zo dicht mogelijk bij de uiteindelijke productieomgeving ligt. Dit wordt gedaan om ervoor te zorgen dat de software correct functioneert in een omgeving die vergelijkbaar is met de echte wereld. Het doel is om te verifiëren of de software voldoet aan de vereisten en verwachtingen van de eindgebruikers.

    • Productie (P): Na succesvolle tests en acceptatie wordt de software vrijgegeven voor gebruik in de productieomgeving. Dit is de omgeving waar de software daadwerkelijk wordt ingezet en gebruikt door eindgebruikers.

    9e6f15e6-c999-4552-
    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7
    Panel
    panelIconId

    Implementatiemaatregel

    Beveiligingseisen MOETEN worden gespecificeerd en geïntegreerd tijdens de specificatie- en ontwerpfase.  Ook  dient een risico assessment te worden uitgevoerd die een sterke nadruk legt op veiligheid. 

    Info

    Software architectuur maakt gebruik van requirements engineering, de implementatie maatregelen in het ISMS zover toepasbaar, behoren terug te komen in het software ontwerp.

    Panel
    panelIconIdatlassian-info
    panelIcon:info:
    bgColor#FFFFFF

    De productieomgeving en de gegevens beschermen tegen compromittering door ontwikkel- en testactiviteiten. 

    Ontwikkel-, test-, acceptatie-, en productieomgevingen MOETEN gescheiden worden. 

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    Met de volgende aspecten MOET rekening te worden gehoudenBij het opzetten van ontwikkel-, test-, acceptatie-, en productieomgevingen MOETEN moeten de volgende maatregelen worden geïmplementeerd

    • Er MOETEN regels en autorisaties

    definieren, documenteren en implementeren
    • worden opgezet en gedocumenteerd voor het

    inzetten
    • transporteren van software vanuit de ontwikkel- naar de productiestatus; 

    veranderingen an productiesystemen
    • Veranderingen aan systemen en toepassingen in productie MOETEN in een

    test- of gefaseerde omgeving testen voordat
    • testomgeving worden getest voordat ze in

    productiesystemen worden toegepast (zie Testen van de beveiliging tijdens ontwikkeling en acceptatie); niet testen
    • productie worden geïmplementeerd;

    • Er MAG NIET worden getest in productieomgevingen behalve in gedefinieerde en goedgekeurde omstandigheden; 

    compilers
    • Compilers, editors en andere ontwikkelinstrumenten of systeemhulpmiddelen

    behoren
    • MOGEN NIET, indien ze niet nodig zijn,

    niet
    • toegankelijk

    te geen
    • zijn vanuit productiesystemen; 

  • passende milieu-identificatielabels in menu's tonen om het risico op fouten te beperken; 

    • Er MAG GEEN gevoelige informatie naar de ontwikkel- en testsysteemomgevingen

    kopiëren
    • worden gekopieerd tenzij er wordt voorzien in gelijkwaardige beheersmaatregelen voor de ontwikkel- en testsystemen en er geen mogelijkheid is om met een testdataset te werken

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    In alle gevallen MOETEN de ontwikkel- en testomgevingen te worden beschermd, waarbij het volgende 

    in aanmerking behoort te worden genomen: 

    het patchen en
    • ;

    • Het patchen en bijwerken van alle ontwikkelings-, integratie- en

    testinstrumenten (
    • test software met inbegrip van builders, integratie-instrumenten, compilers, configuratiesystemen en bibliotheken

    ); beveiligde configuratie van systemen en software conform IT Service
    • MOET worden uitgevoerd volgens de instructies van de leveranciers;

    • Veranderingen aan de omgeving en de daarin opgeslagen codes MOET worden gelogd;

    • Configuratie van systemen en software MOET gebeuren conform het beleid IT Service management

    toegangsbeveiliging
    • Toegangsbeveiliging voor de omgevingen MOET worden opgezet conform conform het beleid Toegangsbeveiliging

  • monitoren van veranderingen aan de omgeving en de daarin opgeslagen codes; 

  • beveiligde monitoring van de omgevingen; 

    • Er MOETEN back-ups

    maken  
    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    Het MOET niet MAG NIET mogelijk te zijn dat éen één persoon zonder voorafgaande beoordeling en goedkeuring veranderingen aan zowel de ontwikkeling ontwikkel- als de productie-omgeving kan doorvoeren. Dit kan bijvoorbeeld worden bereikt door toegangsrechten te scheiden of door middel van regels die worden gemonitord.

    In uitzonderingssituaties behoren aanvullende maatregelen zoals het bijhouden van gedetailleerde logbestanden en realtimemonitoring realtime monitoring te worden geimplementeerd geïmplementeerd om veranderingen door onbevoegden te detecteren en er actie op te ondernemen. 

    Toepassingsbeveiligingseisen

    Testen

    Algemene beveiligingseisen

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    Het testen van de systemen en de beveiliging, zoals regressietests, codescans en penetratietests MOETEN worden uitgevoerd. 

    Regressietests

    Regressietests zijn een type softwaretest die wordt uitgevoerd om te controleren of recente code- of omgevingswijzigingen geen ongewenste effecten hebben op bestaande functionaliteiten. Het doel van regressietests is om te verzekeren dat nieuwe updates, bugfixes of functionaliteiten de bestaande code niet breken of nieuwe fouten introduceren in het systeem. Dit type test is cruciaal in continu ontwikkelende softwareprojecten om te garanderen dat de applicatie stabiel en betrouwbaar blijft door de tijd heen. Regressietests kunnen handmatig of automatisch worden uitgevoerd, waarbij automatische tests vaak de voorkeur hebben voor hun efficiëntie en herhaalbaarheid.

    Codescans

    Codescans, of statische code-analyse, zijn processen waarbij tools worden gebruikt om de broncode van een applicatie te analyseren zonder deze daadwerkelijk uit te voeren. Deze scans zoeken naar patronen in de code die kunnen wijzen op fouten, kwetsbaarheden, stijlfouten of afwijkingen van best practices. Codescans zijn een essentieel onderdeel van de ontwikkelingscyclus om de kwaliteit en veiligheid van de code te verbeteren, risico's te verminderen en de naleving van coderingsstandaarden te waarborgen. Statische code-analyse helpt bij het vroegtijdig identificeren van problemen die in latere stadia van ontwikkeling of na uitrol moeilijker en kostbaarder zijn om op te lossen.

    Penetratietests

    Penetratietests, vaak "pen-tests" genoemd, zijn een methode voor het evalueren van de beveiliging van een IT-infrastructuur of applicatie door actief te proberen deze te exploiteren. Het doel van penetratietests is om kwetsbare punten of beveiligingslekken te identificeren die een aanvaller zou kunnen gebruiken om ongeautoriseerde toegang te krijgen tot systemen of gegevens, of om andere kwaadaardige activiteiten uit te voeren. Tijdens een penetratietest simuleren beveiligingsexperts aanvallen op netwerken, applicaties, en andere systemen op dezelfde manier als een echte aanvaller dat zou doen, maar dan op een gecontroleerde en overeengekomen manier. De resultaten van penetratietests bieden waardevolle inzichten in de effectiviteit van de huidige beveiligingsmaatregelen en waar verbeteringen nodig zijn.

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    Beveiliging in het versiebeheer: 

    Elk gebruikt versiebeheer dient volgens volgende regels opgesteld te worden:  

    • Een versie nummer voor een ontwikkeling dient te bestaan uit 3 componenten  

    • MAJOR: wordt verhoogd bij nieuwe features of uitbreidingen die niet compatibel zijn bij de vorige MAJOR-versie  

    • MINOR: wordt verhoogd bij het toevoegen van functionaliteit die compatibel is met de huidige MAJOR-versie  

    • PATCH: wordt verhoogd bij het toevoegen van bugfixes binnen de huidige MINOR.  

    Bovenstaande versie-bouwstenen dienen samengevoegd te worden tot het formaat: <MAJOR.MINOR.PATCH> 

    Aanvullende labels voor prerelease (TNI, BETA, DEV) en build-metadata dienen toegevoegd te worden aan het bovenstaande formaat. Voorbeelden van deze aanvullende labels in combinatie met bovenstaand formaat zijn:  

    • 1.0.0-alpha  

    • 1.2.1-beta.11  

    • 3.2.1-rc.1  

    • 2.2.1-beta.20042021.1  

    Als versie raamwerk volgen we het Semantisch Versioning principe, zoals beschreven op http://semver.org 

    Beveiligingseisen voor toepassingen MOETEN worden geïdentificeerd en gespecificeerd aan de hand van een risicobeoordeling. De eisen moeten met ondersteuning van informatieveiligheidsspecialisten worden ontwikkeld.  

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    Beveiligingseisen MOETEN worden gespecificeerd en geïntegreerd tijdens de specificatie- en ontwerpfase. De implementatie maatregelen uit het informatieveiligheidsbeleid MOETEN in het software ontwerp worden vermeld in zoverre van toepassing.

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    Toepassingsbeveiligingseisen MOETEN het volgende te omvatten, al naargelang de situatie:  

    • het niveau van vertrouwen in de identiteit van entiteiten (bijv. via authenticatie);  

    • het identificeren van het door de toepassing te verwerken soort informatie en het classificatieniveau ervan;  

    • de noodzaak van segmentatie van toegang en het niveau van toegang tot gegevens en functies in de toepassing;  

    • weerstand tegen kwaadaardige aanvallen of onbedoelde verstoringen (bijv. bescherming tegen bufferoverflow of SQL-injecties];  

    • wettelijke, statutaire en regelgevende eisen in het rechtsgebied waar de transactie wordt gegenereerd, verwerkt, voltooid of opgeslagen;  

    • de noodzaak van privacy met betrekking tot alle betrokken partijen;  

    • de eisen ten aanzien van bescherming van vertrouwelijke informatie;  

    • bescherming van gegevens tijdens de verwerking, tijdens het transport en in rust; 

    • de noodzaak om communicatie tussen alle betrokken partijen op beveiligde wijze te versleutelen;  

    • inputbeheersmaatregelen, waaronder integriteitscontroles en validatie van de invoer;  

    • geautomatiseerde beheersmaatregelen (bijv. goedkeuringslimieten of dubbele goedkeuring);  

    • outputbeheersmaatregelen, waarbij ook wordt nagedacht over wie er toegang kan hebben tot output en de autorisatie ervoor;  

    • beperkingen met betrekking tot de inhoud van vrije tekst-velden aangezien deze kunnen leiden tot ongecontroleerde opslag van vertrouwelijke gegevens (bijv. persoonsgegevens);  

    • eisen die zijn afgeleid van het bedrijfsproces, zoals registreren en monitoren van transacties, eisen voor onweerlegbaarheid;  

    • eisen die verplicht zijn gesteld door andere beheersmaatregelen met betrekking tot beveiliging (bijv. interfaces voor het registreren en monitoren of systemen voor het detecteren van lekken van gegevens);  

    • het afhandelen van foutmeldingen.

    Beveiligingseisen voor transactie-systemen 

    Transactie-systemen zijn systemen die betrokken zijn bij het uitvoeren, verwerken, en beheren van transacties, zoals financiële overdrachten, e-commerce, en gegevensuitwisseling. Deze diensten verwerken vaak gevoelige informatie en vereisen daarom sterke beveiligingsmaatregelen om de integriteit, vertrouwelijkheid, en beschikbaarheid van de gegevens te beschermen.

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    Medewerkers MOETEN conform Personeelsbeveiliging geselecteerd te worden voor ontwikkelrollen. Medewerkers die een rol opnemen in de ontwikkeling van software moeten opgeleid worden in de toepassing van informatieveiligheidsprincipes en het toepassen van veilige coderingstechnieken, waaronder:  

    ·       hoe coderingskwetsbaarheden kunnen worden vermeden, en  

    ·       begrijpen hoe gevoelige gegevens in het geheugen worden verwerkt 

    In aanvulling op de algemene beveiligingseisen, MOETEN voor transactie-systemen, de volgende informatieveiligheidseisen worden in acht genomen: 

    • de mate van vertrouwen die beide partijen eisen van elkaars beweerde identiteit; 

    • de vereiste mate van vertrouwen in de integriteit van informatie die wordt uitgewisseld of verwerkt en de mechanismen voor het identificeren van integriteitsgebreken (bijv. cyclische redundantiecontrole, hashing, of digitale handtekeningen); 

    • autorisatieprocedures voor wie de inhoud van belangrijke transactiedocumenten kan goedkeuren, belangrijke transactiedocumenten in circulatie kan brengen of kan ondertekenen; 

    • vertrouwelijkheid, integriteit, bewijs van verzending en ontvangst van belangrijke documenten en de onweerlegbaarheid (bijv. contracten in samenhang met inschrijvings- en contractprocedures); 

    • de vertrouwelijkheid en integriteit van transacties (bijv. orders, gegevens betreffende afleveringsadressen en ontvangstbevestigingen); 

    • eisen ten aanzien van hoelang een transactie vertrouwelijk moet blijven; 

    • verzekerings- en andere contractuele eisen. 

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    De betrokken Product Owner moet het niveau van beveiligingsvaardigheden en kennis die vereist is voor het ontwikkelingsproces definiëren en stelt de training voor aan HR. HR omvat passende training in het opleidingstraject van de ontwikkelaars. 

    Toepassingsbeveiligingseisen

    Panel
    panelIconIdatlassian-info
    panelIcon:info:
    bgColor#FFFFFF

    Onder toepassingen verstaan we voornamelijk software applicaties die zijn ontwikkeld maar applicaties die zijn aangekocht zijn ook van toepassing.

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    Beveiligingseisen voor toepassingen MOETEN worden geïdentificeerd en gespecificeerd aan de hand van een risicobeoordeling (zie Proces - Informatieveiligheid risicobeheer ). De eisen moeten met ondersteuning van Informatieveiligheidsspecialisten worden ontwikkeld.  

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    Toepassingsbeveiligingseisen MOETEN het volgende te omvatten, al naargelang de situatie:  

    • het niveau van vertrouwen in de identiteit van entiteiten (bijv. via authenticatie);  

    • het identificeren van het door de toepassing te verwerken soort informatie en het classificatieniveau ervan;  

    • de noodzaak van segmentatie van toegang en het niveau van toegang tot gegevens en functies in de toepassing;  

    • weerstand tegen kwaadaardige aanvallen of onbedoelde verstoringen (bijv. bescherming tegen bufferoverflow of SQL-injecties];  

    • wettelijke, statutaire en regelgevende eisen in het rechtsgebied waar de transactie wordt gegenereerd, verwerkt, voltooid of opgeslagen;  

    • de noodzaak van privacy met betrekking tot alle betrokken partijen;  

    • de eisen ten aanzien van bescherming van vertrouwelijke informatie;  

    • bescherming van gegevens tijdens de verwerking, tijdens het transport en in rust; 

    • de noodzaak om communicatie tussen alle betrokken partijen op beveiligde wijze te versleutelen;  

    • inputbeheersmaatregelen, waaronder integriteitscontroles en validatie van de invoer;  

    • geautomatiseerde beheersmaatregelen (bijv. goedkeuringslimieten of dubbele goedkeuring);  

    • outputbeheersmaatregelen, waarbij ook wordt nagedacht over wie er toegang kan hebben tot output en de autorisatie ervoor;  

    • beperkingen met betrekking tot de inhoud van ‘vrije tekstvelden’, aangezien deze kunnen leiden tot ongecontroleerde opslag van vertrouwelijke gegevens (bijv. persoonsgegevens);  

    • eisen die zijn afgeleid van het bedrijfsproces, zoals registreren en monitoren van transacties, eisen voor onweerlegbaarheid;  

    • eisen die verplicht zijn gesteld door andere beheersmaatregelen met betrekking tot beveiliging (bijv. interfaces voor het registreren en monitoren of systemen voor het detecteren van lekken van gegevens);  

    • het afhandelen van foutmeldingen 

    Transactionele diensten 

    Panel
    panelIconIdatlassian-info
    panelIcon:info:
    bgColor#FFFFFF

    Transactionele diensten zijn processen die betrokken zijn bij het uitvoeren, verwerken, en beheren van transacties, zoals financiële overdrachten, e-commerce, en gegevensuitwisseling. Deze diensten verwerken vaak gevoelige informatie en vereisen daarom sterke beveiligingsmaatregelen om de integriteit, vertrouwelijkheid, en beschikbaarheid van de gegevens te beschermen.

    PanelpanelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24panelIcon:icon_beleidslijnen:panelIconText:icon

    In aanvulling hierop MOET het volgende in aanmerking te worden genomen voor toepassingen waarbij er sprake is van elektronisch bestellen en betalen: 

    1. eisen om de vertrouwelijkheid en integriteit van orderinformatie in stand te houden; 

    2. de mate van verificatie die passend is voor controle van betalingsinformatie die door een klant is verstrekt: 

    3. verlies of vermenigvuldiging van transactie-informatie vermijden; 

    4. transactiegegevens buiten een publiek toegankelijke omgeving opslaan (bijv. op een opslagplatform op het intranet van de organisatie, in plaats van deze te bewaren en te tonen op direct vanuit internet toegankelijke elektronische opslagmedia); 

    5. als een vertrouwde instantie word gebruikt (bijv. voor het uitgeven en onderhouden van digitale handtekeningen of digitale certificaten), beveiliging integreren en inbedden in het gehele beheerproces van certificaten of handtekeningen. 

    Veilige systeemarchitectuur en technische uitgangspunten

    Systemen kunnen beveiligingsmaatregelen implementeren in de verschillende architectuurlagen, met name:

    • Bedrijfslaag: Deze laag richt zich op de organisatorische aspecten, waaronder bedrijfsprocessen, governance en beleid. Het definieert hoe de bedrijfsdoelstellingen worden bereikt en hoe technologie deze doelstellingen ondersteunt. Beveiliging in deze laag zorgt ervoor dat bedrijfsprocessen en besluitvorming rekening houden met Informatieveiligheidseisen.

    • Gegevenslaag: Omvat de structuur, opslag, en het beheer van data binnen de organisatie. Het gaat hierbij om databases, datawarehouses, en de manier waarop data wordt gecategoriseerd, toegankelijk gemaakt, en beschermd. Beveiligingsmaatregelen op deze laag richten zich op data-integriteit, vertrouwelijkheid, en beschikbaarheid.

    • Toepassingslaag: Deze laag bevat de software en applicaties die worden gebruikt door de organisatie. Het gaat om het ontwerp en de ontwikkeling van applicaties met een focus op hoe deze applicaties interageren met de gebruiker en andere systemen. Beveiliging in deze laag richt zich op het beschermen van de applicaties tegen kwetsbaarheden en aanvallen, zoals bijvoorbeeld SQL injectie of cross-site scripting.

    • Technologielaag: Betreft de fysieke en virtuele technologie-infrastructuur, zoals servers, netwerken, en cloud services. Deze laag zorgt voor de ondersteuning van alle IT-diensten en -toepassingen. Beveiligingsaspecten omvatten netwerkbeveiliging, fysieke beveiliging, en het beheer van toegangsrechten.

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    Beveiliging MOET deel uitmaken van het ontwerp bij alle architectuurlagen (bedrijf, gegevens, toepassingen en technologie). 

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    In aanvulling hierop behoort voor toepassingen die transactionele diensten tussen de organisatie en een partner aanbieden, het volgende in aanmerking te worden genomen bij het identificeren van Informatieveiligheidseisen: 

    • de mate van vertrouwen die beide partijen eisen van elkaars beweerde identiteit; 

    • de vereiste mate van vertrouwen in de integriteit van informatie die wordt uitgewisseld of verwerkt en de mechanismen voor het identificeren van integriteitsgebreken (bijv. Cyclische redundantiecontrole, hashing, digitale handtekeningen); 

    • autorisatieprocedures voor wie de inhoud van belangrijke transactiedocumenten kan goedkeuren, belangrijke transactiedocumenten in circulatie kan brengen of kan ondertekenen; 

    • vertrouwelijkheid, integriteit, bewijs van verzending en ontvangst van belangrijke documenten en de onweerlegbaarheid (bijv. contracten in samenhang met inschrijvings- en contractprocedures); 

    • de vertrouwelijkheid en integriteit van transacties (bijv. orders, gegevens betreffende afleveringsadressen en ontvangstbevestigingen); 

    • eisen ten aanzien van hoelang een transactie vertrouwelijk moet blijven; 

    • verzekerings- en andere contractuele eisen. 

    Nieuwe technologie MOET worden geanalyseerd op veiligheidsrisico’s en het ontwerp MOET worden beoordeeld aan de hand van bekende aanvalspatronen. 

    De volgende aspecten MOETEN worden in acht genomen:

    • Voorbereiding en informatieverzameling: begin met het verzamelen van gedetailleerde informatie over de nieuwe technologie, inclusief architectuur, functionaliteiten, en interacties met andere systemen;

    • Aanvalsoppervlak identificatie: identificeer het aanvalsoppervlak van de nieuwe technologie;

    • Analyse van gekende aanvalspatronen: integreer kennis van bekende aanvalspatronen en dreigingen specifiek voor de technologie of vergelijkbare systemen;

    • Risico-identificatie en beoordeling: combineer de informatie uit de vorige stappen om specifieke risico's te identificeren en voer het risicobeheersproces uit.

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Veilige systeemarchitectuur en technische uitgangspunten

    Panel
    panelIconIdatlassian-info
    panelIcon:info:
    bgColor#FFFFFF

    Waarborgen dat informatiesystemen veilig worden ontworpen, geïmplementeerd en beheerd binnen de ontwikkelingslevenscyclus. 

    Panel
    panelIconIdatlassian-info
    panelIcon:info:
    bgColor#FFFFFF

    Uitgangspunten voor veilig ontwerpen bieden richtlijnen voor manipulatietechnieken, beheer van beveiligde sessies en gegevensvalidatie en opschoning.

    Panel
    panelIconId

    Implementatiemaatregel

    Toepassingen voor elektronisch bestellen en betalen 

    In aanvulling hierop behoort het volgende in aanmerking te worden genomen voor toepassingen waarbij er sprake is van elektronisch bestellen en betalen: 

    1. eisen om de vertrouwelijkheid en integriteit van orderinformatie in stand te houden; 

    2. de mate van verificatie die passend is voor controle van betalingsinformatie die door een klant is verstrekt: 

    3. verlies of vermenigvuldiging van transactie-informatie vermijden; 

    4. transactiegegevens buiten een publiek toegankelijke omgeving opslaan (bijv. op een opslagplatform op het intranet van de organisatie, in plaats van deze te bewaren en te tonen op direct vanuit internet toegankelijke elektronische opslagmedia); 

    5. als een vertrouwde instantie word gebruikt (bijv. voor het uitgeven en onderhouden van digitale handtekeningen of digitale certificaten), beveiliging integreren en inbedden in het gehele beheerproces van certificaten of handtekeningen. 

    Het ontwerp van een systeem MOET een analyse omvatten van: 

    • het volledige spectrum van beheersmaatregelen voor beveiliging dat vereist is om het systeem tegen geïdentificeerde dreigingen te beschermen, gebaseerd op de geïdentificeerde kwetsbaarheden binnen risicobeheer (zie Risicobeheer); 

    • de capaciteit van beveiligingsbeheersmaatregelen om beveiligingsgebeurtenissen te voorkomen, te detecteren of erop te reageren; 

    • specifieke beveiligingsbeheersmaatregelen die worden vereist door bepaalde bedrijfsprocessen (bijv. het versleutelen van gevoelige informatie, integriteit-controle en digitale ondertekening van informatie); 

    • waar en hoe beveiligingsbeheersmaatregelen behoren te worden toegepast (bijv. door ze te integreren met een beveiligingsarchitectuur en de technische infrastructuur); 

    • hoe individuele beveiligingsbeheersmaatregelen (handmatige en geautomatiseerde) samenwerken om een geïntegreerde verzameling beheersmaatregelen tot stand te brengen. 

    :icon_beleidslijnen
    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7
    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon

    Implementatiemaatregel

    Beveiliging moet deel uitmaken van het ontwerp bij alle architectuurlagen (bedrijf, gegevens, toepassingen en technologie). 

    1. Bedrijfslaag: Deze laag richt zich op de organisatorische aspecten, waaronder bedrijfsprocessen, governance, en beleid. Het definieert hoe de bedrijfsdoelstellingen worden bereikt en hoe technologie deze doelstellingen ondersteunt. Beveiliging in deze laag zorgt ervoor dat bedrijfsprocessen en besluitvorming rekening houden met Informatieveiligheidseisen.

    2. Gegevenslaag: Omvat de structuur, opslag, en het beheer van data binnen de organisatie. Het gaat hierbij om databases, datawarehouses, en de manier waarop data wordt gecategoriseerd, toegankelijk gemaakt, en beschermd. Beveiligingsmaatregelen op deze laag richten zich op data-integriteit, vertrouwelijkheid, en beschikbaarheid.

    3. Toepassingslaag: Deze laag bevat de software en applicaties die worden gebruikt door de organisatie. Het gaat om het ontwerp en de ontwikkeling van applicaties met een focus op hoe deze applicaties interageren met de gebruiker en andere systemen. Beveiliging in deze laag richt zich op het beschermen van de applicaties tegen kwetsbaarheden en aanvallen, zoals bijvoorbeeld SQL injectie of cross-site scripting.

    4. Technologielaag: Betreft de fysieke en virtuele technologie-infrastructuur, zoals servers, netwerken, en cloudservices. Deze laag zorgt voor de ondersteuning van alle IT-diensten en -toepassingen. Beveiligingsaspecten omvatten netwerkbeveiliging, fysieke beveiliging, en het beheer van toegangsrechten.

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    Nieuwe technologie moet worden geanalyseerd op veiligheidsrisico’s en het ontwerp moet worden beoordeeld aan de hand van bekende aanvalspatronen. 

    1. Voorbereiding en Informatieverzameling: Begin met het verzamelen van gedetailleerde informatie over de nieuwe technologie, inclusief architectuur, functionaliteiten, en interacties met andere systemen.

    2. Aanvalsoppervlak Identificatie: Identificeer het aanvalsoppervlak van de nieuwe technologie.

    3. Analyse van Bekende Aanvalspatronen: Integreer kennis van bekende aanvalspatronen en dreigingen specifiek voor de technologie of vergelijkbare systemen.

    4. Risico-Identificatie en Beoordeling: Combineer de informatie uit de vorige stappen om specifieke risico's te identificeren en voer het risico beheer proces uit.

    Het ontwerp van een systeem MOET gepaard gaan met: 

    • het gebruik van uitgangspunten voor beveiligingsarchitectuur zoals ‘security by design’ (beveiliging door ontwerp), ‘defence in depth’, ‘security by default’, ‘default deny’ (standaard weigeren), ‘fail securely’, ‘distrust input from external applications’ (input van externe toepassingen wantrouwen), ‘security in deployment’ (beveiliging tijdens implementatie), ‘assume breach’ (uitgaan van inbreuk), ‘least privilege’ (mininimaal benodigde rechten), ‘usability and manageability’ (bruikbaarheid en beheerbaarheid) en ‘least functionality’ (minimale benodigde functionaliteit); 

    • een beveiligingsgerichte beoordeling van het ontwerp om kwetsbaarheden op het gebied van Informatieveiligheid te helpen detecteren, ervoor te zorgen dat beveiligingsbeheersmaatregelen zijn gespecificeerd en aan de beveiligingseisen te voldoen; 

    • documentatie en formele erkenning van beveiligingsbeheersmaatregelen die niet volledig aan de eisen voldoen (bijv. vanwege dwingende veiligheidseisen); 

    • hardening van systemen waarbij ieder geval gebruik gemaakt word van een hardening management beoefening waarbij leveranciers beveiligings adviezen worden nageleefd. 

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    De organisatie MOET ‘zero trust’-beginselen overwegen zoals: 

    • ervan uitgaan dat er al sprake is van een inbreuk op de informatiesystemen van de organisatie en er daarom niet alleen kan worden vertrouwd op beveiliging van de buitengrenzen van netwerken; 

    • een benadering van ‘nooit vertrouwen, altijd verifiëren’ hanteren voor toegang tot informatiesystemen; 

    • bewerkstelligen dat verzoeken aan informatiesystemen van begin tot eind versleuteld zijn; 

    • elk verzoek aan een informatiesysteem controleren alsof dit afkomstig is van een open, extern netwerk, zelfs als deze verzoeken intern uit de organisatie afkomstig zijn (d.w.z. niets binnen of buiten de buitengrenzen van de organisatie automatisch vertrouwen); 

    • gebruikmaken van ‘least privilege’ (minste rechten) en dynamische toegangsbeveiligingstechnieken (zie [beleid voor toegangsbeveiliging]). Dit omvat het authenticeren en autoriseren van verzoeken om informatie of aan systemen op basis van contextuele informatie zoals authenticatie-informatie, gebruikersidentiteiten, gegevens over het ‘endpoint device’ van de gebruiker, en gegevensclassificatie (zie [Beleid voor toegangsbeveiliging] en [Beleid voor informatiebescherming]). 

    • personen die verzoeken indienen altijd authenticeren en autorisatieverzoeken aan informatiesystemen altijd valideren op basis van informatie, waaronder authenticatie-informatie en gebruikersidentiteiten, gegevens over het ‘endpoint device’ van de gebruiker, en gegevensclassificatie, bijvoorbeeld krachtige authenticatie  afdwingen (zie Toegangsbeveiliging en Informatiebescherming).

    panelIconId9e6f15e6
    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    Uitgangspunten De vastgestelde uitgangspunten voor het ontwerpen van beveiligde systemen en systeemarchitecturen MOETEN een analyse omvatten van: 

    • het volledige spectrum van beheersmaatregelen voor beveiliging dat vereist is om informatie en systemen tegen geïdentificeerde dreigingen te beschermen gebasseerd op de geidentificeerde kwetsbaarheden binnen risicobeheer (zie Risicobeheer); 

    • de capaciteit van beveiligingsbeheersmaatregelen om beveiligingsgebeurtenissen te voorkomen, te detecteren of erop te reageren; 

    • specifieke beveiligingsbeheersmaatregelen die worden vereist door bepaalde bedrijfsprocessen (bijv. het versleutelen van gevoelige informatie, integriteitscontrole en digitale ondertekening van informatie); 

    • waar en hoe beveiligingsbeheersmaatregelen behoren te worden toegepast (bijv. door ze te integreren met een beveiligingsarchitectuur en de technische infrastructuur); 

    • hoe individuele beveiligingsbeheersmaatregelen (handmatige en geautomatiseerde) samenwerken om een geïntegreerde verzameling beheersmaatregelen tot stand te brengen. 

    Panel

    waar van toepassing worden toegepast op de uitbestede ontwikkeling van informatiesystemen via de contracten en andere bindende overeenkomsten tussen de organisatie en de leverancier aan wie de organisatie uitbesteedt.

    De organisatie MOET ervoor zorgen dat de praktijken van leveranciers voor het ontwerpen van beveiligde systemen aansluiten op de behoeften van de organisatie. Zie ook Leveranciersrelaties

  • het gebruik van uitgangspunten voor beveiligingsarchitectuur zoals ‘security by design’ (beveiliging door ontwerp), ‘defence in depth’, ‘security by default’, ‘default deny’ (standaard weigeren), ‘fail securely’, ‘distrust input from external applications’ (input van externe toepassingen wantrouwen), ‘security in deployment’ (beveiliging tijdens implementatie), ‘assume breach’ (uitgaan van inbreuk), ‘least privilege’ (mininimaal benodigde rechten), ‘usability and manageability’ (bruikbaarheid en beheerbaarheid) en ‘least functionality’ (minimale benodigde functionaliteit); 

  • een beveiligingsgerichte beoordeling van het ontwerp om kwetsbaarheden op het gebied van Informatieveiligheid te helpen detecteren, ervoor te zorgen dat beveiligingsbeheersmaatregelen zijn gespecificeerd en aan de beveiligingseisen te voldoen; 

  • documentatie en formele erkenning van beveiligingsbeheersmaatregelen die niet volledig aan de eisen voldoen (bijv. vanwege dwingende veiligheidseisen); 

  • hardening van systemen waarbij ieder geval gebruik gemaakt word van een hardening management beoefening waarbij leveranciers beveiligings adviezen worden nageleefd. 
    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    Het ontwerp van beveiligde systemen MOET gepaard gaan met: 

    Voor uitbestede ontwikkeling en het inkopen van componenten MOET een verwervingsprocedure worden gevolgd.

    In de contracten met de leverancier MOETEN de vastgestelde beveiligingseisen zijn opgenomen.

    Voordat producten en diensten worden gekocht, MOETEN ze worden geëvalueerd tegen deze criteria.

    Na ieder ontwikkeltraject MOETEN er testrapporten als attestatie worden aangeleverd. 

    Veilig coderen

    Deze paragraaf behandelt de waarborgen dat veilige software wordt geschreven waardoor het aantal potentiële Informatieveiligheidskwetsbaarheden in de software wordt beperkt.

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    De organisatie MOET organisatie-brede processen op stellen om te voorzien in goede governance voor veilig coderen.

    Er MOET een nullijn wat betreft beveiliging te worden vastgesteld en toegepast.

    In aanvulling hierop MOETEN dergelijke processen en governance worden uitgebreid naar softwarecomponenten van derden en opensource software.  

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    De organisatie MOET monitoren op dreigingen in de echte wereld en actueel advies en actuele informatie over kwetsbaarheden in software als richtlijn om de principes voor veilig coderen van de organisatie te sturen door middel van continue verbetering en voortdurend leren.

    Planning en voorafgaand aan het coderen 

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    De organisatie MOET

    ‘zero trust’-beginselen overwegen zoals: 
    • ervan uitgaan dat er al sprake is van een inbreuk op de informatiesystemen van de organisatie en er daarom niet alleen kan worden vertrouwd op beveiliging van de buitengrenzen van netwerken; 

    • een benadering van ‘nooit vertrouwen, altijd verifiëren’ hanteren voor toegang tot informatiesystemen; 

    • bewerkstelligen dat verzoeken aan informatiesystemen van begin tot eind versleuteld zijn; 

    • elk verzoek aan een informatiesysteem controleren alsof dit afkomstig is van een open, extern netwerk, zelfs als deze verzoeken intern uit de organisatie afkomstig zijn (d.w.z. niets binnen of buiten de buitengrenzen van de organisatie automatisch vertrouwen); 

    • gebruikmaken van ‘least privilege’ (minste rechten) en dynamische toegangsbeveiligingstechnieken (zie [beleid voor toegangsbeveiliging]). Dit omvat het authenticeren en autoriseren van verzoeken om informatie of aan systemen op basis van contextuele informatie zoals authenticatie-informatie, gebruikersidentiteiten, gegevens over het ‘endpoint device’ van de gebruiker, en gegevensclassificatie (zie [Beleid voor toegangsbeveiliging] en [Beleid voor informatiebescherming]). 

    • personen die verzoeken indienen altijd authenticeren en autorisatieverzoeken aan informatiesystemen altijd valideren op basis van informatie, waaronder authenticatie-informatie en gebruikersidentiteiten, gegevens over het ‘endpoint device’ van de gebruiker, en gegevensclassificatie, bijvoorbeeld krachtige authenticatie  afdwingen  (zie [Beleid voor toegangsbeveiliging] en [Beleid voor informatiebescherming]).

    principes voor veilig coderen zowel voor nieuwe ontwikkelingen als bij hergebruik (nieuwe features / versies) toepassen. 

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    De planning en voorbereiding voor het ontwikkelen MOET de volgende elementen omvatten: 

    • organisatie-specifieke verwachtingen en goedgekeurde principes voor veilig coderen die zowel voor interne als voor uitbestede codeontwikkelingen behoren te worden gebruikt;

    • gebruikelijke en historische codeerpraktijken en -gebreken die tot kwetsbaarheden in de Informatieveiligheid leiden;

    • ontwikkelinstrumenten, zoals geïntegreerde ontwikkelomgevingen (IDE's), configureren om het maken van veilige code af te dwingen waar mogelijk:

    • automatische tests voor kritieke features;

    • richtlijnen volgen die door de aanbieders van ontwikkelinstrumenten en uitvoeringsomgevingen worden gegeven, al naargelang de situatie;

    • onderhoud en gebruik van actuele ontwikkelinstrumenten (bijv. compilers);

    • de kwalificatie van ontwikkelaars voor het schrijven van veilige code;

    • veilig ontwerp en veilige architectuur, met inbegrip van het opstellen van dreigingsmodellen;

    • normen voor veilig coderen en waar relevant het gebruik ervan verplicht stellen;

    • het gebruik van beheerste omgevingen voor ontwikkeling.

    Tijdens het coderen 

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    De

    vastgestelde uitgangspunten voor het ontwerpen van beveiligde systemen en systeemarchitecturen MOETEN waar van toepassing worden toegepast op de uitbestede ontwikkeling van informatiesystemen via de contracten en andere bindende overeenkomsten tussen de organisatie en de leverancier aan wie de organisatie uitbesteedt. De organisatie moet ervoor zorgen dat de praktijken van leveranciers voor het ontwerpen van beveiligde systemen aansluiten op de behoeften van de organisatie. Zie ook Leveranciersrelaties

    Veilig coderen

    Panel
    panelIconIdatlassian-info
    panelIcon:info:
    bgColor#FFFFFF

    Waarborgen dat veilige software wordt geschreven waardoor het aantal potentiële Informatieveiligheidskwetsbaarheden in de software wordt beperktorganisatie MOET veilige coderingspraktijken die specifiek zijn voor de programmeertalen en -technieken, gebruiken.

    Specifiek MOETEN de volgende regels worden gehanteerd:

    • het gebruik van veilige programmeertechnieken zoals ‘pair programming’ (programmeren in duo's) of iedergeval een vorm van het 'four eyes principle' voor kritieke functionaliteit, ‘refactoring’ (code herstructureren), ‘peer review’ (beoordeling door collega's), beveiligingsiteraties en testgestuurde ontwikkeling of in iedergeval een dekking van geautomatiseerde testen voor alle kritieke capabiliteiten van de software (code coverage);

    • het gebruik van gestructureerde programmeertechnieken;

    • verbod op het gebruik van onveilige ontwerptechnieken (bijvoorbeeld het gebruik van hardgecodeerde wachtwoorden, niet-goedgekeurde codesamples en niet-geauthenticeerde webdiensten).

    De organisatie kan van de volgende standaarden gebruik maken:

    • OWASP Secure Coding Practices

    • NIST Secure Software Development Framework

    Daarnaast zijn er voor gebruikte techniek specifieke standaarden en richtlijnen beschikbaar.

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    De organisatie dientorganisatiebrede processen op te stellen om te voorzien in gode governance voor veilig coderen. Er behoort een minimale nullijn wat betreft beveiliging te worden vastgesteld en toegepast. In aanvulling hierop behoren dergelijke processen en governance te worden uitgebreid tot softwarecomponenten van derden en opensourcesoftware.  Er MOET tijdens en na het ontwikkelen worden getest.

    Met procedures voor het statisch testen van de beveiliging van toepassingen (SAST) kunnen beveiligingslekken in software worden geïdentificeerd.

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Planning en voorafgaand aan het coderen 

    Panel
    panelIconIdatlassian-info
    panelIcon:info:
    bgColor#FFFFFF

    Implementatiemaatregel

    De organisatie MOET te monitoren op dreigingen in de echte wereld en actueel advies en actuele informatie over kwetsbaarheden in software als richtlijn om de principes voor veilig coderen van de organisatie door middel van continue verbetering en voorturend leren te sturen. Dit kan bijdragen aan het garanderen dat er doeltreffende praktijken voor veilig coderen worden geimplementeerd als tegenhanger tegen het snel veranderende dreigingslandschap. 

    Onder operationele systemen worden alle systemen die voor eindgebruikers bereikbaar zijn.Alvorens de toepassing operationeel te maken, MOET de software conform dit en ander informatieveiligheidsbeleid te zijn ontwikkeld en geconfigureerd, in het bijzonder;

    • het aanvalsoppervlak en het beginsel van het ‘least privilege’ (minste voorrechten) MOET zijn toegepast; 

    • een verificatie om te verifieren dat in het verleden gemaakte fouten binnen de organisatie bij het ontwikkelen van toepassingen niet aanwezig zijn MOET zijn uitgevoerd.

    Beoordeling en onderhoud  

    Implementatiemaatregel

    De organisatie MOET principes voor veilig coderen zowel voor nieuwe ontwikkelingen als bij hergebruik (nieuwe features / versies) toe te passen. 
    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7
    :icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    Nadat de code operationeel is gemaakt MOETEN:

    • updates op beveiligde wijze te worden verpakt en ingezet;

    • gemelde kwetsbaarheden in de informatieveiligheid worden opgepakt;

    • logbestanden van fouten en vermeende aanvallen worden bijgehouden en regelmatig beoordeeld om de code zo nodig aan te passen;

    • bibliotheken met broncode worden beschermd tegen toegang en manipulatie door onbevoegden (bijv. door gebruik te maken van configuratiebeheerinstrumenten die meestal functies als toegangsbeveiliging en versiebeheer bieden).

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen
    :panelIconText:icon_beleidslijnen:bgColor#F4F5F7

    Implementatiemaatregel

    De planning en voorbereiding voor het ontwikkelen dient de volgende elementen te omvatten: 

    • organisatiespecifieke verwachtingen en goedgekeurde principes voor veilig coderen die zowel voor interne als voor uitbestede codeontwikkelingen behoren te worden gebruikt;

    • gebruikelijke en historische codeerpraktijken en -gebreken die tot kwetsbaarheden in de Informatieveiligheid leiden;

    • ontwikkelinstrumenten, zoals geïntegreerde ontwikkelomgevingen (IDE's), configureren om het maken van veilige code af te dwingen waar mogelijk:

    • automatische tests voor kritieke features;

    • richtlijnen volgen die door de aanbieders van ontwikkelinstrumenten en uitvoeringsomgevingen worden gegeven, al naargelang de situatie;

    • onderhoud en gebruik van actuele ontwikkelinstrumenten (bijv. compilers);

    • de kwalificatie van ontwikkelaars voor het schrijven van veilige code;

    • veilig ontwerp en veilige architectuur, met inbegrip van het opstellen van dreigingsmodellen;

    • normen voor veilig coderen en waar relevant het gebruik ervan verplicht stellen;

    • het gebruik van beheerste omgevingen voor ontwikkeling.

    Tijdens het coderen 

    Waarborgen dat veilige software wordt geschreven waardoor het aantal potentiële Informatieveiligheidskwetsbaarheden in de software wordt beperkt
    Panel
    panelIconIdatlassian-info
    panelIcon:info:
    bgColor#FFFFFF
    :
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    Als er gebruikgemaakt wordt van externe instrumenten en bibliotheken, MOET de organisatie nadenken over:

    • het bewerkstelligen dat externe bibliotheken worden beheerd (bijv. door een inventarislijst bij te houden van bibliotheken die worden gebruikt en de desbetreffende versies) en regelmatig worden bijgewerkt met releasecycli;

    • het selecteren, autoriseren en hergebruiken van goed gecontroleerde componenten, met name authenticatie- en cryptografische componenten;

    • de licentie, beveiliging en historie van externe componenten;

    • het bewerkstelligen dat software kan worden onderhouden, wordt getraceerd en afkomstig is van beproefde, gerenommeerde bronnen;

    • het op voldoende lange termijn beschikbaar zijn van ontwikkelmiddelen en artefacten

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    De organistie MOET veilige coderingspraktijken die specifiek zijn voor de programmeertalen en -technieken gebruiken.

    Specifiek MOETEN de volgende regels worden gehanteerd:

    het gebruik van veilige programmeertechnieken zoals ‘pair programming’ (programmeren in duo's) of iedergeval een vorm van het 'four eyes principle' voor kritieke functionaliteit, ‘refactoring’ (code herstructureren), ‘peer review’ (beoordeling door collega's), beveiligingsiteraties en testgestuurde ontwikkeling of in iedergeval een dekking van geautomatiseerde testen voor alle kritieke capabiliteiten van de software (code coverage);

    het gebruik van gestructureerde programmeertechnieken;

    het gebruik van onveilige ontwerptechnieken (bijvoorbeeld het gebruik van hardgecodeerde wachtwoorden, niet-goedgekeurde codesamples en niet-geauthenticeerde webdiensten) verbieden;

    De organisatie kan van de volgende standaarden gebruik maken:

    • OWASP Secure Coding Practices

    • NIST Secure Software Development Framework

    Daarnaast zijn er voor gebruikte techniek specifieke standaarden en richtlijnen beschikbaar

    Als het nodig is om een softwarepakket te wijzigen, MOETEN de volgende punten in overweging te worden genomen: 

    • het risico dat ingebouwde beheersmaatregelen en integriteitsprocessen gecompromitteerd raken; 

    • of het al dan niet nodig is toestemming van de leverancier te verkrijgen; 

    • de mogelijkheid om de vereiste wijzigingen van de aanbieder als standaard programma-updates te verkrijgen; 

    • de impact als de organisatie verantwoordelijk wordt gehouden voor het toekomstig onderhoud van de software als gevolg van de veranderingen; 

    • compatibiliteit met andere software die in gebruik is. 

    Testen van de beveiliging tijdens ontwikkeling en acceptatie

    Deze paragraaf beschrijft het valideren van de informatieveiligheidseisen wanneer toepassingen of code in de productieomgeving worden uitgerold.

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    Er MOET tijdens en na het ontwikkelen worden getest.

    Met procedures voor het statisch

    Nieuwe informatiesystemen, upgrades en nieuwe versies MOETEN tijdens de ontwikkelingsprocessen grondig worden getest en geverifieerd. Het testen van de beveiliging

    van toepassingen (SAST) kunnen beveiligingslekken in software worden geïdentificeerd.

    MOET een integraal onderdeel te zijn van het testen voor systemen of componenten. 

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    Alvorens de toepassing operationeel te maken, MOET de software conform dit en ander beleid in het ISMS te zijn ontwikkeld en geconfigureerd, in het bijzonder;

    • het aanvalsoppervlak en het beginsel van het ‘least privilege’ (minste voorrechten) MOET zijn toegepast; 

    • een verificatie om te verifieren dat in het verleden gemaakte fouten binnen de organisatie bij het ontwikkelen van toepassingen niet aanwezig zijn MOET zijn uitgevoerd.

    Beoordeling en onderhoud  

    Panel
    panelIconIdatlassian-info
    panelIcon:info:
    bgColor#FFFFFF

    Waarborgen dat veilige software wordt geschreven waardoor het aantal potentiële Informatieveiligheidskwetsbaarheden in de software wordt beperkt. 

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    Nadat de code operationeel is gemaakt MOET:

  • updates op beveiligde wijze te worden verpakt en ingezet;

  • behoren gemelde kwetsbaarheden in de Informatieveiligheid te worden opgepakt

  • behoren logbestanden te worden bijgehouden van fouten en vermeende aanvallen en behoren de logbestanden regelmatig te worden beoordeeld om de code zo nodig aan te passen 

  • behoort de broncode te worden beschermd tegen toegang en manipulatie door onbevoegden (bijv. door gebruik te maken van configuratiebeheerinstrumenten, die meestal functies als toegangsbeveiliging en versiebeheer bieden).

  • Gebruikte bibliotheken van derden dienen te worden gescreend en uit een door de organisatie beheerde omgeving te worden geladen geinstalleerd of geladen. Waar mogelijk dienen bibliotheken uit een door de organsiatie beheerde bron geladen te worden. 

    Het testen van de beveiliging MOET worden uitgevoerd aan de hand van een verzameling eisen die als functioneel of niet-functioneel kunnen worden uitgedrukt. Het testen van de beveiliging MOET het volgende omvatten: 

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    Testplannen MOETEN met behulp van een verzameling criteria worden vastgesteld. De omvang van de tests moet in verhouding staan tot het belang, de aard van het systeem en de mogelijke impact van de verandering die wordt ingevoerd. Het testplan moet het volgende omvatten: 

    • een gedetailleerd schema van de activiteiten en tests; 

    • input en verwachte output onder allerlei omstandigheden; 

    • criteria om de resultaten te evalueren;  

    • een besluit over verdere acties naarmate nodig is 

    Het is niet nodig om een register te gaan bijhouden van alle tests. Wel is het belangrijk dat er een document bestaat wat als handboek voor het testen van het product gebruik kan worden met:

    • Doelstellingen:

      • Duidelijke vermelding van de doelen van het testen;

      • Wat wordt er verwacht te worden bereikt door middel van de tests;

    • Scope:

      • Welke delen van de software worden getest en welke niet;

      • Inclusief functionaliteiten, platforms, apparaten, enz.;

    • Teststrategie:

      • Beschrijving van de aanpak voor het testen;

      • Inclusief testmethoden (zoals functionele tests, regressietests, prestatietests, etc.) niet uitsluitend geautomatiseerde testplatformen;

      • Prioritering van tests;

      • Gebruikte tools en technologieën;

    • Hoe de verschillende tests uitgevoerd worden.

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:
    icon_beleidslijnen:bgColor#F4F5F7

    Implementatiemaatregel

    Als er gebruikgemaakt wordt van externe instrumenten en bibliotheken, MOET de organisatie na te denken over:

    • het bewerkstelligen dat externe bibliotheken worden beheerd (bijv. door een inventarislijst bij te houden van bibliotheken die worden gebruikt en de desbetreffende versies) en regelmatig worden bijgewerkt met releasecycli;

    • het selecteren, autoriseren en hergebruiken van goed gecontroleerde componenten, met name authenticatie- en cryptografische componenten;

    • de licentie, beveiliging en historie van externe componenten;

    • het bewerkstelligen dat software kan worden onderhouden, wordt getraceerd en afkomstig is van beproefde, gerenommeerde bronnen;

    • het op voldoende lange termijn beschikbaar zijn van ontwikkelmiddelen en artefacten. 

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    Als het nodig is een softwarepakket te wijzigen, MOETEN de volgende punten in overweging te worden genomen: 

    • het risico dat ingebouwde beheersmaatregelen en integriteitsprocessen gecompromitteerd raken; 

    • of het al dan niet nodig is toestemming van de leverancier te verkrijgen; 

    • de mogelijkheid om de vereiste wijzigingen van de aanbieder als standaard programma-updates te verkrijgen; 

    • de impact als de organisatie verantwoordelijk wordt gehouden voor het toekomstig onderhoud van de software als gevolg van de veranderingen; 

    • compatibiliteit met andere software die in gebruik is. 

    Testen van de beveiliging tijdens ontwikkeling en acceptatie

    Panel
    panelIconIdatlassian-info
    panelIcon:info:
    bgColor#FFFFFF

    Valideren of aan de Informatieveiligheidseisen wordt voldaan wanneer toepassingen of code in de productieomgeving worden uitgerold. 

    Implementatiemaatregel

    Nieuwe informatiesystemen, upgrades en nieuwe versies MOETEN tijdens de ontwikkelingsprocessen grondig te worden getest en geverifieerd. Het testen van de beveiliging behoort een integraal onderdeel te zijn van het testen voor systemen of componenten. 
    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7
    icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    De organisatie kan geautomatiseerde instrumenten inzetten zoals instrumenten om codes te analyseren of om op kwetsbaarheden te scannen, en MOETEN het herstel van informatieveiligheid-gerelateerde tekortkomingen te verifiëren deze diensten vallen onder software die geëvalueerd moet worden voor gebruik. 

    Men kan de volgende types van testen onderscheiden:

    • Regressietests: Regressietests zijn een type softwaretest die wordt uitgevoerd om te controleren of recente code- of omgevingswijzigingen geen ongewenste effecten hebben op bestaande functionaliteiten. Het doel van regressietests is om te verzekeren dat nieuwe updates, bugfixes of functionaliteiten de bestaande code niet breken of nieuwe fouten introduceren in het systeem. Dit type test is cruciaal in continu ontwikkelende softwareprojecten om te garanderen dat de applicatie stabiel en betrouwbaar blijft door de tijd heen. Regressietests kunnen handmatig of automatisch worden uitgevoerd, waarbij automatische tests vaak de voorkeur hebben voor hun efficiëntie en herhaalbaarheid.

    • Codescans: Codescans, of statische code-analyse, zijn processen waarbij tools worden gebruikt om de broncode van een applicatie te analyseren zonder deze daadwerkelijk uit te voeren. Deze scans zoeken naar patronen in de code die kunnen wijzen op fouten, kwetsbaarheden, stijlfouten of afwijkingen van best practices. Codescans zijn een essentieel onderdeel van de ontwikkelingscyclus om de kwaliteit en veiligheid van de code te verbeteren, risico's te verminderen en de naleving van coderingsstandaarden te waarborgen. Statische code-analyse helpt bij het vroegtijdig identificeren van problemen die in latere stadia van ontwikkeling of na uitrol moeilijker en kostbaarder zijn om op te lossen.

    • Penetratietests: Penetratietests, vaak "pen-tests" genoemd, zijn een methode voor het evalueren van de beveiliging van een IT-infrastructuur of applicatie door actief te proberen deze te exploiteren. Het doel van penetratietests is om kwetsbare punten of beveiligingslekken te identificeren die een aanvaller zou kunnen gebruiken om ongeautoriseerde toegang te krijgen tot systemen of gegevens, of om andere kwaadaardige activiteiten uit te voeren. Tijdens een penetratietest simuleren beveiligingsexperts aanvallen op netwerken, applicaties, en andere systemen op dezelfde manier als een echte aanvaller dat zou doen, maar dan op een gecontroleerde en overeengekomen manier. De resultaten van penetratietests bieden waardevolle inzichten in de effectiviteit van de huidige beveiligingsmaatregelen en waar verbeteringen nodig zijn.

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    Het testen van de beveiliging MOET worden uitgevoerd aan de hand van een verzameling eisen die als functioneel of niet-functioneel kunnen worden uitgedrukt. Het testen van de beveiliging moet het testen omvatten van: 

  • beveiligingsfuncties [bijv. authenticatie van gebruikers (zie Toegangsbeveiliging), toegangsbeperking (zie Toegangsbeveiliging) en het gebruik van cryptografie (zie Cryptografie

  • veilig coderen; 

  • beveiligde configuraties (zie IT Service management (configuratiebeheer), Infrastructuurbeveiliging ) waaronder die van besturingssystemen, firewalls en andere beveiligingscomponenten

    Het testen van de systemen en de beveiliging, zoals regressietests, codescans en penetratietests MOET worden uitgevoerd

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    Testplannen MOETEN met behulp van een verzameling criteria worden vastgesteld. De omvang van de tests moet in verhouding staan tot het belang, de aard van het systeem en de mogelijke impact van de verandering die wordt ingevoerd. Het testplan moet het volgende omvatten: 

    • een gedetailleerd schema van de activiteiten en tests; 

    • input en verwachte output onder allerlei omstandigheden; 

    • criteria om de resultaten te evalueren;  

    • een besluit over verdere acties naarmate nodig is 

    Het is niet nodig om een register te gaan bijhouden van alle tests. Wel is het belangrijk dat er een document bestaat wat als handboek voor het testen van het product gebruik kan worden met:

  • Doelstellingen

    • Duidelijke vermelding van de doelen van het testen.

    • Wat wordt er verwacht te worden bereikt door middel van de tests.

  • Scope

    • Welke delen van de software worden getest en welke niet.

    • Inclusief functionaliteiten, platforms, apparaten, enz.

  • Teststrategie:

    • Beschrijving van de aanpak voor het testen.

    • Inclusief testmethoden (zoals functionele tests, regressietests, prestatietests, etc.) niet uitsluitend geautomatiseerde testplatformen.

    • Prioritering van tests.

    • Gebruikte tools en technologieën.

  • Hoe de verschillende tests uitgevoerd worden

    Voor interne ontwikkelactiviteiten MOETEN dergelijke tests in eerste instantie te worden uitgevoerd door het ontwikkelteam. Vervolgens behoren onafhankelijke tests te worden uitgevoerd om te bewerkstelligen dat het systeem uitsluitend werkt zoals voorzien (zie Informatieveiligheid in projectmanagement). Het volgende behoort te worden overwogen: 

    • het uitvoeren van activiteiten om code te beoordelen als relevant element voor het testen op zwakke plekken in de beveiliging, met inbegrip van onvoorziene inputs en omstandigheden; 

    • het scannen op kwetsbaarheden om onveilige configuraties en kwetsbaarheden in systemen te identificeren; 

    • het uitvoeren van penetratietests om onveilige code en ontwerpen te identificeren 

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    Tests MOETEN worden uitgevoerd in een testomgeving die zo nauwkeurig mogelijk overeenkomt met de doel-productieomgeving om te bewerkstelligen dat het systeem geen kwetsbaarheden introduceert in de omgeving van de organisatie en dat de tests betrouwbaar zijn (zie scheiding van ontwikkel-, test- en productieomgevingen).

    Wijzigingsbeheer

    Deze paragraaf beschrijft de maatregelen die dienen om de informatieveiligheid te behouden tijdens het uitvoeren van wijzigingen.

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    De organisatie kan geautomatiseerde instrumenten inzetten zoals instrumenten om codes te analyseren of om op kwetsbaarheden te scannen, en MOETEN het herstel van beveiligingsgerelateerde tekortkomingen te verifiëren deze diensten vallen onder software die geevalueerd moet worden voor gebruik. 

    De volgende tooling word ingezet om code kwaliteit en veiligheid automatisch te beoordelen:

  • Sigrid

  • Sonarcube

    Nieuwe systemen en belangrijke wijzigingen van bestaande systemen MOETEN volgens overeengekomen regels en een formeel proces van documentatie, specificatie, testen, kwaliteitscontrole en beheerde implementatie te worden geïntroduceerd.

    Verantwoordelijkheden en procedures voor beheer MOETEN worden vastgelegd om afdoende beheersing van alle veranderingen te waarborgen. 

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    Voor interne ontwikkelactiviteiten MOETEN dergelijke tests in eerste instantie te worden uitgevoerd door het ontwikkelteam. Vervolgens behoren onafhankelijke tests te worden uitgevoerd om te bewerkstelligen dat het systeem uitsluitend werkt zoals voorzien (zie Informatieveiligheid in projectmanagement). Het volgende behoort te worden overwogen: 

  • het uitvoeren van activiteiten om code te beoordelen als relevant element voor het testen op zwakke plekken in de beveiliging, met inbegrip van onvoorziene inputs en omstandigheden; 

  • het scannen op kwetsbaarheden om onveilige configuraties en kwetsbaarheden in systemen te identificeren; 

  • het uitvoeren van penetratietests om onveilige code en ontwerpen te identificeren 

    Procedures voor wijzigingsbeheer MOETEN worden gedocumenteerd en gehandhaafd om de beschikbaarheid, integriteit en vertrouwelijkheid van informatie in informatieverwerkende faciliteiten en informatiesystemen te garanderen gedurende de gehele ontwikkelcyclus van systemen, vanaf het begin van de ontwerpfase tot en met alle daaropvolgende onderhoudsinspanningen. 

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    Waar mogelijk MOETEN de procedures voor wijzigingsbeheer voor ICT-infrastructuur en -software worden geïntegreerd. 

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    Voor uitbestede ontwikkeling en het inkopen van componenten MOET een verwervingsprocedure worden gevolgd. In de contracten met de leverancier moeten de vastgestelde beveiligingseisen zijn opgenomen. Voordat producten en diensten worden gekocht, moeten ze worden geëvalueerd tegen deze criteria. Na ieder ontwikkeltraject dienen er testrapporten als attestatie te worden aangeleverd. 

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    Tests MOETEN worden uitgevoerd in een testomgeving die zo nauwkeurig mogelijk overeenkomt met de doelproductieomgeving om te bewerkstelligen dat het systeem geen kwetsbaarheden introduceert in de omgeving van de organisatie en dat de tests betrouwbaar zijn (zie Scheiding van ontwikkel-, test- en productieomgevingen).

    Wijzigingsbeheer

    Panel
    panelIconIdatlassian-info
    panelIcon:info:
    bgColor#FFFFFF
    De Informatieveiligheid behouden tijdens het uitvoeren van wijzigingen

    De procedures voor wijzigingsbeheer MOETEN het volgende te omvatten: 

    1. het plannen en beoordelen van de potentiële impact van wijzigingen, waarbij alle afhankelijkheden in aanmerking worden genomen; 

    2. autorisatie van veranderingen; 

    3. veranderingen aan relevante belanghebbenden communiceren; 

    4. tests en de aanvaarding van tests voor de veranderingen (zie paragraaf Testen van de beveiliging tijdens ontwikkeling en acceptatie); 

    5. implementatie van veranderingen met inbegrip van inzetplannen; 

    6. nood- en voorzorgsoverwegingen, met inbegrip van vangnetprocedures; 

    7. registraties onderhouden van veranderingen waarin alle bovenstaande punten worden opgenomen; 

    8. waarborgen dat bedieningsdocumentatie en gebruikersprocedures indien nodig worden gewijzigd om ze toepasbaar te houden; 

    9. bewerkstelligen dat de plannen voor ICT-continuiteit en de respons- en herstelprocedures (zie ICT-continuïteit) worden gewijzigd naarmate nodig is om passend te blijven

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    Nieuwe systemen en belangrijke wijzigingen van bestaande systemen MOETEN volgens overeengekomen regels en een formeel proces van documentatie, specificatie, testen, kwaliteitscontrole en beheerde implementatie te worden geïntroduceerd. Verantwoordelijkheden en procedures voor beheer behoren te worden vastgelegd om afdoende beheersing van alle veranderingen te waarborgen. 

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    Procedures voor wijzigingsbeheer MOETEN te worden gedocumenteerd en gehandhaafd om de vertrouwelijkheid, integriteit en beschikbaarheid van informatie in informatieverwerkende faciliteiten en informatiesystemen te garanderen gedurende de gehele ontwikkelcyclus van systemen, vanaf het begin van de ontwerpfase tot en met alle daaropvolgende onderhoudsinspanningen. 

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    Waar mogelijk MOETEN de procedures voor wijzigingsbeheer voor ICT-infrastructuur en -software te worden geïntegreerd. Bij wijzigingen MOET versiebeheer worden gebruikt.

    Elk gebruikt versiebeheer MOET volgens volgende regels opgesteld worden:  

    • Een versie nummer voor een ontwikkeling MOET bestaan uit 3 componenten  

      • MAJOR: wordt verhoogd bij nieuwe features of uitbreidingen die niet compatibel zijn bij de vorige MAJOR-versie;

      • MINOR: wordt verhoogd bij het toevoegen van functionaliteit die compatibel is met de huidige MAJOR-versie;  

      • PATCH: wordt verhoogd bij het toevoegen van bugfixes binnen de huidige MINOR.  

    Bovenstaande versie-bouwstenen MOETEN samengevoegd worden tot het formaat: <MAJOR.MINOR.PATCH> 

    Aanvullende labels voor prerelease (TNI, BETA, DEV) en build-metadata MOETEN toegevoegd worden aan het bovenstaande formaat. Voorbeelden van deze aanvullende labels in combinatie met bovenstaand formaat zijn:  

    • 1.0.0-alpha  

    • 1.2.1-beta.11  

    • 3.2.1-rc.1  

    • 2.2.1-beta.20042021.1  

    Als versie raamwerk volgen we het Semantisch Versioning principe, zoals beschreven op http://semver.org.

    Personeel

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    De procedures voor wijzigingsbeheer MOETEN het volgende te omvatten: 

  • het plannen en beoordelen van de potentiële impact van wijzigingen, waarbij alle afhankelijkheden in aanmerking worden genomen; 

  • autorisatie van veranderingen; 

  • veranderingen aan relevante belanghebbenden communiceren; 

  • tests en de aanvaarding van tests voor de veranderingen (zie Testen van de beveiliging tijdens ontwikkeling en acceptatie); 

  • implementatie van veranderingen met inbegrip van inzetplannen; 

  • nood- en voorzorgsoverwegingen, met inbegrip van vangnetprocedures; 

  • registraties onderhouden van veranderingen waarin alle bovenstaande punten worden opgenomen; 

  • waarborgen dat bedienings documentatie en gebruikersprocedures indien nodig worden gewijzigd om ze toepasbaar te houden; 

  • bewerkstelligen dat de plannen voor ICT-continuiteit en de respons- en herstelprocedures (zie [Beleid voor ICT-continuïteitsbeleid]) worden gewijzigd naarmate nodig is om passend te blijven

    Medewerkers MOETEN conform Personeelsbeveiliging geselecteerd te worden voor ontwikkelrollen. Medewerkers die een rol opnemen in de ontwikkeling van software moeten opgeleid worden in de toepassing van informatieveiligheidsprincipes en het toepassen van veilige coderingstechnieken, waaronder:  

    ·       hoe coderingskwetsbaarheden kunnen worden vermeden, en  

    ·       begrijpen hoe gevoelige gegevens in het geheugen worden verwerkt 

    Panel
    panelIconId9e6f15e6-c999-4552-9c6b-2582a2016b24
    panelIcon:icon_beleidslijnen:
    panelIconText:icon_beleidslijnen:
    bgColor#F4F5F7

    Implementatiemaatregel

    De betrokken Product Owner moet het niveau van beveiligingsvaardigheden en kennis die vereist is voor het ontwikkelingsproces definiëren en stelt de training voor aan HR. HR omvat passende training in het opleidingstraject van de ontwikkelaars

    Appendix

    Relatie van het beleid met andere richtlijnen en standaarden

    Regelgeving en standaarden (L1)

    ISO 27001:2022 (Annex A)

    Page Properties Report
    firstcolumnTitel
    headingsBeheersmaatregel
    sortByTitle
    cqllabel = "iso" and label = "veilig_ontwerpen_en_ontwikkelen" and space = currentSpace ( ) and ancestor = "6329502795"

    Informatieveiligheidsstrategie van de Vlaamse overheid (L2)

    Zie voor meer informatie.

    Uitvoering van het beleid

    Processen

    Oplossingen

    Document status

    Titel

    Auteur

    Datum

    Versie

    Opmerkingen

    Beleid voor veilig ontwerpen en ontwikkelen

    Guido Calomme

    31/05/2024

    1.0

    Page Properties
    hiddentrue
    idDS

    Document status (Metadata)

    Onderstaande gegevens worden gebruikt voor rapporteringsdoeleinden in documentregister

    Auteur

    Guido Calomme

    Status

    Status
    colourYellowPurple
    titleFINAAL CONCEPT

    Versie

    1.0

    status opties:

    Status
    colourYellow
    titleCONCEPT
    Status
    colourBlue
    titleIN REVIEW
    Status
    colourPurple
    titleFINAAL CONCEPT
    Status
    colourGreen
    titleGEVALIDEERD
    Status
    colourRed
    titleTE REVISEREN

    status eveneens aanpassen bovenaan deze pagina