반응형

출처: http://blog.naver.com/PostView.nhn?blogId=chocolleto&logNo=30086937115&categoryNo=29&viewDate=&currentPage=1&listtype=0

http://jeevanpatil.wordpress.com/2011/07/22/prevention_of_xss/

http://forum.spring.io/forum/spring-projects/web/106627-spring-3-mvc-annotation-portlet-form-form-submission-nohandlerfoundexception

 

spring mvc form 태그를 사용하면서 xss(cross site scripting)을 처리하고자

< -> &lt;

> -> &gt;

' -> &apos;

"-> &quote;

 

로 변환해서 데이터베이스에 저장하였다.

 

그렇게 처리하니 spring form 태그에서는 & -> &amp;로 변환해서 화면에 보여주게 되었고

화면에는 <script가 &lt;script로 보여지게 된것이다.

 

이유는 &가 html태그로 치환되어 표현하기 때문이다.

그렇기에 <form:input path="name" htmlEscape="false" />로 처리하니

화면에 <script로 보여지게 되었다.

 

defaultHtmlEscape는 true로 되어있기 때문에 spring form mvc에서는

false로 지정해 주어야 한다.

 

(근데 궁금한것은 어디서는 web.xml에 defaultHtmlEscape가 true라고 하고, 어디서는 false라고 하는데

어떤것이 진실인지 찾아봐야겠다.)

 

 

To avoid XSS security threat in spring application jeevanpatil.mht

 

반응형

+ Recent posts