나는 로깅을 통해 일종의 딜레마에 빠져있다. 내 응용 프로그램에서로그 용 ESAPI : 로그 출력을 인코딩해야합니까?
LogLevel=INFO
LogEncodingRequired=true
, 내가 ESAPI.getLogger(MyClass.class).info(Logger.USABILITY, true, message)
를 호출하는 경우, 그것은>이 < 중 하나가있는 경우 (인코딩 된 문자 메시지를 출력 할 것이다 : 나는 ESAPI.properties
이 은 다음과 같은 로그에 대한 옵션을 설정 , &, ', "등)
로그를 출력하는 메시지는 이러한 문자를 가지며 위의 log.info 호출은 로그의 모양을 엉망으로 만듭니다 모든 인코딩 된 문자
질문 : LogEncodingRequired=false
을 설정하면 (그대로 메시지를 출력 함) XSS에 취약한 로그 파일 (웹 브라우저에서 볼 수 있음)이 발생할 가능성이 있습니까?