phpbar.de logo

Mailinglisten-Archive

[php] Dynamisches Web

[php] Dynamisches Web

Matthias Pigulla mp_(at)_webfactory.de
Mon, 17 May 1999 17:46:38 +0200


Kristian Köhntopp wrote:
> Vertrauenswürdigkeit überprüft hat, d.h. wenn es die Werte
> dekontaminiert hat. Tut es das nicht -> Sicherheitsloch.

Lol, "dekontaminieren" ist gut ;-) Keine Angst, als CGI -mit-C-Veteran
bin ich da hyperempfindlich und habe natürlich dran gedacht :)

1) Für die ganzen LOV-Sachen habe ich hier vor einiger Zeit eine
Funktion gepostet; die nimmt einen Wert, der übers Web kam (egal, ob es
ein Array oder nur ein "einfacher" Wert ist), sowie eine Liste mit
erlaubten Werten. Sie filtert dann, und gibt nur die n (Parameter)
ersten Werte zurück, die in der Vorgabe-Liste, die ja intern = sicher
ist, auftauchen.

2) Das mit dem Pfad ist kein Problem, ich habe das durchgetestet. Sowas
wie http://www.domain.de/pfad/bla/../sonstwas => kommt schon als
/pfad/sonstwas im Skript an. Alles, was mit .. über das
Toplevel-Verzeichnis hinausgeht, wird vom Server mit Fehlermeldung
quittiert. Außerdem habe ich auch probiert, die '.' und '/' als
Form-urlencoded zu "verstecken". Und es kommt ja hoffentlich keiner auf
die Idee, mit Symlinks irgendwie aus dem htdocs-Verzeichnis
rauszureferenzieren? -> Am besten im Apache auch gleich abschalten.

Zusätzlich habe ich meinen Apache so konfiguriert, daß mit einer
<Directory />-Direktive grundsätzlich erstmal "überall" alles
abgeschaltet wird. Alles unterhalb vom htdocs wird dann sukzessive
wieder eingeschaltet.

Das Problem taucht eher da auf, wenn Du z. B. einen x-beliebigen Wert
aus einem Form nimmst und 
in PHP damit eine Datei öffnest. Dann hat der Server ja auch keinen
Einfluß mehr drauf.

Trotzdem schön, daß hier mal deutlich auf sowas hingewiesen wird ;-)

Matthias
-- 
   w e b f a c t o r y | matthias pigulla
      www.webfactory.de  mp_(at)_webfactory.de




php::bar PHP Wiki   -   Listenarchive