Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   Песочница (https://forum.antichat.xyz/forumdisplay.php?f=189)
-   -   Вопрос по include (https://forum.antichat.xyz/showthread.php?t=475095)

form1234 12.01.2020 23:54

Есть такой код:

Код:

Code:
$file = 'bla_' . $_GET['getvar']. '.php';
if(!file_exists($file){ exit;}
include    $file;

Так же можно загрузить на сервер файл php имя менять не могу - только расширение. В папке где загрузка выполнение запрещено.

Так вот есть подать на вход скрипта getvar=/../../../upldir/myfilename

проверяю на локальной машине - проверку file_exists - не проходит. видиом из за несуществующего каталога /bla_

при этом есть эту строчку с проверкой удалить то include срабатывает. - проверку никак обойти не получится?

crlf 13.01.2020 15:38

Цитата:

Сообщение от form1234
form1234 said:

Есть такой код

Не обходится.

form1234 15.01.2020 00:13

Есть еще вот такой:

PHP код:

PHP:
[
COLOR="#000000"][COLOR="#0000BB"]$file[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]$_GET[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'getvar1'[/COLOR][COLOR="#007700"]].[/COLOR][COLOR="#DD0000"]'n1_'[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#0000BB"]$_GET[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'getvar2'[/COLOR][COLOR="#007700"]] .[/COLOR][COLOR="#DD0000"]'.n2.php'[/COLOR][COLOR="#007700"];
if(![/
COLOR][COLOR="#0000BB"]file_exists[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$file[/COLOR][COLOR="#007700"])){exit;}
include([/
COLOR][COLOR="#0000BB"]$file[/COLOR][COLOR="#007700"]);[/COLOR][/COLOR

Удаленный include не проверял - но скорее всего запрещено.

Поидее тут null byte можно пробовать? или переполенние макс. количества символов в $file.

Версия php не известна но скорее всего она

Baskin-Robbins 15.01.2020 00:17

Цитата:

Сообщение от form1234
form1234 said:

Других вариантов вродебы нет да?

в таком случае возможно поможет это

/threads/337994/

crlf 15.01.2020 12:33

И это https://antichat.com/threads/471183/


Время: 00:40