Threat Modeling: welke methode moet u kiezen voor uw bedrijf? (Stride, Dread, QTMM, LINDDUN, PASTA)

Threat Modeling: welke methode moet u kiezen voor uw bedrijf? (Stride, Dread, QTMM, LINDDUN, PASTA)

Er zijn verschillende methoden om bedreigingen te modelleren. Het beste model voor de behoeften van jouw organisatie hangt af van de soorten bedreigingen die je probeert te modelleren en wat je doelen zijn. Niet al deze methoden zijn compleet. Sommige zijn abstract, andere richten zich op mensen, risico’s of privacykwesties.

Deze methoden kunnen echter worden gecombineerd om een robuuster en uitgebreider beeld te krijgen van de potentiële bedreigingen voor uw IT-middelen. In dit artikel geven we een overzicht van vijf van deze methoden.

Wat is threat modeling?

was aanvankelijk een technische activiteit, beperkt tot grootschalige ontwikkelingen, in een agile context.

In de afgelopen tien jaar heeft deze activiteit zich zo ver ontwikkeld dat het nu deel uitmaakt van de controles die vereist zijn om te voldoen aan de 2022 versie van de ISO 27002 cyberbeveiligingsnorm.

Deze relatief eenvoudige activiteit plaatst beveiliging aan het begin van projecten, waar veranderingen de minste middelen vergen. Dit is de eerste steen in het fundament van security by design.

Waarom is threat modeling belangrijk?

Het doel is om door middel van een eenvoudige analyse de structurele punten te ontdekken waar de informatiebeveiliging in gevaar is, in architecturen of in systemen, zoals in applicaties die worden ontwikkeld.

Voor nieuwe implementaties zorgt deze voorlopige analyse ervoor dat er geen obstakels zijn bij de implementatie van beveiligingsmaatregelen, zoals vertrouwen op onveilige systemen, zwakke authenticatie of protocollen.

Van oudsher is dreigingsmodellering vooral gericht op de ontwikkeling van toepassingen. Het is echter ook mogelijk om de analyse uit te breiden naar beschikbaarheidskwesties, zoals geschaalde implementaties (bijv. redundantie), authenticatie, upgrades en grensoverschrijdende gegevensoverdracht. Een aanpak voor complete systemen kan eenvoudig worden gemodelleerd op applicatiearchitecturen.

Wanneer zou je moeten starten met threat modeling?

Volgens best practices moeten de benodigde beveiligingscriteria vooraf worden gedefinieerd om het ontwerp of de architectuur te valideren.

Deze analyse wordt gebruikt om de naleving van de generieke criteria te controleren en om de technische keuzes die tijdens deze ontwerp-/architectuurfase zijn gemaakt te herzien.

Deze beveiligingsoperatie kan dus tijdens alle fasen van het project worden uitgevoerd. Het is echter beter om dit te doen voordat het ontwerp of de architectuur wordt gevalideerd. Op deze manier is het minder duur om noodzakelijke wijzigingen door te voeren. Het is ook mogelijk om tussentijdse of gedeeltelijke modellering te doen om beveiligingsproblemen zo vroeg mogelijk te identificeren en opnieuw om de ontwerpkosten te verlagen.

Welke resources zijn er nodig?

Er is weinig personeel nodig, maar dat kan moeilijk te vinden zijn, afhankelijk van de bedrijfsomgeving.

Allereerst is het nodig om ten minste één persoon te hebben die de te analyseren structuur (de software, infrastructuur, enz.) en de onderliggende implementatie begrijpt.

Afhankelijk van de methode en de gebruikte tool, is het noodzakelijk/onmisbaar om iemand te hebben die bekend is met cyberbeveiligingsaanvallen en in staat is om deze, in een defensieve context, te vertalen naar beschermingsmaatregelen.

De persoon die verantwoordelijk is voor de geanalyseerde component (applicatie, infrastructuur, etc.) en meestal ook de persoon die verantwoordelijk is voor de evolutie van deze component (bijv. de SCRUM-master) moeten de bevindingen integreren in de lopende evoluties.

De risicomanager moet de vergaderingen bijwonen om de technische risico’s te identificeren zodat ze beter kunnen worden beoordeeld.

Voor bredere analyses is het belangrijk om een juridisch vertegenwoordiger te hebben die de wettelijke vereisten in de betrokken landen begrijpt.

In de context van ISO 27001-certificeringen moet de ISMS-manager op de hoogte zijn van en toezicht houden op de activiteit (bijv. planning, rapportage, verzamelen van deliverables, bewaken van wijzigingen) om ervoor te zorgen dat het proces voldoet aan de norm.

Enkele bestaande threat modeling methoden

Er zijn verschillende methoden mogelijk om risico’s te definiëren, die allemaal hun voor- en nadelen hebben. Welke methode wordt gebruikt, hangt af van de doelen, de volwassenheid van het bedrijf en de praktijken die al zijn geïmplementeerd.

Hieronder volgt een korte beschrijving en samenvatting van de meest relevante methoden.

Threat modeling method no. 1: STRIDE

In het verleden was de STRIDE-methode de referentiemethode:

De mogelijkheden in elk van de categorieën die het acroniem vormen moeten worden geïdentificeerd voor elk van deze componenten. Om een volledige lijst van aanvalsscenario’s te maken, kun je het beste een kennisbank gebruiken (zie de paragraaf hieronder).

Deze punten vertegenwoordigen de aanvalstechnieken die gebruikt worden om informatiebeveiliging te doorbreken.

Deze methode is algemeen bekend en wordt nog steeds toegepast omdat ze gemakkelijk te assimileren is. Microsoft ondersteunt deze methode echter niet meer en geeft nu de voorkeur aan de DREAD methode.

Threat modeling method no. 2: DREAD

Zoals eerder, de concepten die deel uitmaken van dit nieuwe acroniem:

Hoewel het voor iedereen makkelijker te begrijpen is, is de score van elk van deze categorieën meer onderhevig aan interpretatie. Het is ook noodzakelijk om rekening te houden met de laatste D (Discoverability), die veiligheid door ondoorzichtigheid promoot. Deze praktijk wordt echter sterk afgeraden, omdat het een vals gevoel van veiligheid creëert.

Deze methode is niet eenvoudig te implementeren vanwege de volgende vooroordelen:

Deze analyse richt zich daarom voornamelijk op effecten en operabiliteit, wat waarden zijn die gewoonlijk worden gebruikt voor risico’s, maar de methode biedt weinig hulp bij het identificeren van bedreigingen en kwetsbaarheden.

Threat modeling method no. 3: Quantitative threat modeling

De aanpak bestaat uit het identificeren van de ernst van kwetsbaarheden op basis van de CVSS-scores. Bedreigingen worden geïdentificeerd door aanvalsbomen te gebruiken waarvan de wortel elk van de categorieën in de STRIDE-methode is (zoals hierboven vermeld).

Het opzetten van aanvalsbomen kan echter veel tijd kosten en CVSS-scores houden geen rekening met de bedrijfsomgeving (en eventuele maatregelen die al zijn genomen om de impact te beperken).

Deze zeer technische methode moet worden overwogen voor kleine, zeer kritieke ontwikkelingen/architectuur waar kwetsbaarheden een grote impact kunnen hebben, ongeacht de omgeving.

Threat modeling method no. 4: LINDDUN

Opnieuw wordt een acroniem gebruikt voor:

Deze aanpak kan nuttig zijn voor het identificeren van discrepanties met de GDPR-verordening van de EU 2016/679 en naleving van de sleutelconcepten van “privacy by design” en “privacy by default” die in deze verordening zijn gedefinieerd.

Het is echter moeilijk om de impact van een kwetsbaarheid te beoordelen aan de hand van deze criteria. Deze methode is meer bedoeld voor compatibiliteitsanalyse met betrekking tot privacyregelgeving dan voor het zoeken naar technische kwetsbaarheden.

Threat modeling method no. 5: PASTA

Deze methode gebruikt een relatief logisch proces om bedrijfsdoelstellingen en technische risico’s te combineren.

Deze methode wordt echter niet veel gebruikt en de implementatie ervan neemt veel tijd in beslag. Het resultaat is niettemin veelomvattend en integreert met andere bedrijfsactiviteiten (bijv. IT-operaties en risicobeoordeling).

PASTA Threat Modeling Method - Steps
PASTA Threat Modeling Method – Steps

Source: Shevchenko, N., 2018: Threat Modeling: 12 Available Methods. Carnegie Mellon University’s Software Engineering Institute Blog

Welke threat modeling methode past bij jouw organisatie?

De gebruikte methode hangt af van zowel de ontdekkingsdoelen als de integratie van de activiteit binnen het project (zoals integratie met risicoanalyse met de PASTA-methode of nalevingsbehoeften met LINDDUN).

Hoewel verouderd, is de STRIDE-methode eenvoudig te begrijpen en levert relevante resultaten op. In gevallen waarin de activiteit dreigingsmodellering nieuw is, levert de STRIDE-methode concrete resultaten op die de duurzaamheid van deze aanpak in projectprocessen waarborgen, hoewel in de toekomst mogelijk andere methoden worden gebruikt.

In contexten waar de activiteit al gevestigd is, kan een meer geïntegreerde aanpak zoals PASTA worden aanbevolen, bijvoorbeeld in synergie met de afdeling risicobeheer.

Threat modeling tools

Hoewel er voor deze analyses geen hulpmiddelen nodig zijn en een eenvoudig vel papier volstaat, zijn er hulpmiddelen die gebruikt kunnen worden om te helpen met sommige van de hierboven voorgestelde methoden. Deze tools bieden meestal een duidelijke visuele weergave en een lijst van kwetsbaarheden en bijbehorende bedreigingen die de meeste mensen gemakkelijk kunnen lezen.

Automated tools

Er zijn veel tools beschikbaar. We kunnen twee tools identificeren die zouden moeten werken met open-source of gratis tools:

Automated threat modeling tools - Advantages and disadvantages

Manuele tools

Handmatige benaderingen daarentegen vereisen naleving van een kennisbank en/of mensen met ervaring in bedreigingsmodellering, wat soms het gebruik van een externe dienst rechtvaardigt om over de mensen met de nodige ervaring te beschikken.

De open-source tools zijn:

Manual threat modeling tools - Advantages and disadvantages
Manual threat modeling tools – Advantages and disadvantages

Database van bedreigingen en aanvalsscenarios

Mogelijke aanvallen op elk systeem kunnen worden geïdentificeerd met behulp van de MITRE ATT&CK kennisdatabank (https://attack.mitre.org/matrices/enterprise/).

Er zijn ook CAPEC taxonomieën (https://capec.mitre.org/data/index.html) en CWE (https://cwe.mitre.org/data/index.html) die meer technisch en productgericht zijn. Dit kan nuttig zijn voor gedetailleerde dreigingsmodellering op een of meer belangrijke systemen die niet vaak veranderen. Voor de meeste systemen kan dit iets te arbeidsintensief en niet erg duurzaam zijn.

Toch is het nodig om het gewenste detailniveau te kiezen om de tijd die nodig is om de analyse te voltooien te beperken. Deze afweging hangt natuurlijk af van de beschikbare middelen en het kritieke karakter van het onderdeel dat geanalyseerd wordt (afhankelijk van of het de algemene infrastructuur van het bedrijf is of een hulpmiddel voor een dienst, een hulpmiddel dat niet toegankelijk is via het internet).

Mogelijke inputs

De volgende documenten kunnen nuttig zijn voor de analyse:

Mogelijke deliverables

Deze activiteit levert (afhankelijk van de gebruikte methode en de doelen van de activiteit):

Algemeen gebruikte threat modeling aanpak

General Threat Modeling Approach
General Threat Modeling Approach

Bedreigingen worden geïdentificeerd volgens de methodologie die wordt gebruikt in de verschillende paradigma’s (kwetsbaarheid/aanvalconcepten/privacy). Alleen de PASTA-methode is uitgebreider, en die is in veel contexten misschien te uitgebreid.

Afhankelijk van de gebruikte methode heeft dit vooral gevolgen voor het detecteren van bedreigingen.

Voorbeelden van dataflow diagrammen

Deze diagrammen identificeren de grenzen en de stromen (die mogelijk technisch zijn, d.w.z. met protocollen, encryptie etc., zoals in het derde diagram).

Deze diagrammen stellen ontwikkelaars en technische bedrijfsanalisten vaak in staat om een meer synthetisch beeld van hun product te krijgen. Deze zichtbaarheid is een van de grote voordelen van deze methode.

OWASP Threat Modeling Data flow diagram
OWASP Threat Modeling Data flow diagram

Source: OWASP Application Threat Modeling

OWASP Threat Modeling Data flow diagram 2
OWASP Threat Modeling Data flow diagram 2

Source: OWASP Application Threat Modeling

Voorbeeld van een technisch uitroldiagram

Een gemengd diagram starten:

Threat Model Hybrid-Hybrid generic threat modeling
Threat Model Hybrid-Hybrid generic threat modeling

Source: Threat Modeling – Secodis GmbH

Engineering-based Data flow diagram
Engineering-based Data flow diagram

Source: OWASP Application Threat Modeling

Net als in het vorige diagram kunnen stromen technisch worden gedefinieerd, d.w.z. met protocollen, encryptie, enz.

Landgrenzen kunnen ook worden opgenomen (om wettelijke beperkingen te identificeren) en wettelijke beperkingen (bijvoorbeeld PCI-DSS of FINMA in het laatste diagram, als het land Zwitserland is).

Hoe kan threat modeling impact hebben op GRC aanpak?

Deze activiteit kan worden geïntegreerd in een GRC-aanpak om de implementatie van beveiligingsmaatregelen te ondersteunen, vooral voor DevSecOps-teams, en ook om de risicoanalyse te versterken voor de applicaties en infrastructuren waarop ze worden ingezet.

Dit kan ook relevant zijn in het geval van organisatorische beveiligingsverbeteringen, zoals het definiëren van stroomdiagrammen voor persoonlijke gegevens. Deze processen worden zelden bijgewerkt en kunnen met deze aanpak worden verbeterd.

PASTA kan met name worden gebruikt om technische risico’s te identificeren, maar deze aanpak vereist een zekere structurele volwassenheid en een aanzienlijke bereidheid om betrokken te raken.

Deze diagrammen, die door iedereen kunnen worden gelezen, kunnen worden gebruikt om een gemeenschappelijke aanpak tussen teams te creëren.

Tot slot is deze activiteit een manier om de systeemarchitectuur te beveiligen die wordt verwacht in de versie van 2022 van de ISO 27002 norm.