freeBuf
主站

分类

云安全 AI安全 开发安全 终端安全 数据安全 Web安全 基础安全 企业安全 关基安全 移动安全 系统安全 其他安全

特色

热点 工具 漏洞 人物志 活动 安全招聘 攻防演练 政策法规

点我创作

试试在FreeBuf发布您的第一篇文章 让安全圈留下您的足迹
我知道了

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

Tomcat中间件基线核查
2020-09-17 11:57:48

1、身份鉴别

1.1应启用身份鉴别、 用户身份标识唯一性检查、用户身份鉴别信息复杂度检查以及登录失败处理功能,并根据安全策略配置相关参数

检查是否按照用户分配账号,避免账号共享,至少存在两个账号:

修改tomcat-users.xml配置文件,添加帐号: <user username="***" password="***" roles="***">

1.2应提供用户身份标识唯一和鉴别信息复杂度检查功能,保证应用系统中不存在重复用户身份标识,身份鉴别信息不易被冒用

密码长度不小于8位且包括数字、小写字母、大写字母和特殊符号中至少两类:

在tomcat-users.xml中按要求设置密码

2、访问控制

2.1应提供访问控制功能,依据安全策略控制用户对文件、数据库表等客体的访问

2.1.1检查是否禁用非法HTTP方法

禁用非法HTTP方法:

编辑web.xml文件中配置 org.apache.catalina.servlets.DefaultServlet的 <init-param> <param-name>readonly</param-name>

<param-value>true</param-value> </init-param>

其中param-value为true时,即不允许delete和put操作。

2.1.2检查是否修改tomcat manager文件夹名称

修改manager文件夹名称:

将以下目录$CATALINA_HOME/server/webapps/manager,移除到非$CATALINA_HOME/server/webapps目录

2.1.3检查是否更改tomcat服务器默认端口

应更改tomcat服务器默认端口:

修改配置文件server.xml,更改默认管理端口8080到8800 < Connector port="8800" maxHttpHeaderSize="8192" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" connectionTimeout="300" disableUploadTimeout="true" />

2.1.4检查是否禁止tomcat列表显示文件

禁止Tomcat列表显示文件:

编辑配置文件web.xml,修改如下: <init-param> <param-name>listings</param-name> <param-value>true</param-value> </init-param> 把true改成false

2.2应由授权主体配置访问控制策略,并严格限制默认帐户的访问权限

2.2.1检查是否禁用超级用户启用tomcat

应禁止超级用户启用tomcat:

在超级用户模式下启用tomcat,如果可以启用,建议禁用超级用户,改为普通用户进行启用。

2.2.2检查是否设置防止恶意关闭tomcat服务

应避免恶意shutdown TOMCAT服务:

打开tomcat_home/conf/server.xml,查看是否设置了复杂的字符串 <Server port="8005" shutdown="复杂的字符串"> 避免恶意shutdown TOMCAT服务

2.3应授予不同帐户为完成各自承担任务所需的最小权限,并在它们之间形成相互制约的关系

检查是否设置在设备权限配置能力内,根据用户的业务需要,配置其所需的最小权限

修改用户角色权限,授权tomcat具有远程管理权限:

在tomcat-users.xml中,修改tomcat用户的role值包含manager,如: <user username="tomcat" password="***" roles="manager">

2.4应对通信过程中的整个报文或会话过程进行加密

检查是否配置设备支持使用HTTPS加密协议

设备应支持使用HTTPS加密协议:

修改server.xml,更改为使用https方式,增加如下行:

Connector classname=”org.apache.catalina.http.HttpConnector” port=”8443” minProcessors=”5” maxprocessors=”100” enableLookups=”true” acceptCount=”10” debug=”0” scheme=”https” secure=”true” > Factory classname=”org.apache.catalina.SSLServerSocketFactory” clientAuth=”false” keystoreFile=”/path/to/my/keystore” keystorePass=”runway” protocol=”TLS”/> /Connector> 其中keystorePass的值为生成keystore时输入的密码

3、安全审计

3.1应提供覆盖到每个用户的安全审计功能,对应用系统重要安全事件进行审计

检查是否配置日志功能,对用户登录进行记录:

编辑server.xml配置文件,在<HOST>标签中增加记录日志功能,将以下内容的注释标记< ! -- -- >取消: <Valve className=”org.apache.catalina.valves.AccessLogValve” Directory=”logs” prefix=”localhost_access_log.” Suffix=”.txt” Pattern=”common” resloveHosts=”false”/>

4、软件容错

4.1在故障发生时,应用系统应能够继续提供一部分功能,确保能够实施必要的措施

检查是否配置tomcat错误页面重定向

配置Tomcat错误页面重定向:

编辑配置文件web.xml,

修改如下: <error-page> <error-code>404</error-code> <location>/错误页面</location> </error-page> …………… <error-page> <exception-type>java.lang.NullPointerException</exception-type> <location>/错误页面</location> </error-page>

5、资源控制

5.1当应用系统的通信双方中的一方在一段时间内未作任何响应,另一方应能够自动结束会话

检查是否设置连接超时时间

自动登出时间不大于30秒:

编辑server.xml,修改自动登出时间为30秒,如下: <Connector port="8080" maxHttpHeaderSize="8192" maxThreads="150" minSpareThreads="25" maxSpareThreads="75"、 enableLookups="false" redirectPort="8443" acceptCount="100" connectionTimeout="30000" disableUploadTimeout="true" />

5.2应能够对应用系统的最大并发会话连接数进行限制

5.2.1检查是否设置连接数

应根据机器性能和业务需求,设置最小连接数:

编辑server.xml文件,样例如下: <Connector   port="8080"  minSpareThreads="25" ……/> minSpareThreads="25" 表示即使没有人使用也开这么多空线程等待 根据实际情况设置连接数

应根据机器性能和业务需求,设置最大连接数:

编辑server.xml文件,样例如下: <Connector   port="8080" maxThreads="150"……/> maxThreads="150" 表示最多同时处理150个连接 根据实际情况配置连接数

注:检查项其实都差不多,最主要的区别是windows和linux的路径和打开路径不同,要操作的对象是tomcat中间件的配置文档,只不过一个要windows下打开,一个在linux下打开而已

# 系统安全
免责声明
1.一般免责声明:本文所提供的技术信息仅供参考,不构成任何专业建议。读者应根据自身情况谨慎使用且应遵守《中华人民共和国网络安全法》,作者及发布平台不对因使用本文信息而导致的任何直接或间接责任或损失负责。
2. 适用性声明:文中技术内容可能不适用于所有情况或系统,在实际应用前请充分测试和评估。若因使用不当造成的任何问题,相关方不承担责任。
3. 更新声明:技术发展迅速,文章内容可能存在滞后性。读者需自行判断信息的时效性,因依据过时内容产生的后果,作者及发布平台不承担责任。
本文为 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者