温馨提示×

Linux环境下Tomcat安全漏洞防范

小樊
31
2025-12-06 23:22:00
栏目: 网络安全

Linux环境下Tomcat安全漏洞防范

一 近期漏洞与修复基线

  • 近期需优先处置的漏洞与修复版本如下(如仍在运行旧版本,建议立即升级):
漏洞编号 风险级别 影响范围 修复版本
CVE-2025-55752 高危(特定配置可达RCE) Tomcat 11.0.0-M1–11.0.10、10.1.0-M1–10.1.44、9.0.0.M11–9.0.108 11.0.12、10.1.47、9.0.110
CVE-2025-55754 中危 Tomcat 11.0.0-M1–11.0.10、10.1.0-M1–10.1.44、9.0.0.40–9.0.108 11.0.12、10.1.47、9.0.110
CVE-2025-61795 中危(DoS) Tomcat 11.0.0-M1–11.0.11、10.1.0-M1–10.1.46、9.0.0.M1–9.0.109 11.0.12、10.1.47、9.0.110
  • 官方修复版本已发布,建议直接升级至:Tomcat 11.0.12、10.1.47、9.0.110。如暂时无法升级,应结合下文的临时缓解措施降低风险。

二 立即执行的加固清单

  • 升级与补丁管理
    • 将 Tomcat 升级至已修复的安全基线版本;建立变更与回退预案,先在测试环境验证后再上线。
  • 运行账户与文件权限
    • 禁止以root运行,创建最小权限专用用户启动 Tomcat;限制安装目录权限(如仅属主可读写执行)。
  • 管理应用与示例组件
    • 删除webapps下的docs、examples、host-manager、manager、ROOT等默认应用;如无管理需求,可移除或限制对管理应用的访问。
  • 端口与协议
    • 仅开放必要端口(如 HTTP/HTTPS);如不使用 AJP,在 server.xml 中关闭 8009/AJP 连接器;必要时修改默认 8080 端口。
  • 部署与上传安全
    • 关闭自动部署/热部署(autoDeploy、deployOnStartup),避免被植入恶意 WAR;限制或禁用PUT/DELETE等危险 HTTP 方法;对上传目录禁用脚本执行(如 WEB-INF、临时上传目录)。
  • 目录浏览与信息泄露
    • web.xml 中将目录列表设为 false;隐藏或修改 Server 响应头与版本信息,减少指纹暴露。
  • 加密与访问控制
    • 启用 SSL/TLS(配置 HTTPS);仅放通必要来源 IP;对管理接口实施强认证、RBAC与来源限制。
  • 日志与监控
    • 启用并定期审计访问日志catalina.out,对异常请求、失败登录、PUT/DELETE 滥用等进行告警;保留足够留存周期。

三 关键配置示例

  • 关闭 AJP 连接器(server.xml)
    <!-- 注释或删除 AJP 连接器 -->
    <!-- <Connector protocol="AJP/1.3" port="8009" redirectPort="8443" /> -->
    
  • 禁用目录浏览(web.xml)
    <servlet>
        <servlet-name>default</servlet-name>
        <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
        <init-param>
            <param-name>listings</param-name>
            <param-value>false</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>
    
  • 限制危险 HTTP 方法(web.xml,在需要保护的应用中配置)
    <security-constraint>
        <web-resource-collection>
            <web-resource-name>Restricted</web-resource-name>
            <url-pattern>/*</url-pattern>
            <http-method>PUT</http-method>
            <http-method>DELETE</http-method>
            <!-- 可按需添加 TRACE 等 -->
        </web-resource-collection>
        <auth-constraint/>
    </security-constraint>
    
  • 启动与权限(systemd 示例)
    # /etc/systemd/system/tomcat.service
    [Unit]
    Description=Apache Tomcat
    After=network.target
    
    [Service]
    Type=forking
    User=tomcat
    Group=tomcat
    Environment="JAVA_HOME=/usr/lib/jvm/java-11-openjdk"
    ExecStart=/opt/tomcat/bin/startup.sh
    ExecStop=/opt/tomcat/bin/shutdown.sh
    Restart=on-failure
    
    [Install]
    WantedBy=multi-user.target
    

四 临时缓解与验证

  • 针对 CVE-2025-55752(URL 重写绕过)
    • 若未使用 RewriteValve/重写规则,请立即禁用;如必须使用,避免在重写规则中对路径进行解码或规范化后再匹配,确保对 /WEB-INF//META-INF/ 的访问始终受限;同时临时禁用 PUT 或 WebDAV 功能,直至完成升级。
  • 针对 CVE-2025-55754(控制台 ANSI 转义序列注入)
    • 该问题主要影响 Windows 控制台环境;Linux 环境风险较低。若必须在 Windows 上运行,建议禁用控制台 ANSI 或升级至已修复版本。
  • 针对 CVE-2025-61795(多文件上传 DoS)
    • 限制单次/并发上传大小与速率,设置合理的上传目录清理策略,监控 临时文件目录与磁盘使用;尽快升级至修复版本。
  • 通用验证
    • 使用 nmap/ss 确认仅开放必要端口;访问不存在资源验证404而非目录列表;检查响应头不含 Server 版本;对管理口实施来源 IP 白名单与强认证;查看 catalina.out 与访问日志确认无异常 PUT/DELETE 与方法滥用。

0