Threat model er selve modellen. Threat modeling er arbejdet med at udarbejde, undersøge og vedligeholde den.
Begreb
Threat model
En threat model (trusselsmodel) er en struktureret beskrivelse af, hvad der skal beskyttes i et system, hvilke trusler der er relevante, og hvordan de håndteres. Den samler viden om systemets opbygning, data, afhængigheder og sikkerhedsforanstaltninger.
Hvorfor er begrebet vigtigt?
En threat model hjælper med at opdage sikkerhedsproblemer i designet, før de bliver dyre at rette. Den gør det lettere at prioritere beskyttelsen af eksempelvis kundedata og kritiske funktioner.
Særligt relevante er tillidsgrænser: steder, hvor krav til adgang og tillid ændrer sig, eksempelvis mellem en brugers browser og en server. Her undersøger teamet, hvad der kan gå galt, og hvilke kontroller der er nødvendige.
Typisk misforståelse
En threat model er mere end et arkitekturdiagram og erstatter ikke en sårbarhedsscanning eller penetrationstest. Modellen beskriver mulige trusler og sikkerhedsvalg. En scanning eller test kan efterfølgende afdække konkrete svagheder og efterprøve beskyttelsen.
Eksempel
Et fiktivt team udvikler en filportal til kunder. En trussel er, at en kunde ændrer et filnummer i en forespørgsel og får adgang til en anden kundes dokument.
Teamet beslutter, at serveren skal kontrollere adgangen til det enkelte dokument ved hver hentning. Modellen beskriver truslen, kontrollen og en test, som skal vise, at en bruger uden adgang bliver afvist.
Best practice
Afgræns systemet, og beskriv de vigtigste data og funktioner.
Kortlæg dataflows, afhængigheder og tillidsgrænser.
Inddrag udvikling, drift og sikkerhed i vurderingen.
Prioritér trusler efter sandsynlighed og konsekvens.
Giv sikkerhedstiltag en ejer, og kontrollér deres virkning.
Opdatér modellen, når systemet eller trusselsbilledet ændrer sig.
Frequently asked questions
Nej. En fælles tegning og et kort dokument kan være nok til et afgrænset system. Det afgørende er at beskrive trusler, beslutninger og opfølgning.
Ved relevante ændringer, eksempelvis nye funktioner, eksterne integrationer eller erfaringer fra en sikkerhedshændelse. En model af et gammelt design kan overse nye angrebsveje.