In this article
So bereiten Sie sich schon heute auf Zero-Day-Schwachstellen von morgen vor
Was ist eine Zero-Day-Schwachstelle?
Eine Zero-Day-Schwachstelle ist eine neu entdeckte Schwachstelle in einem Asset, etwa in einer Anwendung, einem Container-Basis-Image, einer Open-Source-Bibliothek oder einer Cloud-Instanz. Da diese Schwachstelle den Verantwortlichen für die Anwendung zuvor nicht bekannt war, gibt es keine Möglichkeit, sie zu entschärfen – außer, das betreffende Asset nicht mehr zu verwenden. Bei Zero-Day-Schwachstellen ist die Anwendung anfällig für Angriffe, bis der Anbieter oder die Verantwortlichen eine Lösung bereitstellen.
So gehen Sie mit Zero-Day-Schwachstellen um
In der Software-Sicherheit können sich die Bedingungen über Nacht ändern – und das passiert oft. An einem Tag laufen Ihre Anwendungen und Systeme noch sicher in der Cloud. Am nächsten sorgt eine neue ausnutzbare Schwachstelle für Schlagzeilen, und ein Wettlauf gegen die Zeit beginnt: Sie müssen die anfällige Komponente in Ihrer gesamten Umgebung finden und beheben.
Zero-Day-Schwachstellen – neu entdeckte Sicherheitslücken, für die es oft keine Abhilfe gibt, außer „sie vorerst nicht mehr zu verwenden“ – versetzen Sicherheitsteams in helle Aufregung. Zum Glück können Unternehmen proaktiv Maßnahmen ergreifen, um sich auf Zero-Day-Schwachstellen vorzubereiten, bevor sie auftreten oder entdeckt werden.
Warum stellen Zero-Day-Schwachstellen ein Risiko dar?
Die meisten heutigen Anwendungen enthalten ein umfangreiches Netzwerk aus Abhängigkeiten und externen Ressourcen. Eine einzelne Anwendung kann Dutzende Open-Source-Komponenten und Drittanbieter-Software enthalten. Wird eine Zero-Day-Schwachstelle öffentlich bekannt, müssen Unternehmen, die die anfällige Komponente verwenden, diese so schnell wie möglich ausfindig machen und beheben. Unternehmen, die nicht rechtzeitig reagieren und die Schwachstellen beheben, können Opfer eines Zero-Day-Angriffs werden.
Welche Folgen hat ein Zero-Day-Exploit?
Ein erfolgreicher Zero-Day-Exploit kann schwerwiegende Folgen für Unternehmen haben – von finanziellen Verlusten bis hin zu einem Reputationsschaden. Angreifer können solche Schwachstellen ausnutzen, um Code aus der Ferne auszuführen, vertrauliche Daten zu stehlen oder geschäftskritische Abläufe zu stören. Da Zero-Day-Schwachstellen vor ihrer Entdeckung unbekannt sind, können herkömmliche Sicherheitsmaßnahmen wie Firewalls und Antivirensoftware ihre Ausnutzung oft nicht verhindern. Um die Auswirkungen eines Angriffs möglichst gering zu halten, sind daher eine schnelle Erkennung, Eindämmung und Behebung entscheidend.
Lebenszyklus einer Zero-Day-Schwachstelle
Zero-Day-Schwachstellen sind besonders riskant, weil sie so schnell auftreten. Außerdem kann ihr Lebenszyklus je nachdem, wer sie entdeckt, erheblich variieren. Abends ist die Schwachstelle vielleicht noch unbekannt, doch am nächsten Morgen ist sie bereits überall in den Nachrichten und Foren. Hier sehen Sie einen möglichen zeitlichen Ablauf einer typischen Zero-Day-Schwachstelle in einer Open-Source-Bibliothek. Ähnlich kann es auch bei proprietären Anwendungen ablaufen:
Ein Entwickler entscheidet sich für eine Open-Source-Bibliothek. Der aktualisierte Code und die neue Bibliothek werden für den Produktionseinsatz freigegeben.
Entdeckung der Schwachstelle. In den folgenden Tagen, Monaten oder Jahren entdecken Sicherheitsforscher (im besten Fall) oder Angreifer (im schlimmsten Fall) die Schwachstelle. Angreifer beginnen, sie auszunutzen, während Sicherheitsforscher untersuchen, wie sie ausgenutzt werden könnte.
Kenntnis der Schwachstelle. Die Maintainer erfahren von der Schwachstelle, haben aber noch keine Lösung dafür.
Offenlegung der Schwachstelle. Entweder der Maintainer der anfälligen Bibliothek oder die Sicherheitsforscher, die die Schwachstelle entdeckt haben, informieren betroffene Kunden oder die Öffentlichkeit darüber.
Patch für die Zero-Day-Schwachstelle. Der Anbieter veröffentlicht Lösungen, oft in Form von Point-Releases. Je nachdem, wie lange die Schwachstelle bereits besteht, kann es mehrere davon geben. Wie lange es dauert, einen vollständigen Fix bereitzustellen, hängt von der Komplexität ab und reicht von wenigen Stunden bis zu mehreren Monaten.
Installation der Fixes durch Kunden. Schließlich müssen die betroffenen Kunden die Patches installieren. Je nachdem, wie lange es dauert, alle Instanzen der anfälligen Komponente zu finden und den Fix einzuspielen, kann dieser Prozess Monate oder sogar Jahre dauern.
Anhaltende Angriffsversuche. Auch lange nach der Veröffentlichung eines Patches versuchen Angreifer weiterhin, die Schwachstelle auszunutzen. Sie hoffen, ungeschützte Systeme im Einsatz zu finden. Deshalb sollten Unternehmen immer regelmäßige Sicherheitsscans in den Build- und Deployment-Prozess integrieren.
Dazwischen kann es viele weitere Schritte geben. Ob die beteiligten Teams Best Practices für die Offenlegung von Schwachstellen befolgen, kann sich erheblich auf die Auswirkungen einer Schwachstelle auswirken.
6 Tipps zur Planung und Vorbereitung auf Zero-Day-Schwachstellen
Zero-Day-Schwachstellen treten häufig auf und bringen jedes Jahr Tausende Unternehmen in eine schwierige Lage. 2022 verzeichnete Google 41 Zero-Day-Schwachstellen, die aktiv ausgenutzt wurden. Es ist also keine Frage, ob, sondern wann Ihr Unternehmen mit einer Zero-Day-Schwachstelle konfrontiert wird.
Da diese Schwachstellen so häufig auftreten, müssen sich Unternehmen proaktiv darauf vorbereiten. Unternehmen können schon im Vorfeld einige Maßnahmen ergreifen, damit sie im Notfall sofort handeln und Zero-Day-Bedrohungen beheben können. Dazu gehören:
1. Bei der Entwicklung hat Sicherheit oberste Priorität.
Sicherheit hat oberste Priorität, wenn Entwickler Schwachstellen beheben, sobald sie auftreten – während des gesamten SDLC. Sicherheitsprobleme direkt bei ihrem Auftreten zu beheben, ist wesentlich effizienter, als tagelang oder wochenlang zu warten und dann eine lange Liste von Problemen zu korrigieren, die bereits in nachgelagerte Phasen gelangt sind.
Ein Ansatz, bei dem Sicherheit an erster Stelle steht, ermöglicht dem Sicherheitsteam außerdem eine bessere Zusammenarbeit mit den Entwicklern, statt sie auszubremsen. Diese Zusammenarbeit fördert eine stärkere DevSecOps-Kultur. Wenn Entwicklungs- und Sicherheitsteams bereits an die Zusammenarbeit gewöhnt sind, können sie Probleme bei einer Zero-Day-Schwachstelle effektiver lösen.
2. Etablieren Sie einen soliden Sicherheitsprozess.
Solide, nach links verlagerte Prozesse für Anwendungssicherheit konzentrieren sich darauf, Schwachstellen während des gesamten SDLC zu finden und zu beheben, statt bis zum Ende jedes großen Meilensteins mit den Tests zu warten. Einige Unternehmen führen beispielsweise statische Anwendungssicherheitstests (SAST) für proprietären Code durch, sobald ein Entwickler einen Pull Request erstellt.
Zu diesen Prozessen gehören auch das Ermitteln aller Drittanbieter-Abhängigkeiten mithilfe von Software Composition Analysis (SCA) und ihre genaue Dokumentation in einer Software Bill of Materials (SBOM). Da heutige Entwicklungsprozesse sehr schnell ablaufen, nutzen viele Unternehmen Automatisierungstools, um ihre Abhängigkeiten kontinuierlich in Echtzeit zu erfassen.
Wenn ein Unternehmen bereits täglich solide Sicherheitsprozesse nutzt, lassen sich Projekte, die von Zero-Day-Schwachstellen betroffene Drittanbieter-Ressourcen verwenden, viel leichter ausfindig machen und schnell beheben.
3. Führen Sie regelmäßig Sicherheitsbewertungen und Audits durch.
Unternehmen sollten außerdem regelmäßig Sicherheitsbewertungen und Audits durchführen. Die Einzelheiten hängen zwar von der Branche und anderen geschäftlichen Anforderungen ab, doch umfassen sie häufig einige der folgenden fünf Phasen:
Mögliche Bedrohungen ermitteln
Vertrauliche Daten in der Umgebung identifizieren
Die Angriffsfläche erfassen
Schwachstellen in Prozessen bewerten
Einen Fahrplan zur Optimierung der Prozesse erstellen
Wer diese Schritte regelmäßig durchführt, kann sicherstellen, dass sein Sicherheitsprogramm bestens aufgestellt ist. Bewertungen helfen Unternehmen zudem dabei, ihre bestehende Sicherheitslage genau zu verstehen. Dieses Wissen und die entsprechende Vorbereitung machen es deutlich einfacher, Zero-Day-Exploits zu verhindern.
4. Das Sicherheitsbewusstsein der Mitarbeitenden fördern.
Auch das Sicherheitsbewusstsein der Mitarbeitenden spielt bei der Vermeidung von Zero-Day-Schwachstellen eine Rolle. Ein effektives Schulungsprogramm vermittelt Entwicklern auf interaktive und ansprechende Weise, wie sie sicheren Code schreiben. Eine der besten Methoden, Entwicklungsteams weiterzubilden, ist es, Scans auf Schwachstellen mit Anleitungen zur Behebung zu ergänzen. Einige Scanner erklären beispielsweise, warum jede Schwachstelle ein Risiko darstellt und wie sie behoben werden kann.
Praxisnahe Sicherheitsschulungen helfen Entwicklern, ihren eigenen Code und die damit verbundenen Sicherheitsrisiken besser zu verstehen. So können sie Zero-Day-Schwachstellen effizienter beheben, sobald diese auftreten.
5. Erstellen Sie einen eigenen Leitfaden.
Warten Sie nicht auf die nächste Zero-Day-Schwachstelle, um Ihre Prozesse zu dokumentieren. Erstellen Sie Leitfäden und Checklisten für den Umgang mit der nächsten Schwachstelle. Halten Sie darin fest, welche Personen einbezogen werden müssen, wie Sie die Auswirkungen bewerten, welches Inventar überprüft werden muss und wie Sie Ergebnisse und Auswirkungen intern kommunizieren (und gegebenenfalls auch extern). Besonders wichtig ist, dass alle wissen, wo die Leitfäden zu finden sind. Beginnen Sie noch vor der nächsten kritischen Schwachstelle mit Tools zur Erfassung Ihres Quellcode- und Container-Inventars, damit Sie besser auf die nächste Schwachstelle vorbereitet sind.
6. Bleiben Sie über aktuelle Sicherheitsinformationen auf dem Laufenden.
Ihr Unternehmen sollte auch festlegen, auf welche Quelle es sich stützt, um über neue Zero-Day-Schwachstellen auf dem Laufenden zu bleiben. Wenn eine Zero-Day-Schwachstelle in den Nachrichten auftaucht, zählt jede Minute. Ihre Teams sollten daher vorbereitet sein, damit Sie schon im Voraus schnell erkennen, wo Sie die Behebung priorisieren müssen.
Snyk stellt mit Unterstützung der Snyk Vulnerability Database (VulnDB) detaillierte Informationen zu allen bekannten Schwachstellen bereit und erklärt, wie sie sich beheben lassen – oft mit nur einem Klick. Je schneller Ihr Team die richtigen Informationen zur Behebung einer Schwachstelle erhält, desto schneller können Sie sie eindämmen oder mit einem Patch beheben.

In der VulnDB finden Sie außerdem direkt die aktuell besonders relevanten Schwachstellen:

Aktuelle Zero-Day-Angriffe
Bei aktuellen Zero-Day-Exploits denken wir zuerst an Log4Shell: eine Remote-Code-Execution-Schwachstelle in Log4j, die Java-Anwendungen betraf und mit einem CVSS-Wert von 10 bewertet wurde – dem höchstmöglichen Wert. Diese Schwachstelle betraf die meisten großen Unternehmen, da viele Log4j in ihren Umgebungen verwendeten, oft über indirekte Abhängigkeiten.
Einige weitere aktuelle Beispiele:
CVE-2023-44487: Eine schwerwiegende Zero-Day-Schwachstelle im HTTP/2 Rapid Reset.
CVE-2023-38545: Ein schwerwiegender, heap-basierter Pufferüberlauf in cURL.
CVE-2023-4863: Eine kritische Schwachstelle, durch die Angreifer Google Chrome mithilfe von manipulierten WebP-Bildern ausnutzen können.
CVE-2022-3602 und CVE-2022-3786: Zwei schwerwiegende Schwachstellen in OpenSSL im Zusammenhang mit Pufferüberläufen.
CVE-2022-42889: Eine schwerwiegende Schwachstelle, durch die beliebiger Code in Apache Commons Text ausgeführt werden konnte.
Spring4Shell: Eine kritische Java-RCE-Schwachstelle im Spring Framework.
Alle oben aufgeführten Schwachstellen mit hohem oder kritischem Schweregrad sowie weitere Beispiele traten innerhalb eines Zeitraums von 24 Monaten auf. Das zeigt, wie häufig schwerwiegende Sicherheitslücken ans Licht kommen. Mit anderen Worten: Sicherheitsteams können dieses Problem nicht ignorieren.
Snyks AppSec-Tools zum Finden und Beheben von Zero-Day-Schwachstellen
Mit den richtigen Tools können Teams Zero-Day-Schwachstellen gemeinsam und effizient beheben. Anwendungssicherheitslösungen wie Snyk Code, Snyk Open Source und Snyk Container unterstützen Entwicklungs- und Sicherheitsteams dabei, Zero-Day-Schwachstellen direkt nach ihrer Entdeckung zu finden und zu beheben. Snyk Insights hilft Ihrem Unternehmen außerdem, sich auf die wichtigsten Risiken zu konzentrieren und diese zu priorisieren.
Darüber hinaus ist unsere branchenführende Sicherheitsintelligenz stets auf dem neuesten Stand zu Zero-Day-Schwachstellen und anderen Bedrohungen – und bildet die Grundlage für unsere Lösungen.
Erfahren Sie mehr über unsere entwicklerorientierten AppSec-Lösungen, mit denen Sie Sicherheitsprobleme während des gesamten SDLC beheben und sich vor der nächsten Zero-Day-Schwachstelle schützen können.
Bereiten Sie sich mit Snyk auf Zero-Day-Schwachstellen vor
Erfahren Sie, wie Snyk Ihre Entwickler dabei unterstützt, Zero-Day-Schwachstellen schneller zu beheben und so die Gefährdung und das Risiko zu verringern.