Насколько злой $ _REQUEST и каковы некоторые приемлемые Временные контрмеры?

Хорошо, я нашел ответ здесь:

https://www.christianengvall.se/electron-installer-debian-package/

9
задан Community 23 May 2017 в 12:33
поделиться

4 ответа

Просто рассматривайте его, как это: метод для получения данных от пользователя. Это должно быть санировано и проверено, итак, почему необходимо заботиться, прибыло ли это в форме POST, ПОЛУЧЕНИЯ или cookie? Они все прибывают от пользователя, так высказывание, 'они могут имитироваться!' является лишним.

6
ответ дан 4 December 2019 в 13:05
поделиться

$ _REQUEST является злом как $ _GET, $ _POST и $ _COOKIE. В то время как я думаю, что существуют действительные сценарии для использования $ _REQUEST, но существует одно серьезное основание, не используя $ _REQUEST, и маркируйте его как "плохую практику".

Главная причина с помощью $ _REQUEST состоит в том, что параметр может быть передан в $ _POST или $ _GET. Путем доступа к $ _REQUEST Вы не должны проверять и $ _GET и $ _POST это, значение установлено. Проблема состоит в том, что ini, устанавливающий gpc_order, может изменить поведение, как $ _REQUEST является сборкой. Эта установка может отличаться с сервера на сервер, и Вы пишете сценарий, может изменить поведение.

5
ответ дан 4 December 2019 в 13:05
поделиться

$_REQUEST проблематично, потому что это игнорирует различие между URL ($_GET) и тело запроса ($_POST). Запрос HTTP-GET должен быть без побочных эффектов, в то время как HTTP-POST может иметь побочные эффекты и таким образом не может кэшироваться. При броске этих очень отличающихся источников данных в один блок, призывает к приложениям, которые являются неуспокоительными, который должен сказать неработающие приложения.

5
ответ дан 4 December 2019 в 13:05
поделиться

Его уязвимое для чего-либо передало URL. Таким образом, если форма содержала скрытое поле с "идентификатором пользователя", который был отправлен с формой, хотя в теории пользователь не может отредактировать его, нет ничего останавливающего их, изменяют значение, если сильно желающий достаточно.

Если Вы просто хотите получить значение от запроса, это прекрасно, но необходимо знать, что это может имитироваться, таким образом, необходимо действовать соответственно и конечно не использовать его для безопасных param/value данных.

0
ответ дан 4 December 2019 в 13:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: