OpenSSH 10.6p2紧急更新:257字节密码绕过认证
IT之家 11 月 6 日消息,科技媒体 The Hacker News 最新报道称 OpenSSH 项目昨日(11 月 5 日)发布紧急更新 10.6p2,紧急修复一个允许用 257 至 1,024 字节长密码绕过 SSH 认证的漏洞。 报道指出攻击者若能访问目标服务器的 SSH 端口,无需真实密码,只需知道一个未设
科技媒体 The Hacker News 报道,OpenSSH 项目在 11月5日推出紧急更新 10.6p2,修掉一个能用 257 至 1,024 字节长密码绕过 SSH 认证的漏洞。

按报道说法,攻击者只要能连上目标服务器的 SSH 端口,手里不必有真实密码。知道一个没设密码的账户名,再提交 257 至 1,024 字节的长密码,就能登进这个账户。相关图片如下:

触发条件被该媒体限定在特定场景里:服务器运行的是未启用 PAM 的openssh-server,密码登录处于开启状态,系统里存在密码字段为*的无密码账户,并且至少还有一个账户用的是$5$ 或 $6$哈希密码。Alpine Linux 默认构建的 OpenSSH 正好满足前两项,风险不能小看。
问题出在 sshd 与 musl 库的crypt()函数的交互上。无密码账户的存储字段太短、给不出盐值时,sshd 会去借别的账户的盐值;密码超过 256 字节时,musl 返回*,这正好对上无密码账户的存储值,登录就被错误放行。OpenSSH 项目表示,该问题可能从 2016 年起就存在。
受影响的并不止 Alpine。安全研究人员点出,OpenWrt、Buildroot、Yocto 等基于 musl 的系统同样要排查。OpenWrt 默认用的 Dropbear 不受影响,只有管理员另外装了 OpenSSH 服务器才可能中招。
Alpine 已针对 3.16 至 3.24 等多个版本放出修复包,3.21.10、3.22.8、3.23.8、3.24.4 等点版本也已带上修复。管理员应执行apk upgrade -U -a更新软件包并重启 sshd 服务。一时升不了级的,要马上把PasswordAuthentication 设为 no关掉,改为用 SSH 密钥登录。
OpenSSH 提醒,日志里若出现针对root、alpineOpenSSH 表示,只要日志中出现“Accepted password”记录——哪怕对应的是仅用密钥登录的账户——又或者无法排除有人异常登录,这台主机就该按已被入侵处理,并着手排查doas同时要核查使用记录、是否冒出新建用户、文件有无改动以及授权密钥的情况。到眼下为止,还没有出现利用该漏洞发起攻击的报告,CVE 编号也尚未分配。