OpenSSH 10.3:关键安全修复和新功能
2026年4月2日,发布了 OpenSSH 10.3——SSH 2.0 客户端和服务器以及 SFTP 的稳定版本。此次更新重点修复自 10.0 版本以来发现的错误和漏洞。它包括更新的组件、添加的补丁以及新的配置选项。先前的 10.0 版本引入了后量子算法 mlkem768×25_519-sha256 并移除了 DSA 支持。
10.3 版本加强了对配置错误利用的防护,并改进了密钥处理。开发者修复了 ssh、sshd 和 scp 中的问题,添加了对 IANA 协议和诊断工具的支持。
关键漏洞修复
主要变更聚焦于安全。以下是主要补丁:
- 修复了 ssh 中使用 %u 替换的用户名检查在 Match exec 中的漏洞,该漏洞允许执行 shell 命令。现在在 ssh_config 中进行替换之前验证特殊字符。
- 在 sshd 中,修复了 authorized_keys principals="" 与证书中包含逗号的名称匹配问题。名称为空的证书不再匹配此类选项。
- 在 scp 中,对于 root 拥有的文件,使用 -O 但不带 -p 时,在加载后清除 setuid/setgid 标志。
- 在 sshd 中,修复了 PubkeyAcceptedAlgorithms 和 HostbasedAcceptedAlgorithms 中的 ECDSA 处理:现在仅接受明确指定的算法。
这些修复防止了通过配置导致的特权提升和未经授权访问。
SSH Agent 和协议改进
添加了对 draft-ietf-sshm-ssh-agent 的兼容性支持:
- 在 ssh 和 sshd 与代理交互时支持 IANA 代码点(@openssh.com 保留)。
- ssh-agent 中的 'query' 扩展用于检查支持的功能。ssh-add -Q 选项请求扩展列表。
- sshd_config 中的 RevokedKeys 指令和 ssh_config 中的 RevokedHostKeys 现在接受多个文件。
ssh 添加了转义命令 ~I 以及选项 -O conninfo(连接信息)、-O channels(打开通道)。
新的 sshd 配置选项
sshd_config 的功能得到扩展:
- PerSourcePenalties 带有 'invaliduser' 用于对不存在用户的登录延迟(默认 5s)。支持小数值。
- GSSAPIDelegateCredentials 用于控制来自客户端的委托凭据。
ssh-keygen 现在支持以 PKCS8 格式写入 ED25519 密钥。添加了对通过 libcrypto 的 ed25519 签名的支持。
这些变更简化了生产环境中的管理和监控。
关键要点
- ssh_config 中的 %u 和 authorized_keys 中的 principals 的关键补丁将利用风险降至最低。
- 代理中的新 IANA 支持确保与新兴标准的兼容性。
- 诊断选项(-O conninfo、-Q)加速连接调试。
- sshd_config 扩展(RevokedKeys、PerSourcePenalties)提供更精细的访问控制。
- ED25519 的 PKCS8 格式简化了与现代加密库的集成。
这些更新的范围使 OpenSSH 10.3 成为企业服务器和客户端的必更新版本。在部署前请在测试环境中验证。
— Editorial Team
暂无评论。