V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
proxytoworld
V2EX  ›  问与答

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

  •  
  •   proxytoworld · 13 天前 · 933 次点击

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

    11 条回复    2024-04-17 09:56:33 +08:00
    344457769
        1
    344457769  
       13 天前   ❤️ 1
    hugi
        2
    hugi  
       13 天前 via iPhone
    有先进的验证机制,不怕
    cnleon
        3
    cnleon  
       13 天前
    都是有 md5 ,sha1 来校验的。
    mxalbert1996
        4
    mxalbert1996  
       13 天前 via Android
    @cnleon MD5/SHA1 这些摘要算法只能校验完整性,并不能防止中间人攻击。防止中间人攻击需要发送方用私钥签名,然后接受方用公钥验证。
    Reficul
        5
    Reficul  
       13 天前
    @mxalbert1996 #4

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

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

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

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

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

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

    Linux 更新根证书也要用包管理器,但是根证书没有更新会导致无法使用 https 链接,所以如果下载了一个老版本的 Linux 发行版(例如 Ubuntu 18.04),并且已经设置成 https ,会发现无法安装任何软件包。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   977 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 19:37 · PVG 03:37 · LAX 12:37 · JFK 15:37
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.