在最近的安全公告中,FreeBSD 项目披露了 OpenSSH(SSH 协议套件的广泛使用实现)中的一个严重漏洞 ( CVE-2024-7589 )。此漏洞可能允许有心的攻击者以 root 权限远程执行任意代码,从而可能危及整个系统。
OpenSSH 是 SSH 协议套件的广泛使用实现,为远程 shell 访问和其他服务提供安全、加密的通信。该漏洞源于sshd
守护进程中的信号处理程序问题。当客户端在LoginGraceTime(默认为 120 秒)内无法进行身份验证时,将调用信号处理程序。不幸的是,此信号处理程序可能会调用一个日志记录函数,该函数并非为异步信号设计的安全函数,从而造成潜在的竞争条件。
此缺陷尤其令人担忧,因为sshd守护进程以完全 root 权限运行且未处于沙盒中,这意味着成功利用此竞争条件的攻击者可以以 root 级别访问权限在目标系统上执行任意代码。
CVE-2024-7589 的主要影响是存在以 root 身份执行未经身份验证的远程代码的风险。如果被利用,此漏洞可能允许坚定的攻击者完全控制易受攻击的 FreeBSD 系统,从而导致潜在的严重后果,包括数据被盗、服务中断以及未经授权访问关键基础设施。
此问题与今年早些时候解决的漏洞 (CVE-2024-6387) 密切相关。在这种情况下,错误代码与 FreeBSD 上 OpenSSH 中blacklistd的集成有关,这引入了不安全的信号处理程序。
对于无法立即更新 FreeBSD 系统的管理员,可以使用临时解决方法。通过在/etc/ssh/sshd_config文件中将LoginGraceTime设置为 0 并重新启动sshd ,可以缓解竞争条件。但是,这种解决方法也有风险 - 具体来说,它会耗尽所有MaxStartups连接,使系统容易受到拒绝服务 (DoS) 攻击。虽然这可以减轻远程代码执行风险,但它不是长期解决方案,只能用作权宜之计。
FreeBSD 项目强烈建议升级到受支持的稳定版本或发布/安全分支,其中包含修复此漏洞所需的补丁。以下 FreeBSD 版本已更新以解决 CVE-2024-7589:
-
FreeBSD 操作系统 14.0
-
FreeBSD 操作系统 14.1
-
FreeBSD 操作系统 13.3
升级后,管理员应重新启动sshd以应用更改并确保其系统受到保护以免遭受潜在的攻击。
相关链接:
https://www.freebsd.org/security/advisories/FreeBSD-SA-24:08.openssh.asc
原文始发于微信公众号(独眼情报):CVE-2024-7589:FreeBSD 中的 OpenSSH 预身份验证漏洞导致系统遭受 RCE
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论