Wat is dreigingsmodellering?
Dreigingsmodellering is een gestructureerde methodologie voor het identificeren en beperken van beveiligingsdreigingen tijdens de ontwerp- en architectuurfase van systeemontwikkeling. In plaats van te wachten op het vinden van kwetsbaarheden via testen, analyseert dreigingsmodellering proactief hoe een systeem kan worden aangevallen en bouwt het verdedigingen in het ontwerp in.
Effectieve dreigingsmodellering beantwoordt vier kernvragen: Wat bouwen we? Wat kan er misgaan? Wat gaan we eraan doen? Hebben we het goed genoeg gedaan?
Methodologieën voor dreigingsmodellering
| Methodologie | Aanpak | Best geschikt voor | Complexiteit |
|---|
| STRIDE | Dreigingsclassificatie (6 categorieën) | Ontwikkelteams, componentanalyse | Laag-gemiddeld |
| PASTA | Risicogericht, 7-fasenproces | Enterprise-risicobeoordeling | Hoog |
| Aanvalsbomen | Boomstructuur voor het in kaart brengen van aanvalspaden | Specifieke dreigingsscenario's | Gemiddeld |
| LINDDUN | Privacygerichte dreigingscategorieën | Privacygevoelige applicaties | Gemiddeld |
| VAST | Visuele, agile, schaalbare dreigingsmodellering | Grote organisaties, DevOps | Gemiddeld |
| Kill chain-analyse | Modellering van aanvallersgedrag | Voorbereiding op incidentrespons | Gemiddeld |
STRIDE-dreigingscategorieën
| Categorie | Dreiging | Beveiligingseigenschap | Tegenmaatregel |
|---|
| Spoofing | Zich voordoen als een andere gebruiker of systeem | Authenticatie | Sterke authenticatie, MFA, certificaten |
| Tampering | Wijzigen van gegevens, code of configuraties | Integriteit | Invoervalidatie, checksums, digitale handtekeningen |
| Repudiation | Ontkennen dat acties zijn uitgevoerd | Onweerlegbaarheid | Auditlogging, digitale handtekeningen, tijdstempels |
| Information disclosure | Gegevens blootstellen aan onbevoegde partijen | Vertrouwelijkheid | Versleuteling, toegangscontroles, gegevensmaskering |
| Denial of service | Voorkomen van legitieme toegang tot bronnen | Beschikbaarheid | Snelheidsbeperking, redundantie, automatisch schalen |
| Elevation of privilege | Onbevoegd hogere toegangsniveaus verkrijgen | Autorisatie | Minimale rechten, RBAC, invoervalidatie |
Proces van dreigingsmodellering
| Stap | Activiteiten | Resultaat |
|---|
| 1. Scope | Systeemgrenzen, assets en vertrouwensniveaus definiëren | Systeemcontextdiagram |
| 2. Ontleden | Gegevensstroomdiagrammen maken met componenten, gegevensstromen, vertrouwensgrenzen | DFD met vertrouwensgrenzen |
| 3. Dreigingen identificeren | STRIDE of gekozen methodologie toepassen op elk element | Dreigingslijst met beschrijvingen |
| 4. Risico beoordelen | Elke dreiging beoordelen op waarschijnlijkheid en impact | Geprioriteerde dreigingsmatrix |
| 5. Tegenmaatregelen bepalen | Beveiligingsmaatregelen identificeren voor elke dreiging | Koppeling van tegenmaatregelen |
| 6. Valideren | Verifiëren dat tegenmaatregelen effectief zijn en geïmplementeerd | Validatierapport |
| 7. Documenteren | Model, beslissingen en restrisico's vastleggen | Dreigingsmodeldocument |
Elementen van gegevensstroomdiagrammen
| Element | Symbool | Voorbeelden | Dreigingsfocus |
|---|
| Externe entiteit | Rechthoek | Gebruikers, externe API's, systemen van derden | Spoofing, invoervalidatie |
| Proces | Cirkel | Applicatielogica, microservices | Alle STRIDE-categorieën |
| Gegevensopslag | Parallelle lijnen | Databases, bestandssystemen, caches | Tampering, information disclosure |
| Gegevensstroom | Pijl | API-aanroepen, netwerkverbindingen, bestandsoverdrachten | Tampering, information disclosure |
| Vertrouwensgrens | Stippellijn | Netwerkperimeter, service mesh, authenticatie | Alle categorieën (hoogste risicogebied) |
Risicobeoordelingsmatrix
| Lage impact | Gemiddelde impact | Hoge impact | Kritieke impact |
|---|
| Hoge waarschijnlijkheid | Gemiddeld | Hoog | Kritiek | Kritiek |
| Gemiddelde waarschijnlijkheid | Laag | Gemiddeld | Hoog | Kritiek |
| Lage waarschijnlijkheid | Informatief | Laag | Gemiddeld | Hoog |
Veelvoorkomende dreigingspatronen
| Patroon | Beschrijving | Waar te vinden | Tegenmaatregel |
|---|
| Gebroken authenticatie | Zwakke of omzeilde authenticatie | Inlogstromen, API-eindpunten | MFA, sessiebeheer, tokenvalidatie |
| Injectie | Onvertrouwde invoer die als code wordt uitgevoerd | Databasequery's, OS-commando's, LDAP | Invoervalidatie, geparametriseerde query's |
| Gegevensblootstelling | Gevoelige gegevens onveilig verzonden of opgeslagen | API's, databases, logs | Versleuteling, maskering, toegangscontroles |
| Privilege-escalatie | Gebruiker verkrijgt hogere toegang dan geautoriseerd | Beheerfuncties, roltoewijzingen | Minimale rechten, autorisatiecontroles |
| Compromis van toeleveringsketen | Kwaadaardige componenten van derden | Afhankelijkheden, integraties, API's | SCA, SBOM, leveranciersbeoordeling |
| Insiderdreiging | Geautoriseerde gebruiker handelt kwaadwillig | Alle interne systemen | Monitoring, functiescheiding, toegangsbeoordelingen |
Compliancevereisten
Frameworkkoppeling
| Vereiste | ISO 27001 | SOC 2 | NIS2 | DORA |
|---|
| Risicobeoordeling | A.5.7 | CC3.2 | Art. 21(2)(a) | Art. 8(1) |
| Dreigingsintelligentie | A.5.7 | CC3.2 | Art. 21(2)(a) | Art. 8(6) |
| Veilig ontwerp | A.8.25 | CC8.1 | Art. 21(2)(e) | Art. 8(1) |
| Beveiligingsvereisten | A.8.26 | CC8.1 | Art. 21(2)(e) | Art. 8(1) |
| Beveiligingstesten | A.8.29 | CC8.1 | Art. 21(2)(e) | Art. 8(3) |
| Wijzigingsrisicobeoordeling | A.8.32 | CC8.1 | Art. 21(2)(e) | Art. 8(2) |
Auditbewijs
| Bewijstype | Beschrijving | Framework |
|---|
| Dreigingsmodeldocumenten | Voltooide dreigingsmodellen voor kritieke systemen | Alle frameworks |
| Gegevensstroomdiagrammen | Actuele DFD's met vertrouwensgrenzen | ISO 27001, SOC 2 |
| Risicobeoordelingsresultaten | Geprioriteerde dreigingslijsten met beoordelingen | Alle frameworks |
| Koppeling van tegenmaatregelen | Dreigingen gekoppeld aan geïmplementeerde maatregelen | Alle frameworks |
| Beoordelingsregistraties dreigingsmodel | Bewijs van periodieke beoordeling en updates | ISO 27001, NIS2 |
| Hersteltracking | Tickets die de dreiging-naar-oplossing-workflow tonen | Alle frameworks |
| Trainingsregistraties | Training dreigingsmodellering voor ontwikkelaars | ISO 27001, SOC 2 |
Veelgemaakte fouten
| Fout | Risico | Oplossing |
|---|
| Alleen modelleren bij initieel ontwerp | Verschil tussen model en werkelijkheid | Dreigingsmodellen bijwerken bij significante wijzigingen |
| Te abstract, geen bruikbare output | Modellen bieden geen beveiligingswaarde | Specifieke, testbare tegenmaatregelen opnemen |
| Alleen beveiligingsteam neemt deel | Ontbrekende domeinkennis | Ontwikkelaars, architecten en product owners betrekken |
| Vertrouwensgrenzen negeren | Missen van de risicovolste aanvalsoppervlakken | Elke overschrijding van vertrouwensgrenzen in DFD's in kaart brengen |
| Geen prioritering van dreigingen | Alle dreigingen gelijk behandelen | Risicobeoordeling gebruiken om eerst op kritieke dreigingen te focussen |
| Herstel niet bijhouden | Geïdentificeerde dreigingen worden nooit aangepakt | Tegenmaatregelen bijhouden als beveiligingsvereisten |
Hoe Orbiq compliance met dreigingsmodellering ondersteunt
Orbiq helpt u dreigingsmodellering en risicobeoordeling aan te tonen:
- Bewijsverzameling — Centraliseer dreigingsmodellen, risicobeoordelingen en herstelregistraties
- Continue monitoring — Volg de dekking van dreigingsmodellen en voortgang van herstelmaatregelen
- Trust Center — Deel uw veilige ontwerppraktijken via uw Trust Center
- Compliancekoppeling — Koppel dreigingsmodelleringsactiviteiten aan ISO 27001, SOC 2, NIS2 en DORA
- Auditgereedheid — Vooraf samengestelde bewijspakketten voor beoordeling door auditors
Verder lezen