Wenn du nicht zu jenen Nutzern gehörst, die sich Stundenlang mit Artikeln über Computersicherheit beschäftigen, sind dir so manche Begriffe vermutlich nicht ganz geläufig. Vor allem bei dem Begriff Zero Day werde ich häufig um eine Erklärung gebeten. Also lasst uns schauen, was er bedeutet.
Bei ESET definieren wir Zero Day als
Eine neuartige, nicht reparierte Sicherheitslücke, die im Zuge eines Angriffs ausgenutzt wird. Der Name Zero Day (Null Tage) ist auf die Tatsache zurückzuführen, dass bislang kein Patch existiert, durch den die Ausnutzung einer Schwachstelle verhindert wird. Zero Days werden manchmal eingesetzt, um Trojaner, Rootkits, Viren, Würmer und andere Arten von Malware zu verbreiten und zusätzliche Computer zu infizieren. (Quelle: ESET Virus Radar Glossary).
Bevor wir uns nun aber eingehend damit beschäftigen, was das genau bedeutet, sollten wir uns im Klaren sein, was hinter den Begriffen „Sicherheitslücke“ bzw. „Schwachstelle“ und „Exploit“ steckt.
Wir weben ein wirres Netz
Stell dir Computer-Software wie eine Art Fliegengitter vor. Sie enthält mehrere Millionen Stränge an Code, die miteinander verwoben sind. Der Unterschied ist allerdings, dass die einzelnen Stränge im Falle der Software nicht so ordentlich und übersichtlich ineinandergreifen – man muss sie sich eher wie einen Teller mit Spaghetti vorstellen. Während eine kaputte Stelle im Fliegengitter relativ schnell auffällt, ist es bei der Software um einiges komplizierter, Schwächen im Code zu finden. Selbst automatisierte Prüf-Methoden haben manchmal ihre Schwierigkeiten bei der Analyse.
Im Grunde kann man es herunterbrechen auf die Tatsache, dass Software von Menschen geschrieben wird. Menschen sind fehlbar und bedenken nicht immer alle Möglichkeiten, wie ein Code genutzt werden könnte. Hierdurch entstehen Schwachstellen in dem Netz, die dann entdeckt werden können – ob durch eine gründliche Untersuchung oder aus Versehen. Diese Schwächen im Netz nennen wir eine Sicherheitslücke oder Schwachstelle in der Software.
Besteht so eine Sicherheitslücke, kann diese Schwäche zu ungewöhnlichem Verhalten in einem Programm führen. Und dies kann von Angreifern genutzt werden, um ein Einfallstor zu schaffen und auf einer Maschine mit dieser Schwachstelle schädlichen Code auszuführen. Manchmal führt das ungewöhnliche Verhalten lediglich zu einem Systemabsturz. Je nach Schwachstelle gibt es viele verschiedene Szenarien. Der Code, der verwendet wird, um das Einfallstor zu schaffen oder einen Systemabsturz zu provozieren, nutzt also die Sicherheitslücke aus. Deshalb wird so ein Code auch Exploit genannt (von Englisch „exploit“ – ausnutzen).
Null Tage?
Da wir nun die Begriffe „Sicherheitslücke“ und „Exploit“ geklärt haben, kommen wir nun zu Zero Day und der Frage, was die „null Tage“ zu bedeuten haben. Hiermit wird darauf verwiesen, dass der Software-Anbieter keine Zeit hatte, die Schwachstelle zu reparieren. Das heißt, dass für Nutzer kein Update verfügbar ist, mit dem das Problem behoben wird.
Im Idealfall wird die Schwachstelle von einem Researcher entdeckt, der im Sinne der Öffentlichkeit handelt und den entsprechenden Software-Hersteller informiert. Dieser kann dann das Problem beheben, bevor jemand zu Schaden kommt. In der Realität sind es aber leider häufig Malware-Autoren, die eine Sicherheitslücke entdecken. In diesem Fall sind die Folgen für die Nutzer der Software natürlich problematischer, vor allem, weil die Angreifer ihre Informationen über eine Schwachstelle den Herstellern in der Regel natürlich nicht mitteilen, um sie so lang wie möglich für ihre Zwecke ausnutzen zu können. Dann bekommt der Hersteller das Problem erst mit, wenn ein Researcher ein Sample der Bedrohung findet, mit der die Schwachstelle ausgenutzt wird. So ist es bei drei kürzlich bekannt gewordenen Adobe-Schwachstellen geschehen.
Darüber hinaus möchte ich darauf hinweisen, dass die Bereitstellung eines Patches nicht zwangsläufig bedeutet, dass Angreifer aufhören, die entsprechende Schwachstelle auszunutzen. Sie wissen nämlich, dass es genügend Anwender gibt, die die Updates zum Teil Tage, Wochen oder sogar Monate lang nicht installieren. Und solange ein Exploit noch Erfolg verspricht, werden sie ihn auch nutzen.
Auf den Punkt gebracht, wird mit Zero Day also ein Problem beschrieben, das noch nicht behoben wurde. Sie sind auch ein Grund dafür, dass wir Nutzern raten, auf einen mehrschichtigen Schutz zu setzen. Man kann nie wissen, wann ein solches Problem auftaucht, aber wenn man sich bei der Sicherheit des Systems nicht nur auf eine Software oder eine Technologie verlässt, ist die Wahrscheinlichkeit, unbeschadet davon zu kommen, um einiges höher. Und je früher Nutzer Updates und Patches installieren, desto geringer auch das Risiko, über eine Schwachstelle angegriffen zu werden.