Использование HTML Purifier на сайте с простым вводом текста

Я был бы признателен за ответ, чтобы урегулировать разногласия между мной и некоторыми сотрудниками.

У нас есть типичное PHP / LAMP веб-приложение.

Единственный вход, который мы хотим от пользователей - это простой текст. Мы не приглашаем и не хотим, чтобы пользователи вводили HTML в любой момент. Элементы формы - это в основном базовые теги ввода текста. Там может быть несколько текстовых полей, флажков и т. Д.

В настоящее время нет очистки для вывода на страницы. Весь динамический контент, часть которого поступила от пользовательского ввода, просто отражается на странице. Мы, очевидно, должны сделать это безопасно.

Мое решение состоит в том, чтобы использовать htmlspecialchars на всех выходных данных в то время, когда они отображаются на странице.

Решение моих коллег состоит в том, чтобы добавить HTML Purifier к слою базы данных. Они хотят передать весь введенный пользователем ввод через очиститель HTML, прежде чем он будет сохранен в базе данных. Очевидно, они использовали это в других проектах, но я думаю, что это неправильное понимание того, для чего нужен HTML Purifier.

Насколько я понимаю, имеет смысл использовать HTML Purifier только на сайте, который позволяет пользователю вводить HTML. Он берет HTML и делает его более безопасным и чистым на основе белого списка и других правил.

Кто прав, а кто нет?

Есть также целая проблема «побега на входе или выходе», но я думаю, что это спор для другого времени и места.

Спасибо

Ответы на вопрос(1)

Ваш ответ на вопрос