Stabsstelle Informationssicherheit der
Universität Stuttgart (RUS-CERT)
https://cert.uni-stuttgart.de
logo
Meldung Nr: RUS-CERT-692

[Generic/PHP] "Safe Mode" hält nicht, was er verspricht
(2002-02-08 07:06:56+00)

Quelle: http://cert.uni-stuttgart.de/archive/bugtraq/2002/02/msg00038.html

Die Sandbox-Funktion von PHP (Safe Mode) ist konzeptionell unsicher.

Betroffene Systeme

Einfallstor
Die Möglichkeit, PHP-Skripte auf den Webserver zu übertragen und zur Ausführung zu bringen.

Auswirkung
Es können Daten ausgelesen werden, auf die im Safe Mode eigentlich kein Zugriff möglich sein sollte. Eventuell kann auch beliebiger Code ohne die Safe Mode-Einschränkungen ausgeführt werden.

Typ der Verwundbarkeit
design flaw

Gefahrenpotential
mittel bis hoch (falls PHP-Skripte aus wenig vertrauenswürdiger Quelle auf dem Server ausgeführt werden sollen).
(Hinweise zur Einstufung des Gefahrenpotentials.)

Beschreibung
PHP stellt einen sogenannten Safe Mode zur Verfügung, durch den PHP-Skripte in einer Art Sandbox ausgeführt werden. Es ist dabei vorgesehen, daß die Skripte nur auf bestimmte Ressourcen zugreifen können, und daß ihnen beispielsweise der Zugriff auf beliebige Dateien verwehrt wird. Den zahlreichen Zusatz-Modulen für PHP (z.B. zum MySQL-Datenbankzugriff) ist ein solcher Safe Mode jedoch fremd, so daß über diese Zusatzmodule mitunter beliebige Dateien ausgelesen werden können. Demonstriert wurde dies für die MySQL-Datenbankzugriffsfunktionen.

Diese Problematik betrifft nur Anwender des Safe Mode, beispielsweise wenn mehrere Kunden sich einen Server teilen und durch die PHP-Sandbox voneinander getrennt werden sollen.

Gegenmaßnahmen
Es handelt sich hierbei um ein konzeptionelles Problem: Die meisten Bibliotheken und Dienste, die von PHP-Skripten genutzt werden können, kennen kein Safe Mode. PHP kann daher keinen sicheren Safe Mode implementieren, wenn diese Funktionalität durch PHP-Skripte genutzt werden kann.

Das konkrete Problem im MySQL-Modul läßt sich sicherlich beheben, aber es ist damit zu rechnen, daß weitere, ähnliche Probleme immer wieder entdeckt werden.

Zur Eindämmung der Zugriffsmöglichkeiten von PHP-Skripten kommen somit nur Maximallösungen wie der Betrieb in dedizierten virtuellen Maschinen in Frage.

(fw)

Hinweis
Die in diesem Text enthaltene Information wurde für die Mitglieder der Universität Stuttgart recherchiert und zusammengestellt. Die Universität Stuttgart übernimmt keinerlei Haftung für die Inhalte. Dieser Artikel darf ausschließlich in unveränderter Form und nur zusammen mit diesem Hinweis sowie dem folgenden Copyrightverweis veröffentlicht werden. Eine Veröffentlichung unter diesen Bedingungen an anderer Stelle ist ausdrücklich gestattet.

Copyright © 2022 RUS-CERT, Universität Stuttgart, https://cert.uni-stuttgart.de/


https://cert.uni-stuttgart.de/ticker/article.php?mid=692