보안취약점 점검을 하다보면 가끔 XSS관련 결함이 잡히고는 한다.
XSS참고 : https://easymedia.net/Culture/EasyStory/?no=170&mode=view&IDX=1165&p=1
그러기 위해 사용자가 입력한 값을 html인코딩을 통해 문자 그대로가 아닌 치환해 줄 필요가 있는데,
아래 코드를 사용하면 된다.
StringEscapeUtils.escape(str).replace("%", "%");
정말 많이쓰는 기능이니 core쪽에 따로 뺴놓는것이 편하다.
※참고
URL 인코딩은 다음과 같이 하면 된다.
try{
URLEncoder.encode(url, "UTF-8");
}catch(UnsupportedEncodingException e){
e.printStackTrace();
}