Задать вопрос
@therealvetalhidden

Фильтрация входных данных, хочу уточнить, как лучше?

Например у меня в коде есть такая строка $req = $_SERVER['REQUEST_URI']; переменная только в коде, в бд не записывается. Вопрос нужно как-то фильтровать такого рода входные данные как $_SERVER['REQUEST_URI'], которые в бд не записываются а только нужны в коде? Если не фильтровать такие входные данные, то есть ли какая нибудь угроза безопасности?
  • Вопрос задан
  • 2420 просмотров
Подписаться 2 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 3
@Sali_cat
Что бы не парится, создай 1н способ фильтрации и пропускай через него.
Очищай полученные данные от скриптов и опасных символов, задавай ограничение на кол-во символов. Так-то про это можно долго писать + есть сетевые атаки и подделка .. кое как спасет токен и двух сторонние ключи.
Ответ написан
nazarpc
@nazarpc
Open Source enthusiast
Кратко - да.
Долго - зависит от использования. Если на основании значения вы динамически подключаете файлы, или выводите значение на страницу - то да, если же проверяете, например, регуляркой на наличие там какой-то подстроки, то можно и не проверять.
Фильтровать нужно всё, что участвует в выводе на страницу, ну и эскейпить строки при вставке в БД.
Ответ написан
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
Нужно фильтровать перед использованием. И фильтровать нужно всегда. Вопрос только как используются данные.

Для БД - prepared statements решают проблему фильтрации целиком и полностью
Для eval/exec нужно уже придумывать как фильтровать, проще вообще не использовать переменные полученные от пользователя для eval/exec.
Для фильтрации от XSS нужно чистить при выводе переменной.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
IT ATLAS Москва
от 250 000 до 500 000 ₽