Was ist CVSS und wie nutzt Onapsis es?

Was ist CVSS?
Es ist nahezu unmöglich, fehlerfreie Software oder Hardware zu entwickeln, und bei komplexen Systemen gilt dies umso mehr. Nicht jeder Fehler ist eine Sicherheitslücke, aber viele Fehler sind es. Sicherheitslücken werden regelmäßig entdeckt, sowohl durch systematische Forschung als auch durch reinen Zufall. In einer idealen Welt würde jede Sicherheitslücke behoben werden, sobald sie bekannt wird, genauso wie jeder Implementierungsfehler behoben würde, sobald die Entwickler ihn bemerken. Viele Sicherheitslücken sind jedoch nicht nur Implementierungsfehler, sondern haben ihre Ursache in einem fehlerhaften Design, und die Behebung solcher Sicherheitslücken kann eine umfassende Neugestaltung erfordern. In jedem Fall ist die Welt nicht ideal, da die Ressourcen begrenzt sind, und daher müssen die Ergebnisse entsprechend ihrer Priorität behandelt werden.
Wenn eine Sicherheitslücke entdeckt wird, müssen deren Schweregrad und Priorität ermittelt werden, da eine Sicherheitslücke je nach Schweregrad entweder sofort behoben werden sollte oder auf einen späteren Zeitpunkt verschoben werden kann. So ist man sich beispielsweise einig, dass eine Remote-Code-Ausführung, eine Befehlsinjektion oder eine SQL-Injektion bei einem Server mit Internetanbindung mit sehr hoher Priorität behoben werden sollte, insbesondere wenn der Exploit einfach durchzuführen ist. Umgekehrt kann eine schwer erkennbare Schwachstelle, die nur unter seltenen Bedingungen ausgenutzt werden kann und lokalen Zugriff auf das betroffene System erfordert, aufgeschoben werden – zwar nicht auf unbestimmte Zeit, aber es ist klar, dass eine solche Schwachstelle eine deutlich niedrigere Priorität erhält.
Eine der wichtigsten Aufgaben eines Sicherheitsanalysten oder Sicherheitsforschers besteht darin, Schwachstellen nach ihrem Schweregrad einzustufen. Dieses Wissen bildet die Grundlage für Sicherheitsscanner, darunter auch das Bewertungs-Framework der Platform. Der zentrale Vorteil eines solchen Tools besteht darin, Antworten auf Fragen wie„Ist Handlungsbedarf gegeben?“,„Wo ist Handlungsbedarf gegeben?“ und„Was sollte unternommen werden?“ zu liefern. Da ein Bewertungs-Tool Ergebnislisten mit Hunderten oder Tausenden von Einträgen ausgeben kann, ist die Frage„Was sollte zuerst getan werden?“ für den System- oder Anwendungsbetreiber ebenfalls wichtig.
Nun hängen Schweregrad und Priorität einer Sicherheitslücke zwar eng zusammen, sind aber nicht identisch, da die Priorität von weiteren Faktoren wie der geschäftlichen Relevanz oder dem Umfeld abhängt. So kann beispielsweise ein System, das eine anfällige webbasierte Verwaltungsschnittstelle bereitstellt, dennoch eine niedrige Priorität haben, wenn die Schnittstelle aufgrund anderer Mechanismen nicht zugänglich ist. Ebenso ist eine Sicherheitslücke, die zur Offenlegung von Dokumenten führen könnte, von geringerer Bedeutung, wenn die Dokumente im betroffenen Repository ohnehin öffentlich zugänglich sind. Ebenso macht es einen großen Unterschied, ob die Ausnutzung einer Schwachstelle viel manuelle Arbeit und fortgeschrittene technische Fähigkeiten erfordert oder ob ein einfach zu verwendendes Exploit-Skript bereits verfügbar ist.
Um die Punkte auf der Liste der Befunde zu priorisieren, wird üblicherweise jedem Punkt eine numerische Bewertung zugewiesen. Auf diese Weise wird die Reihenfolge der Maßnahmen festgelegt – man beginnt einfach mit dem Punkt mit der höchsten Bewertung. Der De-facto-Standard zur Bewertung von Schwachstellen ist das Common Vulnerability Scoring System (CVSS), das von FIRST gepflegt wird. CVSS liefert eine Bewertung auf einer Skala von 0,0 (kein Problem) bis 10,0 (höchste Schwere). Genauer gesagt liefert CVSS drei Werte: den Basiswert (Base Score), den zeitlichen Wert (Temporal Score) und den Umgebungswert (Environmental Score). Der Basiswert ist der Wert, den man am häufigsten sieht, während der zeitliche Wert und der Umgebungswert seltener vorkommen. Dies hängt mit der Aussagekraft der einzelnen Werte zusammen.
Der Basiswert ist ein rein technischer Wert, der sich nach seiner Ermittlung im Laufe der Zeit nicht ändert und unabhängig von nicht-technischen Überlegungen wie„Ist die Schwachstelle für das betroffene System relevant?“ ist. Die Zeitabhängigkeit wird durch den zeitabhängigen Wert eingeführt, der Fragen wie„Ist die Schwachstelle bestätigt?“,„Gibt es einen Fix oder eine Abhilfe?“ und„Inwieweit ist Exploit-Code verfügbar?“ berücksichtigt. Es sollte sofort klar sein, dass die Antworten auf diese Fragen (a) den Schweregrad einer Schwachstelle in gewisser Weise beeinflussen und (b) sich im Laufe der Zeit ändern (bis sie schließlich zu einem Endzustand konvergieren), daher der Name „zeitabhängiger“ Score. Darüber hinaus ist es offensichtlich, warum der zeitabhängige Score selten in Schwachstellenauflistungen wie CVE erscheint – zeitabhängige Scores würden regelmäßige Aktualisierungen erfordern. Es ist jedoch durchaus sinnvoll, dass ein Unternehmen im Rahmen einer gründlichen Risikobewertung die Temporal Scores für Befunde berechnet, insbesondere wenn es sich auf die Schwachstellen mit hoher Priorität konzentrieren muss.
Schließlich berücksichtigt der Umgebungswert die Sicherheitsanforderungen. So ist beispielsweise eine Schwachstelle mit Auswirkungen auf die Vertraulichkeit weniger gravierend, wenn keine Anforderungen an die Vertraulichkeit bestehen. Solche Anforderungen sind jedoch spezifisch für die Umgebung, in der die Bewertung durchgeführt wird, und nicht den bewerteten Zielen inhärent. Tatsächlich müssen die Anwendungs- oder Systembetreiber diese zusätzlichen Informationen bereitstellen, und wie beim zeitlichen Wert ist auch der Umgebungswert nur in bestimmten Umgebungen oder bestimmten Szenarien aussagekräftig.
Im Folgenden beziehen wir uns ausschließlich auf den Basiswert; der Begriff „CVSS-Wert“ oder einfach „Wert“ bezieht sich auf den CVSS-Basiswert, wobei mit CVSS die Version 3.1 gemeint ist.
Punktberechnung und Vektorzeichenfolgen
Die Bewertung hängt von mehreren Faktoren ab, auf die gleich noch eingegangen wird; jeder Faktor kann aus einer Liste diskreter Optionen ausgewählt werden. Jede Option ist mit einem numerischen Wert verbunden. Die eigentliche Berechnung der Bewertung ist recht komplex, und der Prozess gibt kaum Aufschluss darüber, warum die Berechnung auf diese Weise erfolgt oder warum die Optionen gerade diese numerischen Werte haben. Es würde den Rahmen dieses Beitrags sprengen, all dies hier zu beschreiben; weitere Einzelheiten finden Sie im Spezifikationsdokument. Es genügt zu sagen, dass die Bewertung letztendlich darauf ausgelegt ist, „vernünftige“ Ergebnisse zu liefern, sodass Schwachstellen mit hohem Schweregrad eine hohe Punktzahl und Schwachstellen mit geringem Schweregrad eine niedrige Punktzahl erhalten. Mit anderen Worten: Für die allermeisten oder sogar alle Schwachstellen sollte die Punktzahl im Idealfall mit dem Urteil eines erfahrenen Sicherheitsexperten übereinstimmen.
Die Faktoren, aus denen sich die Punktzahl zusammensetzt, sind
- Angriffsvektor (Netzwerk, benachbart, lokal, physisch)
- Komplexität des Angriffs (niedrig, hoch)
- Erforderliche Berechtigungen (Keine, Niedrig, Hoch)
- Benutzerinteraktion (Keine, erforderlich)
- Geltungsbereich (unverändert, geändert)
- Vertraulichkeit (keine, gering, hoch)
- Integrität (keine, gering, hoch)
- Verfügbarkeit (keine, gering, hoch)
Jedem Faktor kann einer von mehreren Werten zugewiesen werden, der den numerischen Wert und damit die Bewertung bestimmt. Grob gesagt messen diese Faktoren die Exposition und die Auswirkungen einer Schwachstelle. Beachten Sie außerdem, dass bestimmte Probleme, die Platform , grundsätzlich nicht durch CVSS abgedeckt sind. So gibt es beispielsweise keine Bewertung für die Deaktivierung der Protokollierung. Auch wenn dies ein Problem hinsichtlich der Compliance darstellen mag, handelt es sich dabei nicht um eine Schwachstelle, weshalb es dafür auch keine Schwachstellenbewertung geben kann.
Obwohl das Bewertungsschema recht einfach und auf den ersten Blick selbsterklärend wirkt und es Online-Rechner gibt, mit denen man die Auswahlmöglichkeiten „ausprobieren“ kann, gibt es einige Fallstricke. Bei unachtsamer Anwendung ist die resultierende Punktzahl bedeutungslos. Auch dies im Detail zu beschreiben, würde den Rahmen dieses Beitrags sprengen. Der Leser wird stattdessen auf das hervorragende CVSS-Benutzerhandbuch und die Liste der Beispiele verwiesen; dort werden die Bewertung und die Begründung für mehr als 30 Fälle ausführlich dargelegt.
Ein wichtiges Merkmal von CVSS ist, dass es nicht nur den Wert, sondern auch die Zusammensetzung seiner Faktoren in komprimierter Form angibt. Anstelle einer einfachen Zahl wie 7,0 wird der Wert also von einer Zeichenfolge wie CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:L/A:L begleitet. Dies ist die komprimierte Form von: unter Verwendung von CVSS 3.1, Angriffsvektor: Netzwerk, Angriffskomplexität: hoch, erforderliche Berechtigungen: keine, erforderliche Benutzerinteraktion: keine, Umfang: unverändert, Auswirkungen auf die Vertraulichkeit: hoch, Auswirkungen auf Integrität und Verfügbarkeit: gering. Auf diese Weise ist es möglich, das Problem besser zu verstehen und die Bewertung nachzuvollziehen, da die Bewertung allein nicht viele Informationen liefert. Der Beispielvektor drückt Folgendes aus: Das anfällige Ziel kann über das Netzwerk (möglicherweise, aber nicht zwangsläufig über das Internet) angegriffen werden, der Angriff erfordert die Erfüllung bestimmter spezieller Bedingungen, der Angriff kann ohne Authentifizierung durchgeführt werden und erfordert nicht, dass ein Benutzer a priori etwas unternimmt, ein erfolgreicher Angriff trifft das anfällige Ziel selbst, ein erfolgreicher Angriff verletzt die Vertraulichkeit ziemlich schwerwiegend (in einem angemessenen Sinne) und die Integrität und Verfügbarkeit nur mäßig.
Wo finden wir CVSS in der Onapsis Platform?
Die Platform den CVSS-Wert für relevante Schwachstellen Platform . OP ( Platform) behandelt Schwachstellen als „Issues“ – ein Begriff, der die Vielfalt der Probleme zusammenfassen soll, die die platform in einem ERP-System aufdecken platform . Diese Probleme reichen von unternehmensspezifischen Fehlkonfigurationen bis hin zu sogenannten allgemeinen Schwachstellen.

Den CVSS-Wert finden Sie ganz einfach, indem Sie in Assess zum Bereich „Issues“ navigieren. Im Bereich „Issue Summary“, in dem die wichtigsten Informationen zum Problem angezeigt werden, wird gegebenenfalls der CVSS-Wert angezeigt.
OP nutzt den CVSS auch im Assess , um den Benutzern einen schnellen Überblick über drei wichtige Kennzahlen zu geben: den durchschnittlichen CVSS-Wert sowie den höchsten und den niedrigsten Wert. Der CVSS-Wert für alle ungelösten Problemfälle wird unter Berücksichtigung aller betroffenen Ressourcen in Ihrer Infrastruktur berechnet. Der daraus resultierende Wert wird in einem Balkendiagramm dargestellt, das entsprechend der Schweregradskala des CVSS-Bereichs farblich gekennzeichnet ist.
Der durchschnittliche CVSS-Wert hilft dabei zu erkennen, ob die Anzahl der ungelösten Sicherheitslücken eher am unteren oder am oberen Ende der CVSS-Skala liegt. Letztendlich sollte keine ungelöste Sicherheitslücke übersehen werden, weshalb das Widget auch den höchsten und den niedrigsten CVSS-Wert für ungelöste Sicherheitslücken anzeigt.

Natürlich sind nicht alle Systeme gleich, und manche sind kritischer als andere. Möglicherweise ist uns ein ungelöstes Problem mit einem niedrigen CVSS-Wert auf einem wichtigen System wichtiger als ein ungelöstes Problem mit einem hohen CVSS-Wert auf einem weniger sensiblen System. Eine Möglichkeit, diese Systeme gezielt zu identifizieren, besteht darin, im Assess einen Asset-Filter anzuwenden – oder einen Tag-Filter, falls Sie eine Gruppe kritischer Assets mit Tags versehen haben.
Dadurch werden diese Kennzahlen auf die Systeme beschränkt, die als besonders relevant gelten.
Eine Möglichkeit, den CVSS als Fortschrittsindikator zu nutzen, besteht darin, den Assess regelmäßig zu exportieren und zu beobachten, wie der niedrigste, der durchschnittliche und der höchste CVSS-Wert auf 0 sinken, sobald die auftretenden Probleme behoben werden.
Man könnte also meinen, dass der Rückgang unserer CVSS-Werte auf null bedeutet, dass wir Risiken vollständig aus unserer Umgebung verbannt haben. Leider lautet die Antwort jedoch „nein“. Wie oben erwähnt, kann der OP eine Vielzahl von Problemen in ERP-Systemen finden, und CVSS ist nicht auf alle davon anwendbar. Deshalb ist es wichtig, den Fortschritt bei der Behebung durch Tools wie das Widget „Trendanalyse und Vorkommen“ zu ergänzen, das nachverfolgt, ob alle von der platform gefundenen Problemvorkommen behoben platform .


Der CVSS-Wert wird in der Cybersicherheits-Community weithin anerkannt, genutzt und verstanden und dient als Indikator für die potenziellen Auswirkungen einer Sicherheitslücke. Die Platform nutzt diesen Wert, um Kunden dabei zu unterstützen, die zu behebenden Probleme assess zu priorisieren.

