但行好事
莫论前程❤

Tomcat的version.sh不显示版本号

[cmcc@BJBJ-BS-EF-SV-GD01 bin]$ ./version.sh 
Using CATALINA_BASE:   /home/cmcc/euc/dmz/webapp/m_meeting_02
Using CATALINA_HOME:   /home/cmcc/euc/dmz/webapp/m_meeting_02
Using CATALINA_TMPDIR: /home/cmcc/euc/dmz/webapp/m_meeting_02/temp
Using JRE_HOME:        /usr/local/jdk1.6.0_24/jre
Using CLASSPATH:       /home/cmcc/euc/dmz/webapp/m_meeting_02/bin/bootstrap.jar:/home/cmcc/euc/dmz/webapp/m_meeting_02/bin/tomcat-juli.jar
Server version: unknown
Server built:   
Server number:  0.0.0.0
OS Name:        Linux
OS Version:     2.6.32-573.el6.x86_64
Architecture:   amd64
JVM Version:    1.6.0_24-b07
JVM Vendor:     Sun Microsystems Inc.

原因:

版本号被隐藏

​ 如果tomcat的版本号暴露出来,会有人利用该版本所存在的漏洞进行攻击,系统存在一定的风险,所以要对tomcat的版本号进行隐藏或者删除.

修改之前默认报错页面信息会暴露出版本号

52767339881

进入tomcat的lib目录找到catalina.jar文件

{TOMCAT_HOME}/lib/catalina.jar
# 解压catalina.jar文件
unzip catalina.jar
#之后会多出两个文件夹
META-INF 和 org
# 找到Serverinfo.properties
cd org/apache/catalina/util

打开ServerInfo.properties文件

vim ServerInfo.properties

# 如下是tomcat的版本配置信息

server.info=Apache Tomcat/8.5.23
server.number=8.5.23.0
server.built=Sep 28 2017 10:30:11 UTC

# 修改为:
server.info=unknown
server.number=0.0.0.0
server.built=

将修改后的信息压缩回jar包

jar uvf catalina.jar org/apache/catalina/util/ServerInfo.properties

拓展 jar 命令

1.查看jar包文件

jar vtf hdfstoes.jar | grep xxx  

2.更新jar包文件

  • 替换或增加jar包根目录下文件
java uvf hdfstoes.jar field.properties   
  • 替换或增加jar包深层目录下文件
jar uvf myjar.jar com/blackwing/ClassToAdd.class   
  1. java文件转换成class文件
javac -source 1.6 -target 1.6  X.java   # (X.java是要转换的文件,默认生成同名class文件) 
例如:
javac -source 1.6 -target 1.6 com/chaos/hack/AntiLazyLoad.java
  1. class文件转换成jar文件:
jar cvf X.jar Y.class(Y.class是要转换的文件,X.jar是转换后的文件) 

如:

jar cvf hack.jar com/chaos/hack/AntiLazyLoad.class
赞(2) 打赏
未经允许不得转载:刘鹏博客 » Tomcat的version.sh不显示版本号
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏