Webserver-Sicherheitslücke: Heikle Konfigurations- und Statusdaten publiziert

Fehlkonfigurierte Webserver von Bundesbehörden und IT-Firmen präsentierten Besucher-IPs, Benutzernamen, Meeting-Kennungen und mehr offen im Internet.

In Pocket speichern vorlesen Druckansicht 52 Kommentare lesen

(Bild: asharkyu/Shutterstock.com)

Lesezeit: 6 Min.
Inhaltsverzeichnis

Um Server zu debuggen und zu überwachen, ist es nützlich, Konfigurations- und Statusinformationen einfach abrufen zu können. Das geht leicht schief, wie weit verbreitete Konfigurationsfehler belegen. Der bekannte Webserver Apache bietet unter anderem die Module mod_info und mod_status an. Beide stellen HTML-Seiten bereit, die allerlei Daten über den Server anzeigen und standardmäßig unter den Pfaden /server-info und /server-status zu erreichen sind.

Seit Jahren kommt es immer wieder zu Fällen, in denen Server falsch konfiguriert sind und die Seiten dieser Module unabsichtlich veröffentlicht werden. Das ist aber kein lässliches Kavaliersdelikt, das nur dröge Verwaltungsdaten betrifft. Konkrete Nachforschungen fördern oft sensible Information zutage, etwa Links, die unberechtigte Downloads erlauben, oder Kennungen, die Zugang zu internen Meetings verschaffen.

Das IT-Sicherheitsunternehmen "Deutsche Gesellschaft für Cybersicherheit" wollte sich ein Bild der Lage verschaffen und hat alle .de-Domains systematisch gescannt. Das Ergebnis war verheerend. Die Fachleute fanden mehr als 70.000 Domains, die Informationen von mod_info oder mod_status veröffentlichten. Um der Problematik mehr Aufmerksamkeit zu verschaffen, wandten sie sich an c’t.

Die Liste enthält Systeme verschiedenster Betreiber. Stichproben fanden alles – von privaten Homepages über kommunale Webseiten bis zu Servern großer Organisationen: Banken, IT-Firmen wie AVM oder G Data, das Bundesfinanzministerium und sogar CERT-Bund, das "Computer-Notfallteam des BSI", finden sich in der Liste.

Dass die Fehlkonfigurationen so verbreitet sind, ist auf den ersten Blick verwunderlich. Die Apache-Dokumentation warnt davor, dass die beiden Module sicherheitsrelevante Auswirkungen haben können, und gibt auch Beispiele, die Zugriffe auf diese Module einschränken. Für das Server-Status-Modul sieht das etwa so aus:

<Location "/server-status">
    SetHandler server-status
    Require local
</Location>

Die Direktive Require local erzwingt, dass nur Anfragen, die vom Server selbst kommen, beantwortet werden. Allerdings ergeben sich unter Umständen zwei Folgeprobleme, die viele Admins offenbar nicht im Auge haben: Zum einen befinden sich Webserver häufig hinter einem Loadbalancer oder einem anderen vorgeschalteten System, das oft auf der gleichen Maschine läuft. Aus Sicht des Webservers kommen dann aber alle Anfragen von der eigenen Maschine und entsprechend bekommt auch jedermann Zugriff auf die Status- und Infoseiten.

Die Apache-Dokumentation warnt mehrfach und deutlich vor den Problemen. Gelesen wird sie anscheinend zu selten.

Das andere Problem ist, dass sich Apache-Server ihre Konfiguration aus verschiedenen Quellen zusammensammeln, die einander kompliziert überlagern und ergänzen können. Eine Require-Anweisung an einer Stelle wird dadurch leicht mit einer anderen, die mehr Zugriff erlaubt, kombiniert und der Schutz wirkungslos.

Mehr Infos

c’t 26/2020

Dieser Artikel stammt aus c’t 26/2020. Darin hat die Redaktion den Bausatz für das c’t-Notfall-Windows aktualisiert, mit dem Sie einen bootfähigen USB-Stick erzeugen können, um Daten zu retten, Viren zu jagen oder Bootprobleme zu lösen. Außerdem gibt es einen Test aktueller High-End-Smartphones, spannender Fitness-Tracker und Streaming-Sticks zum nach- und aufrüsten von TV-Funktionen. Dazu gibt es weitere Tests, jede Menge Praxis und eine ganze Ladung voller Tipps zur Heimnetz-Verkabelung. c't 26/2020 ist ab sofort im Heise-Shop und am gut sortierten Zeitschriftenkiosk erhältlich.