phpbar.de logo

Mailinglisten-Archive

[php] Dynamisches Web

[php] Dynamisches Web

Kristian =?iso-8859-1?Q?K=F6hntopp?= kk_(at)_netuse.de
Mon, 17 May 1999 12:19:50 +0200


Christian von Toerne wrote:
> Würde mich mal interessieren, wie ihr das macht. Ich 
> werte $HTTP_REFERER aus und gucke nach, ob die absendende 
> Seite bei mir auf dem Rechner lag. Wenn das
> der Fall ist, nehme ich die Werte, sonst nicht.

Es ist total Wurst, wo Deine Parameter herkommen. 

Es geht darum, ob sie clean sind. Wenn Du also einen Eingabewert
$land erwartest, der aus einer LOV (list of values) stammt, dann
muß Du überprüfen, ob der Eingabewert wirklich ein Element der
LOV ist oder irgendwas anderes. Wenn Du einen Parameter $path
erwartest, der als Pfadname auf ein fopen() angewendet werden
soll, dann mußt Du überprüfen, ob der Pfadname nur harmlose
Komponenten enthält (also z.B. keine ".." oder ähnlichen Unsinn).

> Ich vermute aber (leider), daß es nicht schwer ist, den 
> Referer zu spoofen.

Es ist dann doc so schwer:

$ telnet kris.shonline.de 80
Trying 194.172.236.12...
Connected to telekom.shonline.de.
Escape character is '^]'.
GET /refer.php3 80
Host: kris.shonline.de
Referer: /source.php3

HTTP/1.1 200 OK
Date: Mon, 17 May 1999 10:16:35 GMT
Server: Apache/1.2.6 Ben-SSL/1.16
Connection: close
Content-Type: text/html

/source.php3
Connection closed by foreign host.

$ cat refer.php3
<?php
  print $HTTP_REFERER
 ?>

Kristian

-- 
Kristian Köhntopp, NetUSE Kommunikationstechnologie GmbH
Siemenswall, D-24107 Kiel, Germany, +49 431 386 436 00
Using PHP3? See our web development library at
http://phplib.shonline.de/ (GPL)


php::bar PHP Wiki   -   Listenarchive