Prefork-Fehlkonfiguration 95 Prozent aller Webserver anfällig für DoS

Autor / Redakteur: Tim Schughart* / Stephan Augsten

Ein Großteil der Webserver lässt sich mit wenig Aufwand in die Knie zwingen. Für den Administrator sieht es aus, als sei der Server einem DDoS (Distributed Denial of Service) zum Opfer gefallen. Dabei könnte ein einfacher Wechsel auf ein anderes Multi Processing Module schnell Abhilfe schaffen.

Anbieter zum Thema

Ein Großteil der Webserver lässt sich momentan mit Anfragen von nur einem PC vom Netz nehmen.
Ein Großteil der Webserver lässt sich momentan mit Anfragen von nur einem PC vom Netz nehmen.
(Bild: Archiv)

Ein Großteil der Webseiten ist anfällig für einen scheinbaren DDoS-Angriff. Durch die Modifikation einer „HTTP Slow Post“-Attacke und der lokalen Simulation eines Botnets gelang es dem Autor zusammen mit dem unabhängigen Sicherheitsexperten Steffen Mauer, gängige Webserver mit Anfragen zu überfluten, so dass diese nicht mehr erreichbar sind.

Netstat-Ausgabe mit unkenntlich gemachten IPs.
Netstat-Ausgabe mit unkenntlich gemachten IPs.
(Bild: ProSec Networks)
Der Exploit schickt dabei HTTP-Post-Anfragen an den Webserver und hält die Verbindungen offen. Es werden so viele Anfragen generiert, bis die Verbindungen des Webservers aufgebraucht sind und dieser keine neuen mehr zulässt.

Mithilfe der lokalen Botnetz-Simulation werden gängige Schutzmechanismen umgangen. Der Angriff lässt sich somit für das Opfer nicht von einer DDoS-Attacke unterscheiden. Aus Sicherheitsgründen werden an dieser Stelle aber keine weiteren Details genannt.

Das Problem besteht in der historischen Arbeitsweise der Webserver. In der Standardeinstellung nutzt z. B. der Apache Webserver das Multi Processing Module (MPM) „Prefork“. Dieses erstellt für jede Verbindung einen neuen Kindprozess (Child Process). In der Standardkonfiguration erlaubt der Webserver nur 150 aktive Verbindungen (Debian Wheezy, Apache Version 2.2.22).

Aufgrund des Forkings ist der Arbeitsspeicherverbrauch enorm hoch und treibt gängige Hardware schnell an Ihre Grenzen. Unter dem Kasten ein Auszug aus der Standardkonfiguration des Prefork-MPM:

<IfModule mpm_prefork_module>

MaxServers

StartServers 5

MinSpareServers 5

MaxSpareServers 10

MaxClients 150

MaxRequestsPerChild 0

</IfModule>

Erschwerend kommt hinzu, dass Apache von Haus aus keine Möglichkeit bietet, in der Konfiguration die parallelen Verbindungen zu beschränken. Der Angriff ist hauptsächlich auf Netzwerkebene zu erkennen, Apache selbst gibt im Standard Loglevel lediglich einen Eintrag mit: „Too many open connections“ aus. Die Status-Website von Apache lässt sich nicht mehr abfragen – der Administrator tappt im Dunkeln.

Ergänzendes zum Thema
Über ProSec Networks

ProSec Networks bietet professionelle und individuelle Penetrationtests an. Zudem unterstützt das Unternehmen bei der Durchführung von IT-Sicherheitskonzepten sowie deren Planung. Weitere Details finden Interessierte auf der Webseite von ProSec Networks.

(ID:43171759)