서버&네트워크&DB

톰캣(tomcat) 서버 버전 정보 숨기기(감추기)

텍엔카 2024. 4. 1. 14:15
728x90

웹취약점 점검 시 서버 버전의 정보 노출은 서버의 취약점이 존재할 경우 2차 공격에 대한 가능성이 발생하므로 이를 차단하도록 권고를 받았다.

 

URL 에 의미없는 글을 입력하여 오류를 발생시킬 경우 아래와 같이 서버의 버전이 노출된다.

서버의 버전을 숨기는 설정은 아래와 같다.

톰캣의 server.xml 에 아래의 내용을 추가하고, 서버를 재기동하면 서버정보가 노출되지 않는다.

<Valve className="org.apache.catalina.valves.ErrorReportValve" showReport="false" showServerInfo="false"/>

이 요소는 톰캣 서버에서 오류 보고서 및 서버 정보를 숨기는데 사용되는 Valve(밸브)를 설정하는 것이다. 
Valve는 톰캣의 요청 처리 파이프라인에서 사용되는 구성 요소 중 하나이며, 요청 및 응답에 대한 처리를 조정하는 데 사용된다.
이 XML 요소는 org.apache.catalina.valves.ErrorReportValve 클래스의 인스턴스를 생성하여 설정하며, 이 클래스는 톰캣에서 발생한 오류에 대한 보고서를 생성하는 Valve이다.
showReport 속성은 오류 보고서의 표시 여부를 결정한다. false로 설정되어 있으므로 오류 보고서가 클라이언트에게 표시되지 않는다.
showServerInfo 속성은 서버 정보의 표시 여부를 결정한다. false로 설정되어 있으므로 서버 정보가 클라이언트에게 표시되지 않습니다.
이 설정을 적용하면 보안상의 이유로 클라이언트에게 민감한 정보가 노출되지 않도록 할 수 있다.

 

 

아래는 적용 후 서버의 정보가 노출되지 않는 화면이다.

728x90