Raketenwilli: Ein paar Einträge in die apache access.log bereiten mir Kopfzerbrechen

Beitrag lesen

In der httpd.conf steht:

# Fancy directory listings
Include conf/extra/httpd-autoindex.conf

Und in httpd-autoindex.conf steht

# We include the /icons/ alias for FancyIndexed directory listings.  If
# you do not use FancyIndexing, you may comment this out.
#
Alias /icons/ "${SRVROOT}/icons/"

Directory Listings verhindert eigentlich jeder, und trotzdem ist dieser Alias für Icons fast überall aktiv.

Also: icons ist ein Ordner der Apache Installation, und ein falsch programmiertes System würde, wenn es erstmal in icons Ordner ist, mit ".." nach ${SRVROOT} kommen - dem Apache Installationsordner. Und wenn dieser Weg offen ist, hat man de facto Leserecht auf den ganzen Server.

Ich nehme an, dass diese Lücke früher mal bestand und aktuelle Indianer Dir eins mit dem Tomahawk geben, wenn Du den Exploit versuchst.

Also wenn es je so gewesen wäre, dann hätte jemand an einem Teil der Apache-Konfiguration herumgepfuscht, der dort WIRKLICH keine Schreibrechte haben sollte:

# Sets the default security model of the Apache2 HTTPD server. It does
# not allow access to the root filesystem outside of /usr/share and /var/www.
# The former is used by web applications packaged in Debian,
# the latter may be used for local directories served by the web server. If
# your system is serving content from a sub-directory in /srv you must allow
# access here, or in any related virtual host.
<Directory />
        Options FollowSymLinks
        AllowOverride None
        ### Vormals:
        #deny from all
        ### Seit Apache 2.3
        Require all denied
</Directory>

(Ich hab das Original um drei Zeilen mit Kommentar bezüglich alter Versionen ergänzt.)

Das verbietet dem Apache erst einmal Zeug auszuliefern, welches auch nur irgendwo im System liegt. Später wird es dann für bestimmte Verzeichnisse wieder erlaubt, aber mit einer Angabe von /../ in der URL kommt man aus diesen nicht raus. Auch nicht mit einem Alias. Es sei denn der zeigt auf etwas explizit Erlaubtes.