• Tomcat 基线安全加固操作


    目录

    账号管理、认证授权 

      日志配置  

    通信协议 

    设备其他安全要求 


    账号管理、认证授权 

    ELK-tomcat-01-01-01

    编号

    ELK-Tomcat-01-01-01

    名称

    为不同的管理员分配不同的账号

    实施目的

    应按照用户分配账号,避免不同用户间共享账号,提高安全性。

    问题影响

    账号混淆,权限不明确,存在用户越权使用的可能。

    系统当前状态

    记录tomcat/conf/tomcat-users.xml文件

    实施步骤

    1、参考配置操作

    修改tomcat/conf/tomcat-users.xml配置文件,修改或添加帐号。

    2、补充操作说明

    1、根据不同用户,取不同的名称。

    2、Tomcat 4.1.37、5.5.27和6.0.18这三个版本及以后发行的版本默认都不存在admin.xml配置文件。

    回退方案

    还原tomcat/conf/tomcat-users.xml文件

    判断依据

    询问管理员是否安装需求分配用户账号

    实施风险

    重要等级

    ★★★

    备注

     ELK-Tomcat-01-01-02

    编号

    ELK-Tomcat-01-01-02

    名称

    删除或锁定无效账号

    实施目的

    删除或锁定无效的账号,减少系统安全隐患。

    问题影响

    允许非法利用系统默认账号

    系统当前状态

    记录tomcat/conf/tomcat-users.xml文件

    实施步骤

    1、参考配置操作

    修改tomcat/conf/tomcat-users.xml配置文件,删除与工作无关的帐号。

    例如tomcat1与运行、维护等工作无关,删除帐号:

    回退方案

    还原tomcat/conf/tomcat-users.xml文件

    判断依据

    询问管理员,哪些账号是无效账号

    实施风险

    重要等级

    ★★★

    备注

     ELK-Tomcat-01-01-03

    编号

    ELK-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文件

    实施风险

    重要等级

    ★★★

    备注

    ​​​​​​​ ELK-Tomcat-01-01-04

    编号

    ELK-Tomcat-01-01-04

    名称

    权限最小化

    实施目的

    在数据库权限配置能力内,根据用户的业务需要,配置其所需的最小权限。

    问题影响

    账号权限越大,对系统的威胁性越高

    系统当前状态

    查看tomcat/conf/tomcat-user.xml

    实施步骤

    1、参考配置操作

    编辑tomcat/conf/tomcat-user.xml配置文件,修改用户角色权限 

    授权tomcat具有远程管理权限:

    roles=”admin,manager”>

    2、补充操作说明

    1、Tomcat 4.x和5.x版本用户角色分为:role1,tomcat,admin,manager四种。

    role1:具有读权限;

    tomcat:具有读和运行权限;

    admin:具有读、运行和写权限;

    manager:具有远程管理权限。

    Tomcat 6.0.18版本只有admin和manager两种用户角色,且admin用户具有manager管理权限。

    2、Tomcat 4.1.37和5.5.27版本及以后发行的版本默认除admin用户外其他用户都不具有manager管理权限。

    回退方案

    还原tomcat/conf/tomcat-user.xml

    判断依据

    业务测试正常

    实施风险

    重要等级

    备注

      日志配置  

       ELK-Tomcat-02-01-01

    编号

    ELK-Tomcat-02-01-01

    名称

    启用日志记录功能

    实施目的

    数据库应配置日志功能,对用户登录进行记录,记录内容包括用户登录使用的账号、登录是否成功、登录时间以及远程登录时用户使用的IP地址。

    问题影响

    无法对用户的登陆进行日志记录

    系统当前状态

    查看server.xml

    实施步骤

    1、参考配置操作

    编辑server.xml配置文件,在标签中增加记录日志功能

    将以下内容的注释标记< ! --    -- >取消

    Directory=”logs” prefix=”localhost_access_log.” Suffix=”.txt”

    Pattern=”common” resloveHosts=”false”/>

    2、补充操作说明

    classname: This MUST be set to

     org.apache.catalina.valves.AccessLogValve to use the default access log valve. &<60

    Directory:日志文件放置的目录,在tomcat下面有个logs文件夹,那里面是专门放置日志文件的,也可以修改为其他路径;

    Prefix: 这个是日志文件的名称前缀,日志名称为localhost_access_log.2008-10-22.txt,前面的前缀就是这个localhost_access_log

    Suffix: 文件后缀名

    Pattern: common方式时,将记录访问源IP、本地服务器IP、记录日志服务器IP、访问方式、发送字节数、本地接收端口、访问URL地址等相关信息在日志文件中

    resolveHosts:值为true时,tomcat会将这个服务器IP地址通过DNS转换为主机名,如果是false,就直接写服务器IP地址

    回退方案

    还原server.xml

    判断依据

    判定条件

    登录测试,检查相关信息是否被记录

    查看server.xml文件

    实施风险

    重要等级

    ★★★

    备注

    通信协议 

    ELK-Tomcat-03-01-01

    编号

    ELK-Tomcat-03-01-01

    名称

    HTTPS协议

    实施目的

    对于通过HTTP协议进行远程维护的设备,设备应支持使用HTTPS等加密协议。

    问题影响

    增加数据库数据传输安全隐患

    系统当前状态

    查看tomcat/conf/server.xml

    实施步骤

    (1)使用JDK自带的keytool工具生成一个证书

    JAVA_HOME/bin/keytool  -genkey –alias tomcat –keyalg  RSA

    -keystore /path/to/my/keystore

    (2)修改tomcat/conf/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)重新启动tomcat服务

    回退方案

    还原tomcat/conf/server.xml 

    判断依据

    1. 判定条件

    查看tomcat/conf/server.xml

    2、检测操作

    使用https方式登陆tomcat服务器管理页面

    实施风险

    重要等级

    ★★

    备注

    ​​​​​​​ELK-Tomcat-03-01-02

    编号

    ELK-Tomcat-03-01-02

    名称

    更改tomcat服务器默认端口

    实施目的

    更改tomcat服务器默认端口,增加系统安全性

    问题影响

    不安全性增加

    系统当前状态

    查看tomcat/conf/server.xml

    实施步骤

    1、参考配置操作

    (1)修改tomcat/conf/server.xml配置文件,更改默认管理端口到8800

     

    port="8800"  maxHttpHeaderSize="8192" maxThreads="150"

    minSpareThreads="25" maxSpareThreads="75"、

    enableLookups="false" redirectPort="8443" acceptCount="100"

     connectionTimeout="300" disableUploadTimeout="true" />

    (2)重启tomcat服务

    回退方案

    还原tomcat/conf/server.xml

    判断依据

    1、判定条件

    查看tomcat/conf/server.xml

    2、检测操作

    登陆http://ip:8800

    实施风险

    重要等级

    备注

    设备其他安全要求 

    ELK-Tomcat-04-01-01

    编号

    ELK-Tomcat-04-01-01

    名称

    登录超时

    实施目的

    对于具备字符交互界面的设备,应支持定时账户自动登出。登出后用户需再次登录才能进入系统。

    问题影响

    被恶意攻击者盗用

    系统当前状态

    查看tomcat/conf/server.xml

    实施步骤

    参考配置操作

    编辑tomcat/conf/server.xml配置文件,修改为30秒

    port="8080"  maxHttpHeaderSize="8192" maxThreads="150"

    minSpareThreads="25" maxSpareThreads="75"、

    enableLookups="false" redirectPort="8443" acceptCount="100"

     connectionTimeout="300" disableUploadTimeout="true" />

    回退方案

    还原tomcat/conf/server.xml

    判断依据

    1、判定条件

    查看tomcat/conf/server.xml

    2、检测操作

    登陆tomcat默认页面http://ip:8080/manager/html ,使用管理账号登陆

    实施风险

    重要等级

    ★★

    备注

    ​​​​​​​ ELK-Tomcat-04-01-02

    编号

    ELK-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网页中加入以下内容:
    <%@ page errorPage="/error.jsp" %>
    典型的error.jsp错误页面的程序写法如下:
    <%@ page contentType="text/html;charset=GB2312"%>
    <%@ page isErrorPage="true"%>

    错误页面
    出错了:

    错误信息: <%= exception.getMessage() %>

    Stack Trace is :
    <%
    java.io.CharArrayWriter cw = new java.io.CharArrayWriter();
    java.io.PrintWriter pw = new java.io.PrintWriter(cw,true);
    exception.printStackTrace(pw);
    out.println(cw.toString());
    %>



    当出现NullPointerException异常时tomcat会把网页导入到error.jsp,且会打印出出错信息。

    回退方案

    还原tomcat/conf/web.xml

    判断依据

    1、判定条件

    查看tomcat/conf/web.xml

    2、检测操作

    URL地址栏中输入http://ip:8800/manager~~~

    实施风险

    重要等级

    备注

    ​​​​​​​ ELK-Tomcat-04-01-03

    编号

    ELK-Tomcat-04-01-03

    名称

    禁止tomcat列表显示文件

    实施目的

    禁止tomcat列表显示文件,增加系统安全性

    问题影响

    不安全性增加

    系统当前状态

    查看tomcat/conf/web.xml

    实施步骤

    1、参考配置操作

    (1) 编辑tomcat/conf/web.xml配置文件,

            listings
            true
       

    把true改成false

     (2)重新启动tomcat服务

    回退方案

    还原tomcat/conf/web.xml

    判断依据

    1、判定条件

    查看tomcat/conf/web.xml

    2、检测操作

    直接访问http://ip:8800/webadd

    实施风险

    重要等级

    备注

  • 相关阅读:
    以102flowers数据集为例训练ResNet50模型
    [debug/main.o] Error 1 QtCreator编译报错
    ImageNet Classification with Deep Convolutional Neural Networks
    自动化早已不是那个自动化了,谈一谈自动化测试现状和自我感受……
    <C++>详解list类
    VMware虚拟机---Ubuntu无法连接网络该怎么解决?
    【随想】每日两题Day.4
    三剑客之 sed
    MySQL中表的设计
    三季报的Expand 基于百融云高研发的Land
  • 原文地址:https://blog.csdn.net/CHENSMALLYUN/article/details/134485665