为什么各大 Linux 发行版的更新源没有上 https

2024-04-16 13:05:27 +08:00
 proxytoworld

如题,发现 freebsd 、ubuntu 、kali 等发行版的更新源没有上 https ,都是 http ,不怕被中间人攻击吗

1352 次点击
所在节点    问与答
11 条回复
344457769
2024-04-16 13:21:20 +08:00
7VO54YYGvw3LOF9U
2024-04-16 13:28:18 +08:00
有先进的验证机制,不怕
cnleon
2024-04-16 13:39:45 +08:00
都是有 md5 ,sha1 来校验的。
mxalbert1996
2024-04-16 13:45:22 +08:00
@cnleon MD5/SHA1 这些摘要算法只能校验完整性,并不能防止中间人攻击。防止中间人攻击需要发送方用私钥签名,然后接受方用公钥验证。
Reficul
2024-04-16 13:56:13 +08:00
@mxalbert1996 #4

这个中间人似乎除了看你下载了什么以外,也做不了什么事情。 因为下载的内容是有校验的。
proxytoworld
2024-04-16 14:20:41 +08:00
@Reficul 能看到也挺恶心的
IvanLi127
2024-04-16 19:49:53 +08:00
@Reficul 如果单纯校验,并且他校验时用来对比的参考散列值也就 http 请求获取的话,换成恶意文件对应的值返回给包管理器不就 GG 了。得至少上签名验一验才安全吧。
YGHMXFAL
2024-04-16 21:11:14 +08:00
这个问题,和我的最新发帖,是不是很像

在发行版中,整个生态的信任链的根是开发团队拿来签名地 GNUPG 私钥,而公钥预置于 ISO 中,包管理器默认自动校验

如果包有任何传输错误/恶意篡改,校验就失败,包管理器就拒绝安装它

使用 HTTP 来分发包,问题在于:

①ISP(还有中间若干设备)会知道你下载了哪些包,这在某些国家/某些时刻可能会对你不利,比如说 debian 官方源里有 TOR/SS 这些,如果你走 HTTP 安装这些,难说会不会上关照名单

②楼上也有大佬说了,特定安全更新可能会被阻断,以便利用你从其它渠道修复该漏洞之前的这段时间差来作恶,因此发行版官方非常不热衷于安全源的镜像建设,就怕这些镜像会选择性供应/延迟供应安全补丁
proxytoworld
2024-04-16 22:45:39 +08:00
@YGHMXFAL 第二点很有道理,针对某些特定群体攻击。
flynaj
2024-04-17 00:53:35 +08:00
你说的这些发行版没有用过,Debian 默认是 https 源,还有 openwrt 默认也是 https. 确实是性能问题,这些包都是要签名的。
mouyase
2024-04-17 09:56:33 +08:00
提出一个其他人没说的原因。

Linux 更新根证书也要用包管理器,但是根证书没有更新会导致无法使用 https 链接,所以如果下载了一个老版本的 Linux 发行版(例如 Ubuntu 18.04),并且已经设置成 https ,会发现无法安装任何软件包。

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

https://ex.noerr.eu.org/t/1032901

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

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

© 2021 V2EX