#html #tags #filtering
#HTML #Теги #фильтрация
Вопрос:
Я пытаюсь поддерживать форматированный текстовый редактор, который поддерживает определенные теги, такие как h1
, h2
, h3
p
, strong
em
u
, sub
sup
span{!font-family};
, span{!color};
span{!font-size};
,,,,,,,,,,,,,,,,,,,,,,,,, и,,,.
Мое требование — закодировать все остальные теги, которые не попадают в приведенный выше список, чтобы я мог избежать любых XSS-атак. Есть ли лучший способ сделать это на стороне клиента.
Ответ №1:
Вы могли бы использовать DOMPurify. Это библиотека Javascript для очистки HTML, которую можно настроить в соответствии с вашими потребностями.
Однако я бы не рекомендовал использовать экранирование на стороне клиента, когда вводимые пользователем данные будут отправлены на ваш сервер или сохранены в базе данных. Вы также всегда должны очищать свой ввод на стороне сервера.
Комментарии:
1. Зачем вам нужна очистка с обеих сторон. Вы ожидаете, что кто-то может перехватить запрос с помощью Fiddler и изменить его?
2. Очистка на стороне клиента должна быть выполнена таким образом, чтобы: