XSS атака: альтернатива OWASP?
Есть ли какой-нибудь альтернативный способ предотвращения атаки XSS, кроме программного обеспечения OWASP XSS filter? Мне нужно предложение, если это возможно, чтобы предотвратить на уровне Apache. Я не эксперт по безопасности, поэтому нужна подробная информация. Спасибо за вашу помощь
2 ответа
Другой подход состоит в том, чтобы выполнить обнаружение фильтров динамического тестирования сканирования приложений (DAST), которые затем импортируются в брандмауэр веб-приложений.
Брандмауэр веб-приложений может быть развернут как часть вашего сервера Apache. ModSecurity - пример такого брандмауэра
Проблемы XSS возникают на уровне представления, когда данные отображаются конечному пользователю. Поэтому предотвращение этого на уровне apache не является правильным подходом.
OWASP ESAPI - это библиотека (не программное обеспечение для фильтрации), которая обеспечивает защиту XSS в качестве API для кодирования данных на уровне представления. Всякий раз, когда что-то, на что влияет пользовательский ввод, должно отображаться, должно применяться правильное кодирование. Например, Шпаргалка по предотвращению OWASP XSS имеет следующий пример для контекста Javascript:
String safe = ESAPI.encoder().encodeForJavaScript( request.getParameter( "input" ) );
и этот для контекста "атрибут HTML":
String safe = ESAPI.encoder().encodeForHTMLAttribute( request.getParameter( "input" ) );
Правильное кодирование зависит от текущего контекста (html, html attribute, javascript и т. Д.)
Если вы предпочитаете не использовать библиотеку OWASP, вы можете сделать кодирование, используя другие библиотеки, такие как apache.commons.StringEscapeUtils
, Но вы должны быть очень осторожны в выборе правильного метода для вашего контекста.