You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users-de@httpd.apache.org by Jens Schwehn <sc...@st-oneline.net> on 2007/01/16 16:02:47 UTC
Re: Amoklaufendes Script finden [Teilloesung]
Jens Schwehn wrote:
Also ein kleines vorläufiges Ergebnis, die Idee mit dem Wrapper ist
recht gut und scheint soweit auch zu funktionieren. Ich habe das auf
einem kleinen Testsystem soweit getestet und mir sind folgende Probleme
aufgefallen
* PHP läuft als Apache Module, somit wird die Umgebungsvariablen
nicht angepasst, wie es bei der CGI Variante der Fall wäre.
Um diesem Manko zu beheben kann man mittels "auto_prepend_file"
Parameter in der php.ini für jedes PHP Script die entsprechenden
Umgebungsvariablen setzten
<?php
putenv('HTTP_HOST=' .$_SERVER['HTTP_HOST']);
putenv('SCRIPT_NAME=' .$_SERVER['SCRIPT_NAME']);
putenv('REMOTE_ADDR=' .$_SERVER['REMOTE_ADDR']);
putenv('REMOTE_PORT=' .$_SERVER['REMOTE_PORT']);
putenv('HTTP_USER_AGENT='.$_SERVER['HTTP_USER_AGENT']);
?>
Diese können dann mit einem kleinen Wrapper ausgewertet und geloggt werden.
Aber, auch hier bin ich auf kleine Hürden gestossen:
* aktiver safe_mode verhindert das Manipulieren der
Umgebungsvariablen. Das kann in der php.ini mit dem
Parameter "safe_mode_allowed_env_vars" anpassen.
* "base_dir" Einschränkung - das Script per Hardlink in ein
Verzeichnis linken, dass von dem entsprechenden VHost zu erreichen
und zu lesen ist. Ob es geht, das Script auch in include Pfad zu
legen habe ich noch nicht getestet.
Den interessanten Teil kann ich noch nicht testen - irgendwie nehmen
die Kunden es einem Übel, wenn man deren Webserver mitten am Tag
rumdoktert ;). Ich werde heute Nacht das in aller Ruhe testen und
berichten ob und wie es geklappt hat.
Schon mal vielen Dank, für die Hilfen und die Anregungen.
--
Mit freundlichen Grüßen
Jens Schwehn
ASP - Anwendungsentwicklung
ST-oneline GmbH
Hovesaatstr. 6, D-48432 Rheine
Tel. +49 5971 80825-5, Fax: +49 5971 80825-79
eMail: info@st-oneline.net
WEB: http://www.st-oneline.net
--------------------------------------------------------------------------
Apache HTTP Server Mailing List "users-de"
unsubscribe-Anfragen an users-de-unsubscribe@httpd.apache.org
sonstige Anfragen an users-de-help@httpd.apache.org
--------------------------------------------------------------------------