Tomcat系统加固规范2024年9月目录1账号管理、认证授权............................................................................................11.1.1SHG-Tomcat-01-01-01....................................................................................11.1.2SHG-Tomcat-01-01-02....................................................................................21.1.3SHG-Tomcat-01-01-03....................................................................................31.1.4SHG-Tomcat-01-01-04....................................................................................32日志配置................................................................................................................52.1.1SHG-Tomcat-02-01-01....................................................................................53通信协议................................................................................................................63.1.1SHG-Tomcat-03-01-01....................................................................................63.1.2SHG-Tomcat-03-01-02....................................................................................84设备其他安全要求................................................................................................94.1.1SHG-Tomcat-04-01-01....................................................................................94.1.2SHG-Tomcat-04-01-02................................................................................104.1.3SHG-Tomcat-04-01-03................................................................................1211账号管理、认证授权账号管理、认证授权1.1.11.1.1SHG-Tomcat-01-01-0SHG-Tomcat-01-01-011编号SHG-Tomcat-01-01-01名称为不同的管理员分配不同的账号实施目的应按照用户分配账号,避免不同用户间共享账号,提高安全性。问题影响账号混淆,权限不明确,存在用户越权使用的可能。系统当前状态记录tomcat/conf/tomcat-users.xml文件实施步骤1、参考配置操作修改tomcat/conf/tomcat-users.xml配置文件,修改或添加帐号。
2、补充操作说明1、根据不同用户,取不同的名称。2、Tomcat4.1.37、5.5.27和6.0.18这三个版本及以后发行的版本默认都不存在admin.xml配置文件。回退方案还原tomcat/conf/tomcat-users.xml文件判断依据询问管理员是否安装需求分配用户账号实施风险高重要等级★★★备注1.1.21.1.2SHG-Tomcat-01-01-0SHG-Tomcat-01-01-022编号SHG-Tomcat-01-01-02名称删除或锁定无效账号实施目的删除或锁定无效的账号,减少系统安全隐患。问题影响允许非法利用系统默认账号系统当前状态记录tomcat/conf/tomcat-users.xml文件实施步骤1、参考配置操作修改tomcat/conf/tomcat-users.xml配置文件,删除与工作无关的帐号。例如tomcat1与运行、维护等工作无关,删除帐号:回退方案还原tomcat/conf/tomcat-users.xml文件判断依据询问管理员,哪些账号是无效账号实施风险高重要等级★★★备注1.1.31.1.3SHG-Tomcat-01-01-0SHG-Tomcat-01-01-033编号SHG-Tomcat-01-01-03名称密码复杂度实施目的对于采用静态口令认证技术的设备,口令长度至少8位,并包括数字、小写字母、大写字母和特殊符号4类中至少2类。问题影响被暴力破解系统当前状态记录tomcat/conf/tomcat-users.xml文件实施步骤1、参考配置操作在tomcat/conf/tomcat-user.xml配置文件中设置密码2、补充操作说明口令要求:长度至少8位,并包括数字、小写字母、大写字母和特殊符号4类中至少2类。回退方案还原tomcat/conf/tomcat-users.xml文件判断依据判定条件查看tomcat/conf/tomcat-users.xml文件实施风险高重要等级★★★备注1.1.41.1.4SHG-Tomcat-01-01-0SHG-Tomcat-01-01-044编号SHG-Tomcat-01-01-04名称权限最小化实施目的在数据库权限配置能力内,根据用户的业务需要,配置其所需的最小权限。问题影响账号权限越大,对系统的威胁性越高系统当前状态查看tomcat/conf/tomcat-user.xml实施步骤1、参考配置操作编辑tomcat/conf/tomcat-user.xml配置文件,修改用户角色权限授权tomcat具有远程管理权限:2、补充操作说明1、Tomcat4.x和5.x版本用户角色分为:role1,tomcat,admin,manager四种。role1:具有读权限;tomcat:具有读和运行权限;admin:具有读、运行和写权限;manager:具有远程管理权限。Tomcat6.0.18版本只有admin和manager两种用户角色,且admin用户具有manager管理权限。2、Tomcat4.1.37和5.5.27版本及以后发行的版本默认除admin用户外其他用户都不具有manager管理权限。回退方案还原tomcat/conf/tomcat-user.xml判断依据业务测试正常实施风险高重要等级★备注22日志配置日志配置2.1.12.1.1SHG-Tomcat-02-01-0SHG-Tomcat-02-01-011编号SHG-Tomcat-02-01-01名称启用日志记录功能实施目的数据库应配置日志功能,对用户登录进行记录,记录内容包括用户登录使用的账号、登录是否成功、登录时间以及远程登录时用户使用的IP地址。问题影响无法对用户的登陆进行日志记录系统当前状态查看server.xml实施步骤1、参考配置操作编辑server.xml配置文件,在标签中增加记录日志功能将以下内容的注释标记取消2、补充操作说明classname:ThisMUSTbesettoorg.apache.catalina.valves.AccessLogValvetousethedefaultaccesslogvalve.&<60Directory:日志文件放置的目录,在tomcat下面有个logs文件夹,那里面是专门放置日志文件的,也可以修改为其他路径;Prefix:这个是日志文件的名称前缀,日志名称为localhost_access_log.2008-10-22.txt,前面的前缀就是这个localhost_access_logSuffix:文件后缀名Pattern:common方式时,将记录访问源IP、本地服务器IP、记录日志服务器IP、访问方式、发送字节数、本地接收端口、访问URL地址等相关信息在日志文件中resolveHosts:值为true时,tomcat会将这个服务器IP地址通过DNS转换为主机名,如果是false,就直接写服务器IP地址回退方案还原server.xml判断依据判定条件登录测试,检查相关信息是否被记录查看server.xml文件实施风险低重要等级★★★备注33通信协议通信协议3.1.13.1.1SHG-Tomcat-03-01-0SHG-Tomcat-03-01-011编号SHG-Tomcat-03-01-01名称HTTPS协议实施目的对于通过HTTP协议进行远程维护的设备,设备应支持使用HTTPS等加密协议。问题影响增加数据库数据传输安全隐患系统当前状态查看tomcat/conf/server.xml实施步骤(1)使用JDK自带的keytool工具生成一个证书JAVA_HOME/bin/keytool-genkey–aliastomcat–keyalgRSA-keystore/path/to/my/keystore(2)修改tomcat/conf/server.xml配置文件,更改为使用https方式,增加如下行:Connectorclassname=”org.apache.catalina.http.HttpConnector”port=”8443”minProcessors=”5”maxprocessors=”100”enableLookups=”true”acceptCount=”10”debug=”0”scheme=”https”secure=”true”>Factoryclassname=”org.apache.catalina.SSLServerSocketFactory”clientAuth=”false”keystoreFile=”/path/to/my/keystore”keystorePass=”runway”protocol=”TLS”/>/Connector>其中keystorePass的值为生成keystore时输入的密码(3)重新启动tomcat服务回退方案还原tomcat/conf/server.xml判断依据1、判定条件查看tomcat/conf/server.xml2、检测操作使用https方式登陆tomcat服务器管理页面实施风险高重要等级★★备注3.1.23.1.2SHG-Tomcat-03-01-02SHG-Tomcat-03-01-02编号SHG-Tomcat-03-01-02名称更改tomcat服务器默认端口实施目的更改tomcat服务器默认端口,增加系统安全性问题影响不安全性增加系统当前状态查看tomcat/conf/server.xml实施步骤1、参考配置操作(1)修改tomcat/conf/server.xml配置文件,更改默认管理端口到8800(2)重启tomcat服务回退方案还原tomcat/conf/server.xml判断依据1、判定条件查看tomcat/conf/server.xml2、检测操作登陆http://ip:8800实施风险高重要等级★备注44设备其他安全要求设备其他安全要求4.1.14.1.1SHG-Tomcat-04-01-01SHG-Tomcat-04-01-01编号SHG-Tomcat-04-01-01名称登录超时实施目的对于具备字符交互界面的设备,应支持定时账户自动登出。登出后用户需再次登录才能进入系统。问题影响被恶意攻击者盗用系统当前状态查看tomcat/conf/server.xml实施步骤参考配置操作编辑tomcat/conf/server.xml配置文件,修改为30秒回退方案还原tomcat/conf/server.xml判断依据1、判定条件查看tomcat/conf/server.xml2、检测操作登陆tomcat默认页面http://ip:8080/manager/html,使用管理账号登陆实施风险高重要等级★★备注4.1.24.1.2SHG-Tomcat-04-01-02SHG-Tomcat-04-01-02编号SHG-Tomcat-04-01-02名称Tomcat错误页面重定向实施目的更改Tomcat错误页面重定向页面,增加系统安全性问题影响不安全性增加系统当前状态查看tomcat/conf/web.xml实施步骤1、参考配置操作(1)配置tomcat/conf/web.xml文件:在最后一行之前加入以下内容:404/noFile.htm……………java.lang.NullPointerException/error.jsp第一个之间的配置实现了将404未找到jsp网页的错误导向noFile.htm页面,也可以用类似方法添加其多的错误代码导向页面,如403,500等。第二个之间的配置实现了当jsp网页出现java.lang.NullPointerException导常时,转向error.jsp错误页面,还需要在第个jsp网页中加入以下内容:<%@pageerrorPage="/error.jsp"%>典型的error.jsp错误页面的程序写法如下:<%@pagecontentType="text/html;charset=GB2312"%><%@pageisErrorPage="true"%>错误页面出错了:错误信息:<%=exception.getMessage()%>
StackTraceis:<%java.io.CharArrayWritercw=newjava.io.CharArrayWriter();java.io.PrintWriterpw=newjava.io.PrintWriter(cw,true);exception.printStackTrace(pw);out.println(cw.toString());%>
当出现NullPointerException异常时tomcat会把网页导入到error.jsp,且会打印出出错信息。回退方案还原tomcat/conf/web.xml判断依据1、判定条件查看tomcat/conf/web.xml2、检测操作URL地址栏中输入http://ip:8800/manager~~~实施风险高重要等级★备注4.1.34.1.3SHG-Tomcat-04-01-03SHG-Tomcat-04-01-03编号SHG-Tomcat-04-01-03名称禁止tomcat列表显示文件实施目的禁止tomcat列表显示文件,增加系统安全性问题影响不安全性增加系统当前状态查看tomcat/conf/web.xml实施步骤1、参考配置操作(1)编辑tomcat/conf/web.xml配置文件,listingstrue把true改成false(2)重新启动tomcat服务回退方案还原tomcat/conf/web.xml判断依据1、判定条件查看tomcat/conf/web.xml2、检测操作直接访问http://ip:8800/webadd实施风险高重要等级★备注