Tomcat中间件版本信息泄露

Tomcat服务在响应404/500等网络错误时,默认会将当前版本信息显示出来,这样就造成了中间件版本信息泄露这样的漏洞

 

解决方案:

  • 进入Tomcat下的lib目录,备份catalina.jar文件后,解压该文件
cp catalina.jar catalina.jar.bak

unzip catalina.jar
  • 解压后,通过vi编辑器修改解压出来的ServerInfo.properties文件(在/org/apache/catalina/util/下)
vim org/apache/catalina/util/ServerInfo.properties
  • 去除ServerInfo.properties文件的版本信息
server.info=ApacheTomcat

server.number=0.0.0.0

server.built=Nov 72016 20:05:27 UTC
  • 将修改后的文件压缩回catalina.jar包中
jar uvf catalina.jar org/apache/catalina/util/ServerInfo.properties
  • 重启Tomcat服务,访问不存在的页面进行404报错验证,看是否还显示中间件版本号

 

【注意】

以上操作仅去除Tomcat服务报错信息中的版本信息,如果是正式环境,建议使用自定义错误页面替换默认页面的做法

  • 进入Tomcat的conf目录,修改web.xml,在</web-app>标签前添加如下内容
<error-page>
  <error-code>404</error-code>
  <location>/error_404.html</location>
</error-page>
  • 进入Tomcat的webapps/ROOT目录,新增error_404.html页面,使用自定义页面已达到隐藏中间件版本信息的目的

版权声明:本文为mypowerhere原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。