Din scanner melder enogtredive sårbarheder. Ni er vurderet kritiske. Du har en eftermiddag. Alvorlighed alene fortæller dig ikke, hvor du skal begynde — og at vælge forkert er præcis dét, der ender med, at sikkerhedsværktøjet bliver ignoreret.
Fejlmønsteret her er veldokumenteret og fuldstændig forudsigeligt. Et team får en lang liste, kan ikke nå det hele, arbejder sig nedad efter alvorlighed, løber tør for tid og holder efterhånden op med at åbne rapporten. Listen var korrekt og ubrugelig på samme tid.
Hvad CVSS faktisk måler
CVSS er en alvorlighedsscore fra 0 til 10, knyttet til en CVE-identifikator. Den beskriver, hvor slemt det ville være, hvis hullet blev udnyttet: hvor let angrebet er, om det kræver adgangsoplysninger, og hvad angriberen får ud af det.
Det, scoren foran dig bevidst ikke beskriver, er, om nogen rent faktisk gør det. CVSS definerer valgfri Threat-målepunkter for, hvor moden en udnyttelse er, men næsten ingen offentliggør dem, så det, advarsler og scannere bærer, er Base-scoren: en egenskab ved hullet i sig selv, tildelt da advarslen blev offentliggjort, og uændret når verden flytter sig. En sårbarhed vurderet til 9,8, som kræver en opsætning, næsten ingen kører, og som ikke har nogen offentlig udnyttelseskode, bliver ved med at stå på 9,8. Det gør en, som hver eneste automatiske scanner på internettet begyndte at skyde efter i tirsdags, også.
Det er ikke en fejl ved CVSS. Det er en misforståelse af, hvad den er til. Alvorlighed er ét input til prioritering, ikke svaret.
KEV: udnyttelse, der rent faktisk er observeret
CISAs katalog over kendte udnyttede sårbarheder er en liste over sårbarheder, der er bekræftet brugt i rigtige angreb. Ikke teoretisk udnyttelige — observeret, i virkeligheden, med dokumentation.
Det er en bevidst konservativ liste. Noget kommer på den, fordi der findes troværdig dokumentation for udnyttelse, hvilket betyder, at kataloget er langt kortere end det samlede antal offentliggjorte sårbarheder — og at hver eneste post er en konstatering og ikke en forudsigelse.
Det gør den til det enkeltvis mest brugbare prioriteringssignal, der findes, og den er gratis. Har en komponent, du kører, en KEV-post, er det ikke en opgave til bunken. Angribere bruger den allerede mod nogen, og internet-bred scanning betyder, at det ikke beskytter synderligt at være lille.
Begrænsningen er dækning: KEV kender kun det, der er set og indberettet. Et helt nyt hul, der i stilhed bliver brugt mod en håndfuld mål, står der ikke endnu.
Der er også en betingelse, der er let at overse: CISA optager kun en sårbarhed, hvis der findes en klar udbedring at pege på. Et aktivt udnyttet hul uden rettelse kan derfor ligge uden for kataloget, netop mens det er værst.
EPSS: sandsynligheden for det, der sker næste gang
EPSS — Exploit Prediction Scoring System, udgivet af FIRST — udfylder det hul fra den anden side. Det er en model, opdateret dagligt, der giver sandsynligheden for, at en given sårbarhed bliver udnyttet inden for de næste tredive dage. Hver score er et tal mellem 0 og 1.
Den er trænet på de observerbare kendetegn, der historisk går forud for udnyttelse — hvordan hullet er beskrevet, hvilken type software det sidder i, om der er dukket udnyttelseskode op, hvor meget opmærksomhed det får. Det er en prognose, og som enhver prognose tager den nogle gange fejl.
Det tal, der gør EPSS værd at bruge, er ikke præcisionen på en enkelt sårbarhed, men fordelingens form: det overvældende flertal af offentliggjorte sårbarheder scorer meget lavt, og et lille mindretal scorer højt. Det er dét, der gør den brugbar til at skære en liste ned.
Sådan spiller de sammen
De tre niveauer, der følger af det, er ligetil — og de bør styre den rækkefølge, dine fund står i, ikke bare være et mærkat i siden:
- Udnyttet i virkeligheden — den står i KEV, eller EPSS-sandsynligheden er over 0,5. Ret den nu. Det er det niveau, der retfærdiggør at afbryde planlagt arbejde.
- Sandsynligt mål — en EPSS-score over 0,1, hvilket er omtrent de øverste to procent af alle offentliggjorte sårbarheder. Endnu ikke bekræftet i angreb, men modellen placerer den et godt stykke foran feltet. I denne uge.
- Forhøjet risiko — en målbar, men lavere EPSS-score. Værd at planlægge bevidst i stedet for at lade ligge i den store bunke.
Alt andet er bunken: reelt, værd at rette, og ikke værd at afbryde noget for. Tag det på den almindelige opdateringsrytme — med den bemærkning, at for en sårbarhed i en transitiv afhængighed er opdateringen som regel til noget helt andet.
Læg mærke til, hvad det gør ved regnestykket. Enogtredive fund bliver til to-tre, der kræver opmærksomhed i denne uge. Det er forskellen på en rapport, nogen handler på, og en rapport, nogen lukker.
To måder at gøre det forkert på
At alarmere om alt. Mailer dit værktøj dig om bunken såvel som om de udnyttede punkter, har prioriteringen ikke opnået noget — du har genskabt det oprindelige problem gennem en anden kanal. Hele pointen med at adskille "din huskeliste" fra "det her bliver angrebet nu" forsvinder, hvis begge lander i samme indbakke med samme hastegrad.
At behandle et manglende feed som en god nyhed. Fejler opslaget mod KEV eller EPSS, er det rigtige output "ikke tjekket" — ikke "ikke udnyttet". Et værktøj, der i stilhed falder tilbage til en frikendelse, når en datakilde er utilgængelig, er værre end et helt uden prioritering, for du kommer til at stole på det.
Hvad er CISAs KEV-katalog?
Kataloget over kendte udnyttede sårbarheder er CISAs liste over sårbarheder, der er bekræftet brugt i rigtige angreb — observeret i virkeligheden med dokumentation, ikke blot vurderet udnyttelige i teorien. Det er bevidst konservativt og derfor langt kortere end det samlede antal offentliggjorte sårbarheder, og netop dét gør det brugbart: står noget, du kører, i KEV, bruger angribere det allerede mod nogen, og internet-bred scanning betyder, at det ikke beskytter synderligt at være lille.
Hvad er en EPSS-score?
EPSS er en dagligt opdateret model, der anslår sandsynligheden for, at en given sårbarhed bliver udnyttet inden for de næste tredive dage, udtrykt som et tal mellem 0 og 1. Den er trænet på kendetegn, der historisk går forud for udnyttelse, såsom om der er dukket udnyttelseskode op, og hvor meget opmærksomhed hullet får. Værdien ligger mindre i den enkelte forudsigelse end i fordelingens form: de fleste offentliggjorte sårbarheder scorer meget lavt, så en høj score indsnævrer feltet reelt.
Hvorfor er CVSS ikke nok til at prioritere opdateringer?
CVSS måler, hvor slemt det ville være, hvis hullet blev udnyttet — ikke om nogen gør det. Den tildeles, når advarslen offentliggøres, og ændrer sig ikke, når verden gør, så en 9,8, der kræver en opsætning næsten ingen kører, scorer det samme som en 9,8, hver scanner på internettet begyndte at skyde efter i sidste uge. Alvorlighed er ét input til prioritering — ikke svaret, og derfor skal der udnyttelsesdata ved siden af.
Hvor mange sårbarheder bliver reelt udnyttet?
En brøkdel af de offentliggjorte. KEV-kataloget indeholder sårbarheder med bekræftet dokumentation for udnyttelse i virkeligheden, og det er størrelsesordener kortere end det samlede antal CVE'er, der offentliggøres hvert år. EPSS viser samme mønster fra den anden side: det overvældende flertal scorer meget lavt, og et lille mindretal scorer højt. Det er præcis derfor, prioritering efter udnyttelse gør en ubrugelig liste kort.
Hvor det viser sig i TrustCtrl
Både CodeControl og VulnControl krydstjekker hvert fund mod CISA KEV — og i CodeControls tilfælde mod EPSS. Sårbarhedstabellen sorterer først efter udnyttelse og dernæst efter alvorlighed, og CodeControls rapport åbner med en "ret disse først"-sektion, som regel to-tre punkter. Mail er forbeholdt en afhængighed, der lige er kommet i kataloget over udnyttede huller; bunken bliver i oversigten, hvor den hører hjemme. Et fejlet opslag meldes som ikke tjekket, aldrig som ikke udnyttet.