CVE-2026-46333(ssh-keysign-pwn)内核漏洞缓解指南

CVE-2026-46333(ssh-keysign-pwn)内核漏洞缓解指南

漏洞概述

2026年5月15日,Linux内核中一项信息泄露安全漏洞被公开披露。该漏洞由Qualys研究团队上报,并已通过主线内核代码完成修复。公开后不久,相应的概念验证(PoC)利用程序也随之公布。该漏洞被分配了编号CVE-2026-46333,根据PoC利用程序的特征,也被称为“ssh-keysign-pwn”。

这是一类条件竞争(race condition)漏洞,可导致无特权的本地用户读取系统中的敏感文件。PoC演示了如何利用该漏洞获取/etc/shadow文件内容(其中包含本地用户的哈希密码)以及OpenSSH服务器主机私钥。后者可能被用于SSH中间人攻击,或影响基于主机认证(host-based authentication)的安全性。

CISA为该漏洞分配了CVSS 3.1评分5.5(中等严重性),Canonical认同该评分。但Ubuntu将其安全优先级评定为“高”,原因是无特权用户可借此窃取本地敏感信息。本文介绍一种缓解措施,可阻止漏洞被利用,代价是无特权用户将无法使用调试工具(如gdb和gcore)。

漏洞影响

漏洞的核心机制是:当SUID或SGID可执行文件在退出时仍然保持敏感文件打开状态,攻击者可通过调用该特权程序,在其退出的一小段窗口内,利用ptrace()系统调用检查被调用进程的内存,从而读取这些文件的内容。具体已演示的利用场景包括:

  • 通过SGID程序/usr/bin/chage读取/etc/shadow文件。该文件包含本地用户的密码哈希值,攻击者需要额外进行暴力破解才能还原明文密码。Ubuntu使用的密码哈希算法强度较高,但前提是用户密码符合当前最佳实践。
  • 通过SUID程序/usr/lib/openssh/ssh-keysign读取OpenSSH服务器主机私钥。这些私钥用于向客户端证明服务器身份,防止中间人攻击。此外,主机密钥还用于基于主机的认证(host-based authentication)场景,泄露后可能导致部署了该认证方式的环境中出现用户冒充风险。

在容器部署环境中,可被泄露的信息仅限于容器内部,通常不会对攻击者产生实际价值。

受影响的发布版本

在Ubuntu系统中,漏洞修复将通过Linux内核镜像包分发。在内核安全更新可用之前,可按以下说明应用缓解措施。注意,缓解措施会影响调试工具(如gdb),但一旦内核更新完成,便不再需要此措施。

发布版本 软件包名称 修复状态
Trusty Tahr (14.04 LTS) linux 受影响
Xenial Xerus (16.04 LTS) linux 受影响
Bionic Beaver (18.04 LTS) linux 受影响
Focal Fossa (20.04 LTS) linux 受影响
Jammy Jellyfish (22.04 LTS) linux 受影响
Noble Numbat (24.04 LTS) linux 受影响
Questing Quokka (25.10) linux 受影响
Resolute Raccoon (26.04 LTS) linux 受影响

如何判断是否受影响

上表中列出的所有Ubuntu发布版本均受影响,无例外。

手动缓解方案

缓解措施的核心是禁止无特权用户通过ptrace()系统调用附加到其他进程。此功能通常被调试器使用。通过设置kernel.yama.ptrace_scope sysctl参数,可以限制该调用的使用条件。Ubuntu默认值为1,要求攻击者的进程与目标进程存在祖先-后代关系。以下两个值可进一步缩小范围:

  • 2:禁止没有CAP_SYS_PTRACE权限的用户使用ptrace(),大多数用户不具备该能力。因此攻击者通常无法利用此功能。但这也意味着无特权用户将无法使用依赖ptrace的调试工具(如gdb和gcore)。
  • 3:完全禁用通过ptrace()附加到进程的功能。所有用户(包括root)的调试工具都会受影响。

注意:如果将sysctl设置为3,在系统重启之前无法更改该值。

以下命令可立即更改当前运行值,并创建持久化配置文件(/etc/sysctl.d/99-CVE-2026-46333.conf)以在重启后保持该设置。我们建议将值设为2作为足够的缓解措施。若需使用3,可相应调整命令。

echo kernel.yama.ptrace_scope=2 | sudo tee /etc/sysctl.d/99-CVE-2026-46333.conf
sudo sysctl -p /etc/sysctl.d/99-CVE-2026-46333.conf

撤销缓解措施

在内核安全更新可用并安装后,可移除该缓解配置:

sudo rm /etc/sysctl.d/99-CVE-2026-46333.conf
sudo sysctl kernel.yama.ptrace_scope=1

建议不要将该参数设为0,因为这样做会禁用该特性的保护功能,具体说明可参考此文档


关注微信号:智享开源 ,访问网站:www.imcn.me

原文链接:https://ubuntu.com//blog/ssh-keysign-pwn-linux-vulnerability-fixes-available

投稿作者 作者网站

评论列表

发表评论

你必须 登录 才能发表评论.

为您推荐


请支持IMCN发展!

谁在捐赠

微信捐赠 支付宝捐赠
微信捐赠 支付宝捐赠
ta的个人站点

发表文章4261篇

关注我的头条 不要放弃,百折不挠,坚强、自信。


扫码关注公众号:智享开源

最新科技信息


[blog_mailer_subscribe]

归档

近期评论

💬 和我聊聊