CVE2CAPEC: CVEs omzetten naar MITRE ATT&CK, CAPEC, CWE & MITRE D3FEND
CVE2CAPEC is een open‐source tool die helpt bij het koppelen van kwetsbaarheden (CVE’s) aan andere structuren zoals CWE, CAPEC en MITRE ATT&CK & D3FEND. Deze mapping helpt om kwetsbaarheidsinformatie op een meer actiegerichte, contextuele manier te gebruiken en inzichtelijk te maken. In dit artikel leg ik uit wat CVE2CAPEC is, hoe het werkt, waar het goed voor is en waar je op moet letten.
Wat is CVE2CAPEC
We hebben het dus over de CVE2CAPEC tool van Galeax (https://github.com/Galeax/CVE2CAPEC). Het doel van deze tool is om 1 (of een lijst met CVE’s) automatisch te mappen aan bijbehorende CWE’s, CAPEC’s en MITRE ATT&CK & D3FEND technieken. De database van CVE2CAPEC wordt elke dag vernieuwd via GitHub Actions. Je kunt deze tool lokaal draaien of gebruik maken van de online variant (https://galeax.github.io/CVE2CAPEC/) waarbij je CVE’s kunt invoeren en dan visueel (in “matrixstijl”) inzicht krijgt in welke technieken uit MITRE ATT&CK / D3FEND geraakt worden.

Hoe werkt het
CVE2CAPEC werkt in verschillende stappen:
1. Databases up‐to‐date houden
De eerste stap is het updaten van je database. Er zijn scripts aanwezig zoals update_cwe_db.py, update_capec_db.py, update_technique_db.py en update_defend_db.py die deze gegevens automatisch verversen.
2. Nieuwe CVE’s ophalen
Via een script (retrieve_cve.py) worden de recente CVE’s uit openbare bronnen opgehaald.
3. CVE → CWE
Voor elke CVE wordt gekeken welke CWE(s) relevant zijn. CWE = Common Weakness Enumeration.
4. CWE → CAPEC
Van de CWE’s wordt afgeleid welke CAPEC’s (Common Attack Patterns) aan de orde zijn.
5. CAPEC → MITRE ATT&CK technieken
Vanuit CAPEC wordt doorgelopen naar MITRE ATT&CK, om te bepalen welke aanvalstechnieken (techniques) mogelijk relevant zijn.
6. MITRE ATT&CK → MITRE D3FEND technieken
D3FEND is het “tegenhangertje” of defensiecomponent; met D3FEND technieken kun je zien welke tegenmaatregelen mogelijk zijn. CVE2CAPEC linkt ATT&CK technieken aan D3FEND technieken.
6. Resultaten opslaan en visualiseren
Het project slaat de data op in JSON‐/line‐based bestanden (bijv. results/new_cves.jsonl) die weer door de online interface gebruikt wordt om deze data te visualiseren.
Voor wie is het handig
De CVE2CAPEC tool is met name bruikbaar voor onderstaande scenario’s:
Threat analysts:
Die willen zien welke kwetsbaarheden corrigerende maatregelen vereisen en welke aanvalstechnieken mogelijk al “in scope” zijn.
Security‐auditors:
Voor rapportage aan management: welke risico’s lopen we op basis van recente CVE’s, welke technieken en defensieve maatregelen zijn relevant etc.
Beveiligingsteams die defensieve maatregelen willen plannen:
Omdat D3FEND koppelt aan tegenmaatregelen, helpt dit bij het bedenken van mitigaties.
Onderzoekers/ontwikkelaars:
Omdat de datasets (CVE, CWE, CAPEC, ATT&CK, D3FEND) open beschikbaar zijn, kan je deze tool opnemen in eigen workflows of pipeline.

Pluspunten
Het is een interessante tool. De volgende pluspunten hebben wat mij betreft de grootste waarde:
- Automatiseert een aantal tijdsintensieve stappen: je hoeft CVE’s niet handmatig te koppelen aan CAPEC / ATT&CK etc.
- Dagelijkse updates zorgen dat je met actuele data werkt.
- Open source, dus controle over wat je gebruikt en mogelijkheid tot aanpassing.
- De online UI maakt het laagdrempelig; je kunt zonder installatie starten.
- Visualisatie in matrixvorm helpt bij het zien van patronen.
Aandachtspunten & beperkingen
Uiteraard kent CVE2CAPEC ook een aantal nadelen. Zo hangt de kwaliteit van de koppeling af van de volledigheid en correctheid van de databases (CWE, CAPEC, ATT&CK, D3FEND). Soms ontbreken koppelingen of zijn er meerdere mogelijke CWE’s/CAPEC’s per CVE. Dit betekent altijd dat eigen interpretatie nodig blijft. Want alleen omdat een CVE gekoppeld is aan een techniek wil dat niet zeggen dat die techniek relevant is in jouw omgeving (afhankelijk van configuratie, segmentering, gebruikte software etc.). Ook blijft de performance achter wanneer er grote lijsten CVE’s verwerkt moeten worden. De output is dan zeer omvangrijk en de visualisatie is traag. Gesproken over visualisatie zitten er ook nog wel wat andere beperkingen aan de web‐interface. Je mist uiteraard in de visuele weergave wat zaken omdat deze minder gedetailleerd is dan de ruwe data. Ook zitten er grote afhankelijkheden met externe tools en databases zoals MITRE. Als hier iets verandert (nieuwe techniek, gewijzigde naam, mappingmethode) dan moet CVE2CAPEC geupdate worden om werkbaar te blijven.
Praktisch voorbeeld (hypothetisch)
Stel, je krijgt vanuit je CERT of intelligence-platform diverse potentiële kwetsbaarheden door welke van toepassing op jou omgeving kunnen zijn. Een logische vervolgstap zou zijn om deze CVE’s door de CVE2CAPEC tool te laten verwerken. Deze geeft heel duidelijk voor elke CVE diverse CWE’s en CAPEC aanvalspatronen terug. Je kunt meteen zien via het MITRA ATT&CK framework waar een aanvaller deze zwakheden voor kan misbruiken en via MITRE D3FEND hoe je jezelf hiertegen kan beschermen. De matrixweergave helpt je te kiezen welke kwetsbaarheden je eerst moet patchen of welke defensieve maatregelen aangescherpt moeten worden. De grafische weergave kan vervolgens weer gemakkelijk gebruikt worden binnen rapportages om op die manier de juiste prioriteit en bijbehorende funding te verkrijgen.
Vergelijking met andere tools / alternatieven
Er zijn diverse alternatieven voor de CVE2CAPEC tool. Echter biedt CVE2CAPEC een vrij complete combinatie. CVE2CAPEC biedt zowel CAPEC als ATT&CK + D3FEND informatie in één workflow terwijl veel alternatieve tools alleen een MITRA ATT&CK mapping kunnen maken of alleen een mapping maken naar de diverse CWE’s. Uiteraard kan ook deze tool nog op diverse punten verbetering kunnen gebruiken. Hoe gaaf zou het zijn wanneer de GUI uitgebreid zou worden met filters (bijv. per product, per leverancier, severity, exploitability). Ook zou ik meer willen zien zoals b.v. “known exploits” en “patch beschikbaarheid” per CVE. Ook zou een integratie met bugtrackers en ticketing systemen waardevol zijn zodat de output automatisch taken kan genereren.
Conclusie
CVE2CAPEC biedt een waardevolle brug tussen kwetsbaarheidsinformatie (CVE’s), aanvalspatronen (CAPEC), technieken (MITRE ATT&CK) en defensieve mogelijkheden (D3FEND). Je krijgt sneller inzicht in waar je risico’s liggen en welke verdedigingslagen je moet versterken. Voor organisaties met beperkte middelen of wie snel wil prioriteren is dit een zeer bruikbaar hulpmiddel… echter… eigen interpretatie blijft belangrijk! CVE2CAPEC blijft gewoon “een hulpmiddel” welke slim ingezet kan worden en ik jullie niet wilde weerhouden 😉 Veel plezier ermee!

