远程竞争条件型漏洞
OpenSSH 也出现过远程竞争条件型漏洞:CVE-2024-6387(regreSSHion 类)在特定条件下可能被未认证的远程攻击者触发信号处理路径的问题,进而在 sshd 上以 root 身份执行代码。官方给出的缓解手段是缩短或关闭 LoginGraceTime 并配合连接限速,但这些只是权宜之计:拿到修复版本后应尽快升级,并把参数恢复到合理值。
基本信息
| 适用平台 | Linux(OpenSSH 服务端,glibc 环境) |
|---|---|
| 核查对象 | sshd 版本与发行版修复公告 |
| 缓解参数 | LoginGraceTime 设为 0 或较小值,配合连接限制 |
| 验证命令 | ssh -V、sshd -T、包版本查询 |
| 风险等级 | 高 |
典型使用场景
- 公网暴露的 SSH 服务:优先核查并择机升级
- 应急缓解:补丁尚不可用时先调整 LoginGraceTime
- 资产清点:确认哪些主机的 sshd 已升级到修复版本
- 合并维护窗口:把 sshd 升级与其它变更合并安排
- 合规取证:记录缓解措施与升级时间的完整过程
版本与缓解
版本与缓解
ssh -V 2>&1; sshd -V 2>&1 | head -2
rpm -q openssh openssh-server 2>/dev/null; dpkg -l openssh-server 2>/dev/null | tail -2
sshd -T 2>/dev/null | grep -i logingracetime
# 应急缓解(示例,具体数值按发行版公告与业务窗口确定):
# /etc/ssh/sshd_config 中设置 LoginGraceTime 0 或较小值
sudo sshd -t && sudo systemctl reload sshd
sudo systemctl status sshd --no-pager | head -5输出逐项读法
| 命令/字段 | 含义 | 判读要点 |
|---|---|---|
| ssh -V | 客户端与服务端版本字符串 | 含发行版补丁标识,勿只看主版本 |
| sshd -T 的 LoginGraceTime | 登录宽限时间 | 为 0 表示不设宽限,属于缓解配置 |
| rpm -q openssh-server | 已装包版本 | 与公告对照确认是否含修复 |
| dpkg -l openssh-server | Debian 系包状态与版本 | 状态非 ii 说明安装不完整 |
| 服务状态 | reload 后 sshd 是否正常 | 异常需立即回退配置 |
版本判读以发行版公告为准:RHEL 与 Debian 常以 backport 方式修复,主版本号可能看起来仍然偏旧。
落地要点
- 缓解配置与正式升级分开记录:缓解只是过渡,不能替代升级
- 调整 sshd 配置后用 sshd -t 校验语法再 reload,避免重启失败
- 升级前保留一个已登录会话,升级后确认密钥与口令认证均正常
- 把 LoginGraceTime 的取值写进运维手册,恢复正常值前先确认环境已修复
- 公网暴露的 SSH 优先安排升级或先收敛访问来源
LoginGraceTime 设为 0 会让未认证连接可长时间挂起,带来资源耗尽的副作用:拿到修复版本后应恢复正常取值。