OWASP ZAP을 이용하여 웹 취약점 검사 후 발견한 취약점 중 Web Browser XSS Protection Not Enabled에
관한 취약점을 처리하는 방법을 기록합니다.
본 게시글은 JAVA, Spring 환경을 기반으로 작성하였습니다.
문제 상황
OWASP ZAP을 이용하여 웹 취약점을 점검한 결과입니다. 경고의 내용은 Header에 X-XSS-Protection헤더가 Enable 되어있지 않다는 내용입니다.
위 기능은 IE, Chrome 등 브라우저에서 페이지 로드 중 XSS 공격을 감지할 때 로드를 중지시킬 수 있도록 하여주는 옵션입니다. 웹 서버에서도 설정할 수 있지만 이번 글에서는 소스에서 처리해주도록 하겠습니다.
해결방법
public class HttpHeaderSecurityFilter implements Filter {
...
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
HttpServletResponse res = (HttpServletResponse)response;
//Missing "X-XSS-Protection" header
res.addHeader("X-XSS-Protection", "1");
chain.doFilter(request, response);
}
...
}
Filter를 구현하여 모든 요청에 X-XSS-Protection을 Enable(1)해주는 방식으로 해결하였습니다.
'프로그래밍 > Web.' 카테고리의 다른 글
[JSTL] <c:set /> 사용법 (0) | 2020.04.21 |
---|---|
[JAVA] FindBugs 오류처리 (0) | 2020.03.30 |
[JavaScript] 소수점 자리수 정하기 - toFixed() (0) | 2020.03.09 |
[HTML] IE에서 Date 타입 미지원 현상 해결 (0) | 2020.03.09 |
[JSTL] replace - 개행문자 처리하기 (0) | 2020.03.09 |
댓글