More

http 오류 메시지 나올 때 Tomcat 버전 숨기기

Tomcat 에러메시지 버전 표시
에러메시지에 표시되는 톰캣 버전

최근 보안 사항들을 점검하다 HTTP 오류 메시지 응답 페이지에 Tomcat 서버 버전이 노출 될 경우 보안 취약점으로 사용되기 때문에 가려야 한다는 것을 알게 되었습니다. 


Tomcat 버전 숨기기

버전을 숨기는 방법이 2가지 있는데 ServerInfo.properties  파일을 설정 하는 방법과 conf 폴더의 web.xml 파일을 수정하는 방법 2가지가 있습니다. 

web.xml 파일에 추가하는 방법이 간단하기 때문에 파일을 수정하기로 했습니다.


1. web.xml 파일의 하단부로 내려가 <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"> 태그를 찾습니다.


2. AccessLogValve 아래쪽에 ErrorReportValve 태그를 추가 합니다.

<valve classname="org.apache.catalina.valves.ErrorReportValve" showreport="false" showserverinfo="false"></valve>

ErrorReportValve 태그 추가
web.xml 파일에 ErrorReportValve 태그 추가한 모습


3. 추가 후 톰캣을 재시작 하고 다시 에러 페이지를 띄워 보면 Tomcat 버전이 사라진 걸 볼 수 있습니다.

Tomcat 에러메시지 버전 표시 제거
Tomcat 버전이 사라진 모습