OpenSSH 9.0 于 2022-04-08 发布。它可以从ttps://www.openssh.com/ 上列出的镜像。
OpenSSH 是 100% 完整的 SSH 协议 2.0 实现,并且包括 sftp 客户端和服务器支持。
再次感谢 OpenSSH 社区
继续支持该项目,特别是那些做出贡献的人
代码或补丁、报告的错误、测试过的快照或捐赠给项目。有关捐赠的更多信息,请访问:https://www.openssh.com/donations.html
自 OpenSSH 8.9 以来的变化
==========================
此版本专注于错误修复。
可能不兼容的更改
--------------------------------
此版本将 scp(1) 不再使用旧的 scp/rcp 协议默认使用 SFTP 协议。
Legacy scp/rcp 执行远程文件名的通配符扩展(例如"scp host:* .") 通过远程 shell。这有副作用要求在文件名中使用双引号的 shell 元字符
包含在 scp(1) 命令行中,否则它们可以被解释作为远程端的shell命令。
这会产生一个潜在的不兼容区域:使用 scp(1) 时SFTP 协议不再需要这种挑剔而脆弱的引用,并尝试使用它可能会导致传输失败。我们认为无需在文件名中使用双引号 shell 字符是一个好处,不打算引入错误兼容性使用 SFTP 协议时 scp(1) 中的旧 scp/rcp。
另一个潜在的不兼容领域与使用远程
相对于其他用户主目录的路径,例如 -“scp 主机:~用户/文件 /tmp”。SFTP 协议没有本地方式展开 ~user 路径。但是,OpenSSH 8.7 及更高版本中的 sftp-server(8)支持协议扩展“[email protected]”来支持
这。
在不兼容的情况下,可能会指示 scp(1) 客户端使用使用 -O 标志的旧 scp/rcp。
新功能
------------
* ssh(1), sshd(8):使用混合 Streamlined NTRU Prime + x25519 key
默认交换方法(“[email protected]”)。
NTRU算法被认为可以抵抗未来启用的攻击量子计算机并与 X25519 ECDH 密钥交换配对(以前的默认值)作为对任何弱点的支持未来可能会发现的 NTRU Prime。这个组合确保混合交易所至少提供同样好的安全性作为现状。
我们现在正在做这个改变(即在加密之前——相关的量子计算机)以防止“立即捕获,解密后来”的攻击,其中一个可以记录和存储 SSH 的对手 会话密文一旦足够先进的量子计算机可用。
* sftp-server(8):支持“复制数据”扩展以允许服务器-
文件/数据的侧面复制,按照设计
草稿-ietf-secsh-filexfer-extensions-00。bz2948
* sftp(1):添加“cp”命令以允许 sftp 客户端执行
服务器端文件副本。
Bug修复
--------
* ssh(1), sshd(8): upstream: 修复 poll(2) 在通道输出时旋转
fd 在通道缓冲区中没有数据的情况下关闭。bz3405 和 bz3411
* sshd(8): 在服务器监听/接受循环中打包 pollfd 数组。可以
当 MaxStartups > RLIMIT_NOFILE 时导致服务器挂起/旋转
* ssh-keygen(1): 避免通过 find-principals 和 NULL deref
check-novalidate 操作。bz3409 和 GHPR#307 分别。
* scp(1):修复参数处理中的内存泄漏。bz3404
* sshd(8):不要尝试解析 sshd 中的 ListenAddress 指令 重新执行路径。它们在重新执行和解析错误后未使用(例如,如果主机的网络配置发生更改,则可能)可能会阻止连接被接受。
* sshd(8):当拒绝一个公钥认证请求时客户端使用未经批准或不受支持的签名算法在日志消息中包含算法名称以进行调试更轻松。
可移植性
------------
* sshd(8):重构平台特定的锁定帐户检查,修复
在具有 libiaf 和 shadow 的平台上出现不正确的 free()
密码(可能只有 Unixware)GHPR#284,
* ssh(1), sshd(8): 修复 scan_scaled(3) 中可能的整数下溢
解析 K/M/G/etc 数量。bz#3401。
* sshd(8):提供 killpg 实现(主要用于 Tandem NonStop)
GHPR#301。
* 检查丢失的 ftruncate 原型。GHPR#301
* sshd(8):交叉编译时默认不使用沙箱。在大多数当 FD 数量减少时,系统 poll(2) 不起作用使用 setrlimit,所以假设它在交叉编译时没有,我们无法运行测试。bz#3398。
* sshd(8):在 seccomp 沙箱中允许 ppoll_time64。应该修复沙盒某些(至少 i386 和 armhf)32 位 Linux 平台上的违规行为。
bz#3396。
* 改进对 -fzero-call-used-regs=all 的检测
配置脚本。
校验和:
==========
- SHA1 (openssh-9.0.tar.gz) = 05302aa4781e1a69db4261474ed940bd685afc24
- SHA256 (openssh-9.0.tar.gz) = 9I/FrLf5Gij/4NIPts9A8yWVi0ienyyMqjqn8s0hyLk=
- SHA1 (openssh-9.0p1.tar.gz) = 06dd658874dcd22d66311cf5999bd56c614de509
- SHA256 (openssh-9.0p1.tar.gz) = A5dDAhYenszjIVPPoQAS8eZcjzdQ9XOnOrG+/Vlyooo=
请注意,SHA256 签名是 base64 编码的,而不是
十六进制(这是大多数校验和工具的默认值)。PGP
用于签署版本的密钥可从镜像站点获得:
https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/RELEASE_KEY.asc
请注意,用于签署版本的 OpenPGP 密钥已被
为此版本旋转。新密钥已由前一个签名
提供连续性的关键。
原文始发于微信公众号(祺印说信安):OpenSSH 9.0说明
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论