PHP Forum

PHP Forum (http://www.selfphp.de/forum/index.php)
-   PHP Grundlagen (http://www.selfphp.de/forum/forumdisplay.php?f=12)
-   -   dateiname per php ermitteln (http://www.selfphp.de/forum/showthread.php?t=17466)

Thomas H. 19.08.2007 23:40:37

dateiname per php ermitteln
 
Hi!

Wie kann ich denn herausfinden, wie der Dateiname heißt?

Bei $_SERVER['PHP_SELF'] erhalte ich ja den pfad mit...

lg
Thomas

rambi 19.08.2007 23:45:07

AW: dateiname per php ermitteln
 
PHP-Code:

echo basename($_SERVER['SCRIPT_NAME']); 

$_SERVER['PHP_SELF'] ist arg anfällig für XSS Attacken, besser nie verwenden.

Thomas H. 20.08.2007 01:29:17

AW: dateiname per php ermitteln
 
Was sind denn XXS Attacken?

z0iD 20.08.2007 02:46:40

AW: dateiname per php ermitteln
 
http://de.wikipedia.org/wiki/Cross-Site_Scripting

Thomas H. 20.08.2007 03:25:36

AW: dateiname per php ermitteln
 
danke

Aber wie kann man denn das $_SERVER['PHP_SELF'] für cross-site scripting nutzen?

thx
Thomas

z0iD 20.08.2007 04:09:36

AW: dateiname per php ermitteln
 
Das ist mir auch unverständlich :)
Vielleicht werden wir ja noch von rambi augeklärt.

rambi 20.08.2007 08:46:49

AW: dateiname per php ermitteln
 
Da scheinbar euer Google total kaputt ist ;-)
... habe ich mal für euch gesucht:
>Ergebnisse 1 - 10 von ungefähr 637 Seiten auf Deutsch für xss PHP_SELF
Hier mal, so die schönsten:
http://seclists.org/bugtraq/2007/May/0011.html
http://wiki.hackerboard.de/index.php...Site_Scripting

z0iD 20.08.2007 09:57:20

AW: dateiname per php ermitteln
 
Ah ja, jetzt seh' ich das Problem auch. Nunja letztenendes kann man Benutzer sowieso nicht vor sich selbst schützen. Damit dieser "Trick" funktioniert, muss der angegriffene Benutzer auf einen manipulierten Link klicken. Und auf der Ebene lässt sich sowieso nichts machen. Der Angreifer könnte auch einfach einen Link auf seine eigene Seite setzen (wie es auch oft gemacht wird).

Aber trotzdem kann man es ja umgehen.

rambi 20.08.2007 10:11:00

AW: dateiname per php ermitteln
 
Da in endlos vielen Tutorials, Büchern, Foren usw. PHP_SELF ungeprüft verwendet wird, macht das auch jeder Anfänger erst mal so. Als (mittlerweile) aufgeklärte Personen können wir nur dauernd sagen "tus nicht so!" (ich komme mir schon fast wie ein Papagei vor)

Hilft oft:
PHP-Code:

if($_SERVER['PHP_SELF'] !== $_SERVER['SCRIPT_NAME']) 
    die(
'Vorsicht: XSS Attacke erkannt!!'); 

Leider scheint auf manchen Systemen auch $_SERVER['SCRIPT_NAME'] für Manipulationen anfällig zu sein

z0iD 20.08.2007 10:17:22

AW: dateiname per php ermitteln
 
Um auf Deine Eingangsfrage einzugehen; Möglicherweise schafft ein gescheit gewählter Regulärer Ausdruck abhilfe. Es muss einfach alles nach dem Dateinamen abgeschnitten werden.

Alternativ:
Jede Datei initialisiert als erstes eine Konstante in der der Name drinsteht. Die nachfolgenden Aufrufe anderer Dateien können jene Konstante nicht überschreiben, sodass sie den Dateinamen der ursprünglich aufgerufenen Datei enthält.
Eventuell sollte man dem define ein @ voranstellen.


Alle Zeitangaben in WEZ +2. Es ist jetzt 16:54:23 Uhr.

Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.