主要观点:发现 OpenSSH 服务器在基于 glibc 的 Linux 系统中的远程代码执行漏洞(CVE-2024-6387),涉及多个 OpenSSH 版本,可远程获取 root 权限,已针对不同版本展开研究和利用尝试,目前仍在研究 amd64 版本的利用,相关补丁和缓解措施已提出。
关键信息:
- OpenSSH 各版本情况:如 3.4p1、4.2p1、9.2p1 等版本的漏洞细节及利用方式。
- 漏洞原理:OpenSSH 服务器的 SIGALRM 处理程序中的信号处理程序竞争条件,导致 async-signal-unsafe 函数调用,影响特权代码。
- 利用方式:通过中断特定函数调用、利用内存布局和 heap 相关操作实现远程代码执行,不同版本利用细节不同。
- 时间相关:包括平均尝试次数、获取 root 壳所需时间等,以及不同版本的 timing 策略调整。
- 目标系统:主要针对基于 glibc 的 Linux 系统,OpenBSD 不 vulnerable。
- 后续研究:正在致力于 amd64 版本的利用,遇到一些问题和挑战。
重要细节: - 不同版本 OpenSSH 的理论、实践和 timing 细节,如 3.4p1 版本通过中断 free()调用实现,4.2p1 版本通过中断 pam_start()等,9.2p1 版本通过中断 malloc()调用等。
- 各版本 glibc 的相关特性,如 malloc 函数的行为、是否加锁等。
- 补丁和缓解措施,如 commit 81c1099 修复、删除或注释 async-signal-unsafe 代码、设置 LoginGraceTime 为 0 等。
- 时间线:包括与 OpenSSH 开发者和 distros@openwall 的联系时间等。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。