13、Linux(Tomcat)中间件命令

Linux 环境下 Tomcat 中间件测评命令速查:部署目录定位、版本核查(对应入侵防范已知漏洞修补)、配置与访问日志核查、现场提示四组只读取证命令及速判口径。

定位:Tomcat / Nginx / Apache HTTPD 中间件的版本、目录与日志核查命令速查。 配套加固:21、Web中间件安全加固(管理台/AJP/版本隐藏等整改操作)。 适用版本:Tomcat 710.1、Nginx 1.181.28、Apache HTTPD 2.4。

使用说明:

  • 本文所有命令均为只读取证命令,不修改配置、不重启服务、不执行清除类操作;确需变更由被测单位运维方在授权下实施。
  • 命令回显本身即证据,须连同命令行一起截图;示例中的地址、账户、路径均为演示值,现场须替换为真实取证结果,并对个人信息与内网管理地址脱敏后再入报告。
  • 命令不存在或输出与示例差异较大时,先确认产品版本与部署形态(单机/集群/容器/云托管),再换用等效命令或转入配置文件、管理控制台取证,不得据命令缺失直接判不符合
  • 文中「默认」「一般」等表述均为初判倾向,须经上机核查 + 访谈 + 配置/制度核对三方印证后定论,并在报告中写明取证来源。

不适用标识说明:

  • 使用 【不适用】 明确标记现场可判定为不适用的控制点,并写明判定依据。
  • 依据 GB/T 28448-2019「按测评对象实际承载功能与数据处理范围判定」原则:控制能力由上层应用、统一认证平台、前置代理、堡垒机、宿主操作系统或云托管平台承载时,应注明测评单元边界后判定不适用或转由上位组件核查,不得机械按缺失判不符合。
  • 产品版本确实不提供该能力(如社区版无审计插件)时,须核查替代措施并按替代措施的实际效果定档,不得直接判不适用。

一、定位部署目录

ps -ef | grep tomcat          # 确认 tomcat 进程与部署目录(如 /usr/local/tomcat)
ps aux | grep nginx           # 确认 nginx 进程与配置文件路径
netstat -ntlp                 # 监听端口(8080/8005/8009、80/443)
whereis nginx                 # 定位二进制与配置
find / -name "catalina.sh" 2>/dev/null

二、版本核查(对应入侵防范:已知漏洞修补)

对应控制点:GB/T 22239-2019 8.1.4.4 入侵防范 a)~f)

判定要点:最小安装、非必要服务与高危端口已关闭、管理终端来源受限、有数据有效性检验、版本无已知高危漏洞且定期漏扫修补、上位部署入侵检测并能出示本对象告警 → 符合;部分措施到位(如有防火墙限制但库层未配来源校验、有漏扫无修补记录)→ 部分符合;管理端口无限制开放或存在已知高危漏洞未修补 → 不符合(高风险)。

取证要求:已安装组件/选件清单、监听与端口核查输出、来源限制配置截图与拒绝实测、约束或校验配置输出、版本与补丁记录、漏扫报告、上位 IDS/IPS 告警与处置工单。

cd /usr/local/tomcat
./bin/catalina.sh version                 # Tomcat 版本(含 Servlet 版本)
cat RELEASE-NOTES | grep Version          # 或从 RELEASE-NOTES 读版本
/usr/local/nginx/sbin/nginx -V            # Nginx 版本与编译参数(configure arguments)
httpd -v                                  # Apache HTTPD 版本
rpm -qa | grep -i nginx                   # 包管理安装的版本
  • 判定:版本与厂商安全通告比对;存在已披露高危 CVE 且未修补 → 入侵防范 e) 不符合或高风险(如 Tomcat AJP Ghostcat CVE-2020-1938)。

三、配置与日志核查

对应控制点:GB/T 22239-2019 8.1.4.3 安全审计 a)~d)

判定要点:审计功能已启用且实际产生记录、记录含时间/用户/事件类型/结果四要素、覆盖特权账户、审计数据受保护并留存 ≥6 个月、非审计管理员无法变更或清除 → 符合;开关已开但无审计策略、记录要素不全、仅本地留存或留存不足 → 部分符合;审计未启用且无第三方审计措施 → 不符合(高风险)。

取证要求:审计开关与策略配置截图、审计记录抽样(脱敏)、审计存放路径与权限核查结果、清理与转存任务配置、最早记录时间清单、第三方审计系统截图。

cd /usr/local/tomcat/conf && ls
cat server.xml                 # 端口/AJP/shutdown 端口/连接器配置
cat tomcat-users.xml           # 管理台账户(应为空或强口令)
cat logging.properties         # 日志配置
ls ../logs/ && tail -n 20 ../logs/catalina.out     # 日志内容与时间
cd /var/log/nginx && ls        # Nginx 日志目录(access.log/error.log)
  • 判定:管理台账户为空口令/默认口令 → 高风险;日志未外发或留存不足 6 个月 → 安全审计部分符合。

四、现场提示

  • 未启用常用命令查询版本时,可直接进入中间件目录查询,如 /usr/local/nginx/sbin/nginx -V(带 -v 显示版本,-V 连编译参数一并显示,用于确认是否编译了 http_ssl_module 等)。
  • Tomcat 判定重点不在命令而在 server.xml:shutdown 端口(8005→-1)、AJP 连接器是否配置 secret、管理台是否删除。

参考依据

关联文章