Jeder Befund im Bericht über einen Penetrationstest enthält eine Zeile wie diese:
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
und daneben eine Zahl. In Besprechungen wird die Zahl zitiert. Lesen sollte man die Zeile, denn sie sagt, warum die Zahl so ist, wie sie ist.
CVSS, das Common Vulnerability Scoring System, wird von FIRST herausgegeben. Version 4.0 erschien am 1. November 2023.
Was der Punktwert misst
CVSS misst den Schweregrad einer Schwachstelle: wie leicht sie sich ausnutzen lässt und wie viel Schaden die Ausnutzung anrichtet. Das Risiko misst CVSS nicht; es hängt zusätzlich davon ab, was das betroffene System für Sie wert ist und ob jemand es angreift. Die Spezifikation sagt das selbst, und Version 4.0 hat den Unterschied in den Namen der Punktwerte sichtbar gemacht:
| Name | Grundlage | Beantwortet |
|---|---|---|
| CVSS-B | Basismetriken | Wie schwer wiegt die Schwachstelle an sich? |
| CVSS-BT | Basis und Bedrohung | Wie schwer, gemessen an dem, was Angreifer gerade tun? |
| CVSS-BE | Basis und Umgebung | Wie schwer in unserer Umgebung? |
| CVSS-BTE | Alle drei | Wie schwer hier und jetzt? |
Ein Bericht über einen Penetrationstest nennt normalerweise CVSS-B, manchmal CVSS-BE, wenn der Tester die Umgebung gut kennt. Schwachstellendatenbanken veröffentlichen CVSS-B. Stehen nach einem Punktwert keine Buchstaben, gehen Sie von B aus.
Die Basismetriken
Die ersten fünf beschreiben, wie der Angriff ausgeführt wird.
| Metrik | Werte | Frage |
|---|---|---|
| Attack Vector (AV) | Network, Adjacent, Local, Physical | Von wo aus kann der Angreifer die Schwachstelle erreichen? |
| Attack Complexity (AC) | Low, High | Muss der Angreifer einen vorhandenen Schutz überwinden? |
| Attack Requirements (AT) | None, Present | Hängt der Angriff von Bedingungen der Einsatzumgebung ab, etwa von einer Race Condition oder einer Position im Netzwerk? |
| Privileges Required (PR) | None, Low, High | Welchen Zugang braucht der Angreifer vorab? |
| User Interaction (UI) | None, Passive, Active | Muss jemand anderes etwas tun? |
Attack Requirements ist neu in Version 4.0: Die Metrik trennt Bedingungen der Umgebung von Schutzmaßnahmen, die überwunden werden müssen. User Interaction hat jetzt drei Werte: Passive bedeutet eine gewöhnliche Handlung wie das Öffnen einer Seite, Active bedeutet, dass das Opfer etwas Ungewöhnliches tun muss.
Die nächsten sechs beschreiben den Schaden am verwundbaren System und an nachgelagerten Systemen, die sich darüber erreichen lassen:
| Metrik | Werte |
|---|---|
| Vertraulichkeit: VC, SC | High, Low, None |
| Integrität: VI, SI | High, Low, None |
| Verfügbarkeit: VA, SA | High, Low, None |
Version 3.1 hatte für die Auswirkung auf andere Systeme eine Metrik namens Scope. Diese Metrik führte immer wieder zu Uneinigkeit zwischen den Bewertern und wurde durch die drei expliziten Metriken für nachgelagerte Systeme ersetzt.
Das Beispiel lesen
AV:N/AC:L/AT:N/PR:N/UI:N: über das Netzwerk erreichbar, kein Schutz zu überwinden, keine besonderen Bedingungen, kein Konto nötig, niemand muss irgendetwas anklicken. VC:H/VI:H/VA:H: vollständiger Verlust von Vertraulichkeit, Integrität und Verfügbarkeit des verwundbaren Systems. SC:N/SI:N/SA:N: keine Auswirkung darüber hinaus.
Dieser Vektor ergibt 9.3, Kritisch. Gäbe dieselbe Schwachstelle auch die volle Kontrolle über Systeme dahinter, stünden die letzten drei Metriken auf High, und der Punktwert läge bei 10.0.
Ändern Sie einen Buchstaben, und die Bedeutung ändert sich. PR:L statt PR:N sagt, dass ein Konto nötig ist: Bei einem öffentlichen Dienst mit freier Registrierung ändert das wenig, bei einem internen System sehr viel. Der Punktwert ändert sich viel weniger als die Bedeutung. Deshalb lohnt es sich, den Vektor zu lesen.
Die Skala
| Stufe | Punktwert |
|---|---|
| Keine | 0.0 |
| Niedrig | 0.1 – 3.9 |
| Mittel | 4.0 – 6.9 |
| Hoch | 7.0 – 8.9 |
| Kritisch | 9.0 – 10.0 |
Bedrohung und Umgebung
Exploit Maturity (E) ist die einzige Bedrohungsmetrik: Attacked, Proof-of-Concept oder Unreported. Eine Schwachstelle, die aktiv ausgenutzt wird, behält ihren Punktwert; eine, für die kein Exploit bekannt ist, erhält einen niedrigeren.
Mit den Umgebungsmetriken können Sie die Basismetriken für Ihre Einsatzumgebung neu festlegen und angeben, wie wichtig Vertraulichkeit, Integrität und Verfügbarkeit für das betroffene System sind. Eine kritische Schwachstelle in einem System, das nichts Wertvolles enthält und nur aus einem Testnetz erreichbar ist, ist für Sie nicht kritisch, und der Punktwert mit Umgebungsmetriken kann das zeigen.
Version 4.0 führt außerdem ergänzende Metriken ein, etwa Safety, Automatable und Recovery. Diese beschreiben die Schwachstelle näher und ändern den Punktwert nicht.
Was der Punktwert nicht sagt
- Ob die Schwachstelle angegriffen wird. Für bekannte Schwachstellen schätzt EPSS die Wahrscheinlichkeit einer Ausnutzung. Schweregrad und Wahrscheinlichkeit sagen zusammen mehr als jeder der beiden Werte für sich.
- Was das System wert ist. Ein Befund der Stufe Mittel im Zahlungssystem kann schwerer wiegen als einer der Stufe Kritisch in der Staging-Kopie einer Marketingseite.
- Was die Kette bewirkt. Drei Befunde der Stufe Mittel, die zusammen zur Übernahme eines Kontos führen, stehen im Bericht als drei Befunde der Stufe Mittel und als ein Angriffspfad. Lesen Sie beides.
So nutzen Sie den Punktwert
Sortieren Sie zuerst nach dem Punktwert und korrigieren Sie dann mit dem, was Sie wissen: dem Wert des Systems, der Erreichbarkeit aus dem Internet, bekannter Ausnutzung, den Ketten im Bericht. Weicht die Priorität, zu der Sie kommen, vom Punktwert ab, schreiben Sie auf, warum. Ein guter Bericht macht es genauso: Er nennt den Punktwert, den Vektor und, wo der Tester mit der Zahl nicht einverstanden ist, den Grund.
Wie wir Befunde bewerten und behandeln, beschreibt die Methodik.