EPSS, CVSS en de NCSC-score: welke van je kwetsbaarheden zet je eerst dicht?

EPSS, CVSS en de NCSC-score: welke van je kwetsbaarheden zet je eerst dicht?

Er staat een nieuwe kwetsbaarheid op je scherm en je moet besluiten of hij vandaag dicht moet. Je vindt er drie getallen bij die alle drie iets anders zeggen: een CVSS-score van de leverancier, een EPSS-score van FIRST en een NCSC-score uit het Nederlandse kwetsbaarhedenportaal. Hier lees je wat elk getal meet en in welke volgorde je ze gebruikt.

Nergens staat welke van de drie voorgaat. Dat besluit is het echte werk, want de meeste teams werken maar een deel van hun openstaande lijst per maand weg. De volgorde bepaalt wat er dit jaar dichtgaat en wat blijft staan.

In deze blog lees je wat EPSS is, waarin het verschilt van CVSS, wat de NCSC-score daaraan toevoegt en in welke volgorde je de drie naast elkaar legt.

Wat is EPSS?

EPSS staat voor Exploit Prediction Scoring System. Het is een model dat voor elke gepubliceerde CVE inschat hoe groot de kans is dat die de komende dertig dagen in het wild wordt misbruikt.

De uitkomst is een getal tussen 0 en 1. Een score van 0,08 staat voor een geschatte kans van 8 procent. Daarnaast krijg je een percentiel, dat laat zien hoe deze kwetsbaarheid zich verhoudt tot alle andere.

Het model wordt beheerd door de EPSS Special Interest Group van FIRST en de scores zijn gratis op te halen via een API, een CSV-bestand of GitHub. Ze worden dagelijks opnieuw berekend.

Dat laatste is geen detail. Een kwetsbaarheid die vorige week laag scoorde kan vandaag bovenaan staan, omdat er intussen een exploit is verschenen.

Wat is het verschil tussen EPSS en CVSS?

CVSS meet hoe ernstig een kwetsbaarheid is op het moment dat iemand hem misbruikt. Het kijkt naar wat een aanvaller ermee kan: komt hij bij data, kan hij het systeem overnemen en heeft hij daar rechten voor nodig. De uitkomst is een cijfer van 0 tot 10.

EPSS meet iets anders. Het schat in hoe waarschijnlijk het is dat iemand die kwetsbaarheid daadwerkelijk gaat misbruiken, op basis van wat er in de echte wereld gebeurt: is er een exploit gepubliceerd, wordt er over de kwetsbaarheid geschreven en hoeveel systemen zijn er kwetsbaar.

Die twee kunnen ver uit elkaar liggen. Een kwetsbaarheid met een CVSS van 9,8 waar nog niemand een exploit voor heeft geschreven, is minder urgent dan een van 5,9 die al actief wordt misbruikt.

Wat ze gemeen hebben weegt net zo zwaar. Allebei zeggen ze niets over jouw omgeving. Ze weten niet of dat systeem bij jou draait, of het aan internet hangt en of er een pad naartoe loopt vanaf een werkplek.

Hoe komt een EPSS-score tot stand?

EPSS is een machine learning-model dat leert van wat er in de praktijk gebeurt. Het kijkt naar de kwetsbaarheid zelf en naar de omstandigheden die eromheen ontstaan.

Welke gegevens gebruikt het model?

Onder andere de CVSS-score, de CWE-classificatie waarvan er bijna zeshonderd bestaan, het bestaan van een Metasploit-module en het moment waarop die is toegevoegd, informatie van Google Project Zero, de KEV-lijst van CISA met kwetsbaarheden waarvan misbruik is vastgesteld en waargenomen aanvalsactiviteit van honeypots, van sensoren die netwerkverkeer bewaken en van detectie op de systemen zelf.

Hoe vaak wordt de score bijgewerkt?

Elke dag, voor elke gepubliceerde CVE. Een score is dus een momentopname en geen eigenschap van de kwetsbaarheid.

Wat meet EPSS niet?

Jouw omgeving. Het model weet niet of dat systeem bij jou draait, of het aan internet hangt en of je er een compenserende maatregel omheen hebt gezet. Het zegt ook niets over de gevolgen: een hoge kans op misbruik kan gaan over een systeem waar bij jou niets aan vastzit.

Welke EPSS-score is hoog genoeg om op te acteren?

Er bestaat geen officiële drempel. Wat er wel is, zijn cijfers over wat een drempel oplevert.

FIRST publiceert per modelversie drie maten. Bij een drempel van 10 procent, gemeten in oktober 2023, kwam dat hierop neer: je pakt 2,7 procent van alle kwetsbaarheden aan, daarmee dek je 63,2 procent van de kwetsbaarheden die werkelijk worden misbruikt en van wat je aanpakt blijkt 65,2 procent ook daadwerkelijk misbruikt te zijn.

Leg dat naast je capaciteit. Beveiligingsteams werken volgens Intruder maar 10 tot 15 procent van hun openstaande lijst per maand weg. Met een selectie van 2,7 procent dek je dan bijna twee derde van wat er in het wild gebeurt. Over dat knelpunt tussen vinden en dichten gaat onze blog over patch management.

Daarmee is de drempel een filter en geen besluit. Wat eronder valt gaat niet weg, het gaat naar achteren in de rij. Een kwetsbaarheid die vandaag onder je drempel zit, kan er morgen boven staan.

Wat is de NCSC-score voor kwetsbaarheden?

Het Nederlandse NCSC houdt een eigen kwetsbaarhedenportaal bij. Daar staan per CVE drie getallen naast elkaar: de CVSS-score, de EPSS-score en een eigen NCSC-score.

Die laatste loopt van 0 tot 10, waarbij 0 staat voor irrelevant en 10 voor zeer relevant. Hij komt uit een machine learning-model dat onder meer kijkt naar de CVSS-score, de betrokken producten, de CWE-classificatie, de EPSS-score, nieuwsberichtgeving en de beschikbaarheid van exploits. Per kwetsbaarheid staat erbij welke factoren de score omhoog of omlaag duwden.

De reden die het NCSC zelf geeft is het interessantst. De bestaande methoden “blijken niet direct bruikbaar om relevantie voor Nederlandse organisaties te bepalen”.

Daar zit het verschil met de andere twee. CVSS en EPSS kijken naar de kwetsbaarheid zoals die wereldwijd bestaat. De NCSC-score probeert te wegen hoe relevant die is voor organisaties hier, op basis van welke producten in Nederland draaien en waar het hier over gaat.

Let op dat dit iets anders is dan een beveiligingsadvies van het NCSC. Daarin staat een inschatting van kans en schade. Dat is een ander instrument met een ander doel.

Wat als CVSS en EPSS elkaar tegenspreken?

Dat gebeurt vaker dan je zou denken. Het gaat daarbij twee kanten op.

Hoge CVSS, lage EPSS. Technisch ernstig, alleen heeft nog niemand er iets mee gedaan. Dat komt veel voor bij kwetsbaarheden die lastig te misbruiken zijn of waarvoor een aanvaller al toegang nodig heeft.

Middelmatige CVSS, hoge EPSS. Op papier valt het mee, alleen ligt er een werkende exploit en wordt die gebruikt. Intruder noemt als voorbeeld CVE-2023-48795, met een CVSS van 5,9 en een hoge kans op misbruik.

Welke van de twee zwaarder weegt, hangt af van waar dat systeem bij jou staat. Een lage EPSS op een server die aan internet hangt met klantgegevens erop weegt zwaarder dan een hoge EPSS op een testmachine die nergens mee verbonden is.

De tegenspraak los je niet op met een derde getal. Wat alle drie de scores missen is of die kwetsbaarheid bij jou bereikbaar is. Draait dat systeem hier, staat het open vanaf internet of vanaf een werkplek en zit er achter dat systeem iets dat de moeite waard is. Dat staat in geen enkele database, want het hangt af van hoe jouw netwerk is ingericht.

In welke volgorde gebruik je CVSS, EPSS en de NCSC-score?

De drie scores doen hetzelfde werk: ze maken je lijst kleiner. Wat je daarna overhoudt, beoordeel je op je eigen omgeving.

Een volgorde die in de praktijk werkt:

  1. Filter op EPSS. Met een drempel van 10 procent houd je volgens FIRST ongeveer 2,7 procent van je lijst over en dek je daarmee bijna twee derde van de kwetsbaarheden die werkelijk worden misbruikt.
  2. Leg de NCSC-score ernaast. Die vertelt of een kwetsbaarheid relevant is bevonden voor Nederlandse organisaties en welke producten het raakt.
  3. Gebruik CVSS binnen wat overblijft. Die zegt wat er gebeurt als het misgaat, dus daarmee bepaal je de volgorde binnen je selectie.
  4. Controleer of het pad bij jou open staat. Dit is de enige stap die over jouw netwerk gaat.

Die laatste stap kan geen enkele score voor je doen. Een autonome pentest knoopt de kwetsbaarheden die je overhoudt aan elkaar en laat zien welke ervan bij jou uitkomt bij een systeem waar iets aan hangt. Hoe dat werkt, lees je in Waarom autonome pentests wél werken.

Een score vertelt hoe waarschijnlijk misbruik is in de wereld. Een test vertelt of het bij jou kan.

Waar begin je met het prioriteren van kwetsbaarheden?

Drie scores bij dezelfde kwetsbaarheid en elk beantwoordt een andere vraag. EPSS schat hoe waarschijnlijk misbruik is, CVSS zegt wat het betekent als het gebeurt en de NCSC-score weegt hoe relevant het is voor Nederlandse organisaties.

De volgorde die daaruit volgt blijft steeds dezelfde. Eerst filter je op waarschijnlijkheid. Daarna weeg je op ernst en relevantie. Tot slot controleer je of het pad bij jou open staat.

Die laatste stap is waar het werk ophoudt bij een lijst en begint bij je eigen netwerk. Wil je weten welke van je openstaande kwetsbaarheden bij jou werkelijk tot een pad leiden? Dat testen we.

Ga naar netboss.nl

“We Got Your Back”

Veelgestelde vragen over EPSS

Dat het model de kans op misbruik in de komende dertig dagen op 50 procent schat. Dat is hoog. Uit de cijfers van FIRST volgt dat maar een paar procent van alle kwetsbaarheden boven de 0,1 uitkomt.

 

Nee. Ze beantwoorden verschillende vragen. EPSS schat hoe waarschijnlijk misbruik is en CVSS zegt hoe ernstig het is als het gebeurt. Je gebruikt ze naast elkaar.

 

Bij FIRST, via een API, een CSV-bestand of GitHub. De scores zijn gratis en worden dagelijks bijgewerkt. Op het kwetsbaarhedenportaal van het Nederlandse NCSC staat de EPSS-score per CVE naast de CVSS-score en hun eigen NCSC-score.

 

Ja. De EPSS-score is een van de eigenschappen waar het model van het NCSC naar kijkt, samen met de CVSS-score, de CWE-classificatie, de betrokken producten, nieuwsberichtgeving en de beschikbaarheid van exploits.

 

Een lage score betekent dat misbruik op dit moment onwaarschijnlijk is. Scores worden dagelijks opnieuw berekend, dus dat kan morgen anders liggen. De score zegt bovendien niets over de vraag of dat systeem bij jou bereikbaar is.