网络安全专家在 Red Hat Enterprise Linux 9 (RHEL 9) 中包含的 OpenSSH 软件包中发现了一个新漏洞。此问题被指定为 CVE-2024-6409,与之前发现的“regreSSHion”不同,它允许攻击者在无需身份验证的情况下在远程服务器上执行代码。该漏洞还影响 Fedora Linux 36 和 37 的软件包。
该漏洞与 SIGALRM 中断处理程序中的竞争条件有关,该竞争条件是由于执行信号处理程序中未设计用于异步操作的函数而引起的。处理程序由 LoginGraceTime 参数定义的超时触发,导致当前代码执行中断。调用使用动态内存分配的 syslog() 等函数可能会在触发 SIGALRM 时破坏 malloc 的内部结构。
CVE-2024-6409 与 grace_alarm_handler() 信号处理程序中 cleanup_exit() 函数的调用密切相关。在主 OpenSSH 代码库中,此调用不会导致问题,但 RHEL 9 和 Fedora 软件包中添加的补丁在 cleanup_exit() 中引入了对审计事件生成函数的调用。此函数不适用于信号处理程序。
导致该漏洞的补丁已应用于 RHEL 9 及其基于 OpenSSH 8.7p1 的衍生发行版。在最新的 Fedora 版本中,该问题并未出现,因为从 Fedora 38 开始,使用了较新的 OpenSSH 版本,其中 cleanup_exit() 函数保持不变。
为了缓解该漏洞,建议在 sshd 配置 (sshd_config) 中将 LoginGraceTime 参数设置为 0。此方法可消除该漏洞,尽管标准保护措施(例如使用“-e”选项禁用 syslog 日志记录)无效。
此次事件表明,即使是出于善意的软件修复也可能导致其他系统组件出现无法预见的安全后果。它强调了对任何修改进行彻底测试的重要性,尤其是对关键操作系统组件的修改。在信息技术领域,保持特定要求和整体安全性之间的平衡仍然是一项具有挑战性但必不可少的任务。
具体信息见:
https://www.openwall.com/lists/oss-security/2024/07/08/2
原文始发于微信公众号(独眼情报):CVE-2024-6409:RHEL 9、Fedora Linux 系统存在RCE
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论