Я пишу приложение на основе сервлета, в котором мне нужно предоставить систему обмена сообщениями.Я спешу, поэтому я выбираю CKEditor , чтобы обеспечить возможности редактирования, и в настоящее время я вставляю сгенерированный HTML-файл прямо в веб-страницу, отображающую все сообщения (сообщения хранятся в базе данных MySQL, к вашему сведению).CKEditor уже фильтрует HTML на основе белого списка, но пользователь все еще может внедрить вредоносный код с помощью запроса POST, поэтому этого недостаточно.
Хорошая библиотека уже существует для предотвращения атак XSS путем фильтрации тегов HTML, ноон написан на PHP: HTML Purifier
Итак, существует ли подобная зрелая библиотека, которая может использоваться в Java ?Простая замена строки, основанная на белом списке, кажется недостаточной, поскольку Я бы тоже хотел отфильтровать искаженные теги (что могло бы изменить дизайн страницы, на которой отображается сообщение).
Если нет, то как мне действовать?Синтаксический анализатор XML кажется излишним.
Примечание. В SO много вопросов по этому поводу, но все ответы относятся к фильтру ВСЕ HTML-теги: я хочу сохранить допустимые теги форматирования.