Я столкнулся с дилеммой, связанной с ведением журнала. Я ESAPI.properties
установил следующие параметры журналов:
LogLevel=INFO
LogEncodingRequired=true
В моем приложении, если я вызываю ESAPI.getLogger(MyClass.class).info(Logger.USABILITY, true, message)
, оно распечатает сообщение с закодированными символами (если есть какие-либо из этих ‹,>, &, '," и т. Д.).
Проблема в том, что сообщения, которые я буду распечатывать в журналах, будут содержать эти символы, а приведенный выше вызов log.info испортит внешний вид журнала со всеми закодированными символами.
Вопрос: Если я устанавливаю LogEncodingRequired=false
(который затем выводит сообщение как есть), повышает ли это вероятность того, что мои файлы журнала (которые можно просмотреть в веб-браузере) будут уязвимы для XSS?