潜伏 6 年:Linux 内核曝高危漏洞,可窃取 SSH 主机密钥和 root 密码

Qualys 于 5 月 14 日披露名为 ssh-keysign-pwn 的本地提权漏洞,存在于 Linux 内核的 __ptrace_may_access() 中。该函数在 task->mm == NULL 的短暂退出窗口跳过 dumpable 检查,允许与目标进程相同 UID 的本地非特权用户在目标高权限进程释放内存但文件描述符仍打开时窃取敏感文件描述符(如 SSH 主机私钥或 /etc/shadow)。漏洞至少可追溯到 2020 年(约 6 年),PoC 包含针对 ssh-keysign 和 chage 的利用程序,影响所有稳定版内核及多种发行版。Linus Torvalds 已于 5 月 14 日发布补丁,未更新系统的主机密钥和 shadow 文件仍有被读取的风险。

5 月 16 日消息,网络安全公司 Qualys 于 5 月 14 日披露 ssh-keysign-pwn,该漏洞存在于 Linux 内核中,是本地提权相关漏洞,至少追溯到 2020 年,已存在至少 6 年时间。

在安全风险方面,任何未获特权的本地用户利用该漏洞,都可能读取服务器的 SSH 主机私钥,或直接拿到 /etc/shadow 文件中的密码 Hash。

在漏洞细节方面,该漏洞出在内核函数 __ptrace_may_access() 。这个函数负责判断一个进程能否检查另一个进程,但在 task->mm == NULL 的特殊状态下,它会跳过 dumpable 检查。

这个状态出现在进程退出的短暂窗口里:进程已经释放内存,但文件描述符还没关闭。攻击者正是利用这段极短时间,窃取仍处于打开状态的敏感文件描述符。

在攻击手法上,攻击者不需要 root 权限,也不需要额外特殊许可,只要调用者 UID 与目标进程一致,就能在目标高权限进程即将退出时抢走已打开的文件描述符。

公开的概念验证已经附带两个现成利用程序,其中 sshkeysign_pwn 针对 ssh-keysign,chage_pwn 则针对 chage,并可读取 /etc/shadow。

受影响范围也很广。原文称,截至 2026 年 5 月 14 日,所有稳定版 Linux 内核都受影响,已确认存在问题的发行版包括 Arch Linux、Debian、Ubuntu、CentOS 和 Raspberry Pi OS。

鉴于该漏洞的危险性,**Linus Torvalds 在 5 月 14 日当天就发布补丁修复。**如果你的 Linux 服务器或桌面系统还没装上当天发布的内核更新,那么 SSH 主机密钥和 shadow 文件理论上都可能被本地用户读取。

IT之家附上参考地址

  • ssh-keysign-pwn
  • Hash Suite - Windows password security audit tool. GUI, reports in PDF.
  • @encrypted_past

版权声明:本站文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明出处!

评论加载中...