OpenSSH 爆高危漏洞 CVE-2024-6387

2024-07-01 22:57:25 +08:00
 qwertooo
影响版本号 8.5p1 ~ 9.7p1......
https://www.reddit.com/r/msp/comments/1dsse9e/security_awareness_openssh_cve20246387_rce/

https://security-tracker.debian.org/tracker/CVE-2024-6387
https://ubuntu.com/security/CVE-2024-6387


今年下半年才刚开始
25835 次点击
所在节点    信息安全
131 条回复
gwy15
2024-07-03 00:06:05 +08:00
群晖还是 8.2p1 = =
hellolinuxer
2024-07-03 00:14:28 +08:00
ubuntu22.04

apt-get update
apt-get install openssh-server=1:8.9p1-3ubuntu0.10 -y
systemctl restart ssh.service
youtoshell
2024-07-03 00:17:28 +08:00
debian 11 还是 8.4p1
LingXingYue
2024-07-03 01:20:38 +08:00
@cat 现在软件源好像已经更新了
LingXingYue
2024-07-03 01:22:17 +08:00
@yyzh 挺好,不过感觉还是稍微慢了点..
我研究自己编译安装的时候都已经看到 github 上有可以攻击别人的项目了...
手快的说不定都已经攻击完别人了
kebamt
2024-07-03 01:37:46 +08:00
昨天 gcp 发邮件了,立马更新缝上漏洞了
youyoumarco
2024-07-03 09:03:18 +08:00
弱弱的问一下,用证书登录的受影响不
cheng6563
2024-07-03 09:06:33 +08:00
主要影响的 32 位系统,64 位没有验证,似乎攻击难度会更高。
vishun
2024-07-03 09:20:22 +08:00
@hellolinuxer #102 8.9 不是还在漏洞范围内吗?
cnbatch
2024-07-03 09:29:17 +08:00
@acess https://www.wiz.io/blog/cve-2024-6387-critical-rce-openssh
https://sploitus.com/exploit?id=1CF00BB8-B891-5347-A2DC-2C6A6BFF7C99
已经有人分析过了,造成这次爆漏洞,是因为 glibc 的 free()属于 async-signal-unsafe 函数,只要其他系统的 free()不是这样搞就不怕。
这就是为什么 OpenBSD 本身没事。像是 Windows 和 macos 、FreeBSD 之类的应该也不会有事。异步 free 其实不算罕见。FreeBSD 那边也不觉得这个漏洞会影响到自己,但还是先升级了版本再研究。
p0w1r2takuya
2024-07-03 10:23:03 +08:00
想问一下,有大佬把这个漏洞复现成功的吗
carity
2024-07-03 10:27:50 +08:00
lolizeppelin
2024-07-03 10:34:39 +08:00
你们这些 ubuntu ,连 dep 包都不会打么?
proxytoworld
2024-07-03 14:28:24 +08:00
@cnbatch 主要是 syslog 函数,漏洞没有直接调用 malloc 和 free ,而是通过 syslog 通过很长的调用链调用到这两个异步不安全函数。
Wyearn
2024-07-03 14:57:19 +08:00
漏洞利用难度比较高吧,很难利用
EvilYZ
2024-07-03 14:59:31 +08:00
ubuntu 可以不管,有 unattended-upgrade 自动修复
toby1902
2024-07-03 15:00:18 +08:00
cnbatch
2024-07-03 16:16:44 +08:00
@proxytoworld 准确地说,是 glibc 的 malloc 、free 函数并非异步安全。

我多次明确写出 glibc 就是这个缘故,祸根来自于 glibc
tool2dx
2024-07-03 16:30:17 +08:00
@cnbatch openssh 写法也有问题。哪里有 socket 120 秒登录超时,只依赖 SIGALRM 信号量,而不依赖计时器的。要知道有些平台,比如安卓,根本没有提供 SIGALRM ,也就永远不会超时。。

我去看了一眼 dropbear ,人家同样是做 sshd 的,就老老实实判断

time_t now = time(NULL);

if (now - ses.connect_time >= AUTH_TIMEOUT)
dropbear_close("Timeout before auth");

整花活没前途。
proxytoworld
2024-07-03 16:42:49 +08:00
@cnbatch 确实是 mallo 、free 的问题,但如果 SIGALRM 触发的时候不调用 syslog ,也就不存在这个漏洞了,修复也是这样做的,把 syslog 调用删了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1054091

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX