sshd(8)中存在一处条件竞争漏洞,如果客户端在120秒内没有进行身份验证(由LoginGraceTime定义的设置),则sshd的 SIGALRM 处理程序会以一种非异步信号安全的方式异步调用,成功的利用此漏洞可以导致远程攻击者以root的权限执行远程代码。
影响范围
8.5p1 <= OpenSSH < 9.8p1
解决建议
1、建议升级至安全版本。
2、利用安全组设置 ssh端口仅对可信地址开放。
3、可在配置文件中将 LoginGraceTime 设置为 0
修改LoginGraceTime
在默认情况下,使用者在尝试链接ssh链接后,会进入输入密码的界面,在没有修改LoginGraceTime参数时,该页面会一直存在,也就是说,ssh客户端和服务器之间的链接会长期存在,而这样则会耗费服务器资源,也会带来一些安全问题,在设置LoginGraceTime参数后,就可以使得密码输入界面在长时间没有成功连入后,自动断开。
在配置文件中,LoginGraceTime参数也是用#过滤的,在默认情况下不生效,我们可以删除#,使得该参数生效。
参考链接
https://avd.aliyun.com/detail?id=AVD-2024-6387
https://www.qualys.com/2024/07/01/cve-2024-6387/regresshion.txt