Zum Hauptinhalt Zur Navigation

PHPs open_basedir-Gefängnis ist nicht sicher

Hardened-PHP-Projekt weist auf Designfehler hin. Stefan Esser warnt vor einem Fehler in der Scriptsprache PHP, mit der Nutzer auf Shared-Webhosting-Accounts aus ihrem "Verzeichnis-Gefängnis" ausbrechen können. Eigentlich soll über die Einstellung "open_basedir" verhindert werden, dass Nutzer auf solchen Maschinen außerhalb des ihnen zugedachten Verzeichnisses Dateien lesen und schreiben können, doch offenbar gibt es einen einfachen Weg dies zu umgehen.
/ Jens Ihlenfeld
Kommentare News folgen (öffnet im neuen Fenster)

Esser, der unter anderem Mitglied im Hardened-PHP-Projekt ist, spricht von einem Design-Fehler, der sich über PHPs symlink()-Funktion ausnutzen lässt. Derzeit sei der einzige Ausweg, die Nutzung von symlink() zu deaktivieren, so lange open_basedir genutzt wird.

Das eigentliche Problem lasse sich nicht ohne weiteres lösen, da es durch die Art und Weise, wie PHP mit dem Öffnen von Dateien und der Einbindung externer Funktionen umgeht, zu tun hat, so Esser. Dabei bleibt eine kurze Zeitspanne die genutzt werden kann, um die Einschränkungen zu umgehen.

Die Details des Problems beschreibt Stefan Esser in einem Security-Advisory: PHP open_basedir Race Condition Vulnerability(öffnet im neuen Fenster) .


Relevante Themen