Можно ли подделать $ _SERVER в PHP? - PullRequest
3 голосов
/ 10 января 2012

В PHP, удаленное включение файла может быть выполнено посредством ввода с $_GET, $_POST, $_COOKIE.Я знаю, что это маловероятно, но возможно ли (случайно) подделать значение, полученное из $_SERVER?

Я имею в виду, может ли $_SERVER стать источником включения удаленного файла даже в редких случаях

Ответы [ 2 ]

3 голосов
/ 10 января 2012

$ _ SERVER - это массив, содержащий информацию о путях, используемых для доступа к запросу, заголовках и т. Д.

Ряд значений напрямую устанавливается пользователем и управляется им (например, QUERY_STRING), поэтому он потенциально уязвимточно так же, как $ _GET и $ _POST.Это зависит от того, как вы используете эти значения в своем собственном коде.

Был ли у вас определенный индекс $ _SERVER, что вы не хотели бы подделывать?

1 голос
/ 10 января 2012

Да, в $ _SERVER можно манипулировать некоторыми значениями.

Однако LFI полагается на то, что злоумышленник может вставить ссылку на код, который должен быть выполнен и getPHP для выполнения этого кода.Если вы не намерены игнорировать все, кроме URL-адреса, отправляемого в каждом запросе (т. Е. У вас статический сайт), вы получите гораздо больше пробега, если сосредоточите свои усилия на том, как вызывается код, на который ссылается переменная.

...