Apache Webserver: "Optionsbleed"-Bug legt Speicherinhalte offen
Bestimmte Konfigurationen in der .htaccess-Datei können dazu führen, dass Apache-Server als Antwort auf OPTIONS-Anfragen vertrauliche Daten preisgeben. Ein Patch steht bereit.
Apache-Admins sollten die Konfiguration ihrer Webserver – oder genauer: den Inhalt der darauf befindlichen .htaccess-Dateien – überprüfen. Ein auf den Namen Optionsbleed getaufter Bug kann dafür sorgen, dass Server auf eine bestimmte Anfrage zufällige Speicherinhalte im Antwort-Header zurücksenden. Theoretisch könnten sich darunter auch Codefragmente, Passwörter oder andere vertrauliche Informationen befinden.
Ob Optionsbleed tatsächlich auftritt, hängt davon ab, ob in der .htaccess die "Limit"-Direktive auf eine bestimmte Weise verwendet wird. Für gewöhnlich beschränkt man mit Limit die Nutzung bestimmter HTTP-Methoden für spezifische Nutzer. Wird dies nun für HTTP-Methoden versucht, die dem Server (noch) nicht bekannt sind, kommt es zu Fehlern bei der Speicherverwaltung. Diese können im nächsten Schritt mittels einer OPTIONS-Anfrage ausgenutzt werden. Für gewöhnlich sendet der Server darauf einen Allow-Header nebst einer Liste der von ihm unterstützten Methoden zurück. Dank Optionsbleed enthält besagter Header jedoch zufällige auf dem Server befindliche Strings.
Die Schwachstelle mit der Kennung CVE-2017-9798 stellt vor allem in Shared-Hosting-Umgebungen eine Gefahr dar: Hier reicht eine einzige fehlerhafte .htaccess-Datei, damit alle virtuellen Hosts auf dem Server korrupte Allow-Header versenden. Der Entdecker von Optionsbleed weist allerdings darauf hin, dass der Fehler nicht ganz leicht zu reproduzieren sei. Scheinbar tauche er nur auf stark ausgelasteten Systemen und häufig erst nach mehreren Anfragen auf.
Im Subversion-Repository von Apache gibt es einen Patch für die Lücke. Zusätzlich sollten Admins nach Aktualisierungen für ihre Distribution suchen – unter anderem wurden Gentoo, NetBSD/pkgsrc, Arch Linux und Slackware mit Optionsbleed-Updates versehen.
Weitere Informationen stehen im Blog des Optionsbleed-Entdeckers Hanno Böck bereit.
[Update 19.9.2017, 17:13]: Hanno Böck wies nachträglich darauf hin, dass der Bug in Wirklichkeit bereits 2014 in einem Whitepaper beschrieben wurde, damals jedoch unbeachtet (und ungefixt) blieb. (ovw)