Samstag, 4. Februar 2012 |
Die in About Security #207 beschriebenen Angriffe sind ein aktuelles Beispiel, wie ein Angreifer eine gerade erst entdeckte Schwachstelle ausnutzen kann, bevor sie beim Opfer überhaupt bekannt ist.
Wie schützt man sich vor Angriffen auf solche Schwachstellen? Im
Prinzip klingt das unmöglich - wie soll man sich vor etwas
schützen, das man gar nicht kennt? In About Security
#206
wurden einige Möglichkeiten beschrieben, wie eine Identifizierung des
Webservers zumindest erschwert wird. Das "nicht erkannt werden" bietet aber
keinen wirksamen Schutz und ähnelt mehr dem
Sankt-Florian-Prinzip:
"Lieber Angreifer, lass meinen Webserver in Ruhe und greif die an, die
Du leichter erkennen kannst!" Das klappt vielleicht bei Angreifern,
die es nur auf irgend einen Server abgesehen haben, ist aber wirkungslos,
wenn der eigene Server bereits als Ziel auserkoren wurde und es nur noch um
das "wie kommt man rein" geht. Die in About Security
#207
beschriebenen Angriffe funktionieren unabhängig davon, ob sich der
Server korrekt als ein betroffener IIS-Server oder z.B. als
"Plattfußindianer 1,314 auf PDP/11" identifiziert. Ist
die Schwachstelle vorhanden, kann sie auch ausgenutzt werden. Im
Zweifelsfall kann der Angreifer also einfach eine Reihe von Exploits
für verschiedene Webserver ausprobieren, irgend einer davon wird schon
funktionieren.
Wenn verstecken nicht hilft, hilft "sich klein machen" auch nicht, jedenfalls im Kinderspiel. Bei Webservern sieht das etwas anders aus. "Klein machen" bedeutet in diesem Fall, nur die wirklich verwendeten Funktionen zu aktivieren und nur die dafür wirklich benötigten Erweiterungen zu installieren. Um zum Beispiel aus About Security #207 zurück zu kommen: Die Schwachstelle kann nur ausgenutzt werden, wenn WebDAV aktiviert ist. Dabei gibt es drei Möglichkeiten:
Wie man am dritten Punkt sieht, trägt das Deaktivieren nicht genutzter Funktionen und Erweiterungen sehr zur Sicherheit des Webservers bei: Es reduziert die Angriffsfläche auf das zum Betrieb notwendige Minimum. Jede nicht benötigte Funktion oder Erweiterung kann einem Angreifer helfen, während man selbst nichts davon hat.
Während das "Tarnen" des Webservers nur vor zufälligen Angriffen "schützt", ist das Deaktivieren bzw. Deinstallieren nicht benötigter Funktionen und Erweiterungen ein effektiver Schutz auch vor gezielten Angriffen auf/über Schwachstellen darin.
Aber was ist mit Angriffen auf die benötigten Funktionen und Erweiterungen? Außer der sicheren Konfiguration des Webservers, um die es später noch geht, gibt es dafür nur eine Lösung: Man muss ständig über neu entdeckte Schwachstellen informiert sein, um mögliche Workarounds umzusetzen oder vorhandene Patches zu installieren, bevor ein Angreifer die Schwachstellen ausnutzen kann
... ist nicht vollständig möglich. Es besteht immer die Möglichkeit, das Opfer einer bisher nicht bekannten Schwachstelle zu werden. Aber realistisch betrachtet, ist die Gefahr für einen normalen Webserver sehr gering. Es gibt sehr viele Webserver, aber nur sehr wenige 0-Day-Exploits. Und nach den ersten paar Einsätzen sickert ein 0-Day-Exploit durch, und die Schwachstelle wird bekannt. Sofern man nicht gerade einen aus welchen Gründen auch immer für einen Angreifer mit einem 0-Day-Exploit besonders interessanten Webserver betreibt, wird man kaum das erste Opfer einer 0-Day-Schwachstelle werden. Und vor bereits bekannten Angriffe kann man sich schützen. Dazu muss man sich regelmäßig über neu gefundene Schwachstellen in der eingesetzten Software informieren. Dazu dienen die bereits in About Security #207 aufgeführten Informationsquellen:
Wird in der selbst eingesetzten Software eine Schwachstelle gemeldet, gilt es, einen Angriff darüber zu verhindern. Wie, ist ein Thema der nächsten Folge, in der auch weitere Angriffe vorgestellt werden.
Wenn Sie Fragen oder Themenvorschläge haben, können Sie diese gerne an die angegebene E-Mail-Adresse senden oder im Security-Forum einbringen!