Held-Hintergrund ohne Trennlinie
Richtlinie

Verwendung von Komponenten mit bekannten Schwachstellen

Die meisten Anwendungen verwenden eine Vielzahl von Komponenten von Drittanbietern. Diese Komponenten bieten alles von der Protokollierung über die Erstellung von Vorlagen bis hin zum Datenbankzugriff.

Dadurch wird die Softwareentwicklung erheblich vereinfacht und viel Zeit gespart, aber auch diese Komponenten werden von Menschen erstellt und enthalten zwangsläufig Schwachstellen. Das bedeutet, dass Sie unwissentlich Schwachstellen ausgesetzt sein können, die ausgenutzt werden können.

Komponenten auf dem neuesten Stand halten

Im Allgemeinen empfiehlt es sich, Frameworks, Bibliotheken und andere Komponenten regelmäßig auf dem neuesten Stand zu halten. Dies kann auf verschiedene Weise erfolgen, darunter:

  • Viele Quellcodeverwaltungsprogramme können Repositorys analysieren und Warnungen ausgeben, wenn Schwachstellen in Abhängigkeiten gefunden werden.
  • Viele Paketmanager können Anwendungen analysieren und potenzielle Schwachstellen in Abhängigkeiten identifizieren.
  • Es gibt zahlreiche Software-Komponentenanalyse-Lösungen (SCA), mit denen sich anfällige Abhängigkeiten identifizieren lassen.

Risikominderung bei technischen Schulden

Eines der etwas heimtückischen Probleme bei Bibliotheks-Upgrades ist, dass es zu Code-Breaking-Änderungen kommen kann. Diese Änderungen sind oft dokumentiert, aber es kann auch undokumentierte Änderungen geben, die erst auftreten, wenn der Code in der Produktionsumgebung ausgeführt wird.

Wenn Anwendungen mehrere Versionen ausführen, die hinter der neuesten Version zurückbleiben, kann die Aktualisierung auf die neueste Version einen erheblichen Arbeitsaufwand erfordern. Um zu vermeiden, dass bei zeitkritischen Schwachstellen mehrere Tage für die Aktualisierung benötigt werden, ist es wichtig, Komponenten von Drittanbietern auf einem relativ aktuellen Stand zu halten.

Es wird auch nicht empfohlen, das Paket ohne vorheriges Lesen der Versionshinweise zu aktualisieren, da diese wichtige Informationen zu Änderungen enthalten können, die die Funktionsweise der Anwendung beeinflussen, auch wenn dies nicht eindeutig ersichtlich ist.

Ist es nicht sicherer, wenn man aktualisiert?

Es kommt zwar nicht oft vor, aber es können folgende Schwachstellen auftreten.

  • Nicht in früheren Versionen vorhanden
  • Bei der Behebung von Schwachstellen geplant

In solchen Fällen könnte man meinen, dass es tatsächlich nicht ratsam ist, Pakete regelmäßig zu aktualisieren. Natürlich sollte man diese Denkweise möglichst vermeiden, da sie zu einer Anhäufung von technischen Schulden führt.

Da dieses Szenario relativ selten auftritt, überwiegen die Vorteile einer regelmäßigen Aktualisierung des Pakets bei weitem die möglichen neuen Schwachstellen. Wenn Sie regelmäßig auf dem neuesten Stand bleiben, lassen sich diese ohnehin leicht beheben.

Außerdem wird davon ausgegangen, dass Lieferanten Schwachstellen nicht stillschweigend beheben, ohne dies öffentlich bekannt zu geben. Leider ist dies nach wie vor sehr häufig der Fall.

Bemerkenswerte Beispiele

Nachfolgend finden Sie einige bemerkenswerte Beispiele, die Sie vielleicht kürzlich gehört haben. Sie erfahren, warum es wichtig ist, die Bibliothek zu überprüfen und auf dem neuesten Stand zu halten.