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


今年下半年才刚开始
25836 次点击
所在节点    信息安全
131 条回复
proxytoworld
2024-07-03 16:43:53 +08:00
也算是 glbc 的问题,syslog 不是异步安全的,openbsd 上面自己实现了异步安全的 syslog
@cnbatch
Garphy
2024-07-03 17:22:25 +08:00
这个包出漏洞是真的凶
cnbatch
2024-07-03 17:26:40 +08:00
@tool2dx 这个“花活”算不算花那要看系统吧。在 openbsd 就不算花了。大家都忘了一个前提,openssh 原本只是 openbsd 的内置组件,只不过顺手放出来给其他系统拿来用。

他们做开发做测试的时候必然优先考虑 openbsd 自家的规则。至于同样的写法在其他平台会出现什么怪事,或者冲突,或者 openbsd 属于正常的代码到了别的平台属于不规范的代码,应该都是能跑就行,没出事就不管,出事了再说。就像现在这样。
48y1951r9G8k7Zou
2024-07-03 18:25:19 +08:00
@cnbatch #118

也不能算是 glibc 的锅。glibc 的文档里明确指出 free() 是 AS-Unsafe 的: https://sourceware.org/glibc/manual/2.39/html_node/Freeing-after-Malloc.html

而且 POSIX 也没有要求 free() 必须是 async-signal-safe 的。有这个要求的函数列举在这里: https://pubs.opengroup.org/onlinepubs/9699919799/functions/V2_chap02.html

如果一定说是谁的过失,那只能是“将 OpenSSH 移植到 Linux”或者“认为 OpenSSH 在 Linux 上可用”的人,没有充分意识到(或者从测试用例中感知到)不同 libc 实现的差异,从而导致了兼容性缺陷

----

就好比某用户从二道贩子手里买了个进口家电,只支持 110V 交流电,但是二道贩子自己给改装了个国标插头,用户直接插到 220V 市电上,引发了安全事故。这时候用户是应该谴责电网( glibc ),还是原厂家( OpenSSH ),还是二道贩子(移植者)呢?

当然还是那句话,开源软件是 provided as is, without any warranty 的,用户应当为自己的安全负责。真出了安全事故,不管是 glibc 还是 OpenSSH 还是任何一个 Linux 发行版的负责人都没有义务补偿他。

That's the price you have to pay for freedom.
zx900930
2024-07-03 21:03:01 +08:00
@cnbatch
OpenBSD 没事因为用的 signal(SIGALRM, handler)调用的是重写过的 syslog_r()而不是 syslog()。
但是 FreeBSD 可是完全在影响范围内的、7 月 1 日发布的 13.3-RELEASE-p4 才修复了这个漏洞
https://www.freebsd.org/security/advisories/FreeBSD-SA-24:04.openssh.asc

还有这个漏洞不是什么没事,原文改进算法以后只要花
6-8 小时获得 32 位 debian 12.5 的 root shell
预估不到一个星期就能获得 64 位 Rocky Linux 9 的 root shell
论严重程度堪比当年的永恒之蓝,唯一区别就是没有直接放出漏洞利用工具来。
Spark100
2024-07-03 21:17:40 +08:00
@StinkyTofus centos 6 7 8 的 SSH 版本都很安全 都无敌了。
cnbatch
2024-07-03 22:21:57 +08:00
@zx900930
1. 对于 FreeBSD 是否受影响,既是,亦否:
https://forums.freebsd.org/threads/ssh-cve-2024-6387.94018/
“And no, the RCE that makes this an actual threat does not apply to FreeBSD (or other BSDs and illumos), but only to systems using gnu libc”

直接下定论说“FreeBSD 可是完全在影响范围内的”为时过早,甚至未必是正确结论(如果事后证明该漏洞没有 impact 到 FreeBSD 的话)。
昨天 opnsense 社区已经有人提到了 FreeBSD Security Team 为什么会发布漏洞,简单来说单纯就是“没发现冲击,不管怎样,先升级了再说”:
https://forum.opnsense.org/index.php?topic=41342.0
“There's no confirmation yet on FreeBSD, however the security team there decided they'll patch first and ask questions later - as Colin explained it on Twitter shortly after the vulnerability bacame public.”

对应推特原文:
https://x.com/cperciva/status/1807703216567865471
“unclear if exploitable on FreeBSD but we have an advisory out just in case.”
没错,just in case ,就是这么简单粗暴

于是才有了
https://www.freebsd.org/security/advisories/FreeBSD-SA-24:04.openssh.asc


2. 我原文写的是“这就是为什么 OpenBSD 本身没事”,这么清楚的描述还能理解成“连带 Linux 都没事”,我觉得实在是匪夷所思。
kaizceo8
2024-07-05 14:02:36 +08:00
以及升级过 但是外面 telnet ip 22 还是旧版本咋办?绿盟检查不通过
kaizceo8
2024-07-05 14:12:34 +08:00
@LingXingYue 请问按此升级过 ssh -V 版本变掉了 但是外面 telnet ip 22 还是旧版本咋办?绿盟检查不通过
kaizceo8
2024-07-05 14:27:21 +08:00
@kaizceo8 #129 晓得了:
#创建软链
mv /usr/sbin/sshd /usr/sbin/sshd.old
ln -s /usr/local/sbin/sshd /usr/sbin/sshd

systemctl restart sshd
billgong
2024-07-06 08:21:44 +08:00
@sunrain macOS 一般不开 OpenSSH-server 不受影响。况且你得看看是 Homebrew 的版本升级了还是系统绑的版本。

Sonoma 14.5 自带的是 OpenSSH_9.6p1

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

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

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

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

© 2021 V2EX