2016-06-30 2 views
0

Я хочу предотвратить атаки XSS в своем веб-приложении, поэтому я хочу избежать данных, введенных пользователем в форме, прежде чем сохранять их в БД, чтобы показать их на другой странице JSP, и я колеблясь между 2 подходами:предотвращать атаки XSS В JSP

StringEscapeUtils.escapeHtml(), что для ввода Reggaeton/SALSA дают мне тот же результат, но ESAPI.encoder().encodeForHTML(), что для того же входа на выходе будет Reggaeton & # x2f; SALSA

ответ

4

Не сохранять уцелевшие данные, избежать его, когда вам нужно отобразить его:

Способа избавиться от нее зависит от контекста, вы хотите отобразить его, так что если вы сохраните его спаслись , он будет использоваться только в этом контексте, и большую часть времени функции экранирования не являются биективными, поэтому вы потеряете информацию.

Для того, чтобы кодировать его, чтобы отобразить его в контексте html, в обоих направлениях швы правильные.

Кроме того, чтобы улучшить защиту от XSS, , вы должны изучить CSP (политика безопасности контента), это очень помогает, особенно для новых проектов.

Смежные вопросы