Моя команда устраняет уязвимости в старом приложении jsp. Проблема в том, что это позволяет пользователям (имеющим разрешение) создавать простую домашнюю страницу, помещая свой html в текстовую область и отображая его на странице. Проблема в xss проблемах. Я провел некоторое исследование и нашел на страницах jsp, которые я могу использовать:
fn:escapeXML() из библиотеки jstl, чтобы избежать любого введенного html/xml. Это нормально для ввода простых форм, но для создателя домашней страницы я хочу сохранить простой html, но избавиться от любых вредоносных скриптов или уязвимостей xss.
Мой товарищ по команде и я довольно новичок в исправлении проблем с xss и полагаемся на ресурсы, которые мы находим.
Я наткнулся на эти ресурсы и не уверен, что после прочтения они будут работать так, как мне нравится.
-Какую библиотеку очистки html использовать?
-https://www.owasp.org/index.php/XSS_%28Cross_Site_Scripting%29_Prevention_Cheat_Sheet
Если я использую owasp, очистит ли это html до базового рендеринга и предотвратит ли выполнение каких-либо сценариев?
Вот что у меня сейчас есть в jsp:
<td class='caption'>
<c:set var="x"><%=system.getName()%></c:set>
Options for ${fn:escapeXml(x)}
</td>
Это работает и в настоящее время остановит запуск любого html/xml/script, но мне все же нужен базовый html (заголовки, абзацы, шрифты, цвета и т. д.) для простой информационной страницы с html.