웹 주소에 의도하지않은 경로를 입력하면 404 Error 혹은 별도의 에러페이지를 확인할 수 있다
404, 403 등 에러코드가 노출되는 에러페이지를 막는 것도 하나의 보안 요소인데
별도의 에러페이지는 web.xml에서 설정해주거나 redirection을 통해 보여지도록 설정한다
하지만 보여지는 것 이외에 응답 헤더 정보에 에러코드가 노출된다는 것도 주의해야한다
있을법한 경로를 주소에 입력하여 존재하는 경로라면 403 Forbidden
존재하지않는 경로라면 404 Not found 를 확인할 수 있어서 경로 내 다른 파일들이 노출될 수 있기 때문이다
🍋 해결방법
별도의 에러페이지에 한줄만 추가해주면 다음과 같은 취약점을 방지할 수 있다
<%response.setStatus(200);%>
이 코드는 403, 404 등등 어떤 코드라도 200으로 설정해주어 실제 에러코드가 노출되지 않도록 해주는 것이다
아래의 Error.jsp를 참고하여 코드를 넣어주면 끝~
<%@ page contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%response.setStatus(200);%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="ko" xml:lang="ko">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Error Page</title>
</head>
<body>
<div id ="content">
<p style="margin-top: 200px;margin-left:500px;text-align:center">
요청한 페이지를 찾을 수 없습니다.
</p>
</div>
</body>
</html>
728x90
반응형