Да. Да, вам нужно очистить данные. Sort-из.
Это действительно один из основных принципов безопасности на работе: Filter In, Escape Out . В основном:
Фильтр
Всегда фильтруйте данные, поступающие в ваше приложение. Что это значит?
Если данные не жестко запрограммированы в вашем исходном коде, вам следует их отфильтровать. Даже если это исходит от того, что вы считаете «доверяющим», например, от своей базы данных, или от Google, отфильтруйте это. Всегда.
Фильтрация в основном означает проверку того, ожидаете ли вы. Если вы ожидаете буквенно-цифровое имя пользователя, и вы найдете в нем символ, это проблема. Обратите внимание, что фильтрация не означает экранирование. Это может быть «разрушительным», что означает замену плохих частей, или это может быть отклонение, означающее отклонение ввода все вместе ...
Выход
Всегда избегайте любых данных, которые покидают ваше приложение. Неважно, если это исходит из источника, заслуживающего доверия. Он должен сбежать на выходе. И его необходимо экранировать соответствующим образом для контекста, в котором он будет использоваться. Поэтому, если вы выводите данные в базу данных, вам нужно уйти в одну сторону, а если вы выводите в блок HTML, вы сбежать другим путем ...
Вопрос здесь в том, что «эта штука, исходящая от удаленного сервера, нуждается в дезинфекции». И ответ: да. Всегда. Без вопросов.