V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
kiari
V2EX  ›  硬件

为什么像 netgear 和 linksys 这样的大公司,路由器的固件下载还没用 https 加强下安全。。

  •  
  •   kiari · 2019-04-05 10:53:41 +08:00 · 5815 次点击
    这是一个创建于 2089 天前的主题,其中的信息可能已经有所发展或是发生改变。

    发现很多路由器的公司固件下载的地址都还在使用 http,,难道他们固件被篡改后不会被安装到路由器中吗?

    现在路由器安全更新又很频繁,有时候一个月一次的安全固件就出来了,,

    http 下载东西还真容易被缓存什么的,而且官网又不给出 sha1 或者 sha256 来对比下,,,

    (最后吐槽下 safari 下载 zip 文件会自己自动解压出来,,万一下载到病毒不直接中毒啦,,好在还有关闭选项。。)

    24 条回复    2019-04-06 08:53:02 +08:00
    lutla
        1
    lutla  
       2019-04-05 11:02:22 +08:00
    解压 zip 怎么就会中毒了呢?
    mikeguan
        2
    mikeguan  
       2019-04-05 11:03:34 +08:00 via Android
    在 openwrt 下载东西,如果是 https 需要安装另外的 ssl 库,路由器空间有限。
    xratzh
        3
    xratzh  
       2019-04-05 11:09:38 +08:00 via Android
    linksys 新固件升级后还可以回滚。那就不需要担心安全
    mgrddsj
        4
    mgrddsj  
       2019-04-05 11:22:53 +08:00 via Android
    话说,Safari 下载到一个 zip bomb 不就完了?
    ysc3839
        5
    ysc3839  
       2019-04-05 11:28:13 +08:00 via Android
    既然是自己的固件,可以自带一个公钥来验证固件的。
    wancaibida
        6
    wancaibida  
       2019-04-05 11:29:33 +08:00 via iPhone
    openwrt 源默认也是 http 的 包找不到基本就是这的锅
    zhigang1992
        7
    zhigang1992  
       2019-04-05 11:35:47 +08:00
    这种东西里面内部做验证了吧,检查是否是 公司的 private key 签名过的。
    就像 ubuntu 的源也是 http 的,微信网络 payload 虽然是明文的但是 payload 做了加密的验证。
    所以被劫持了也没关系
    Les1ie
        8
    Les1ie  
       2019-04-05 11:49:24 +08:00 via Android   ❤️ 3
    Osk
        9
    Osk  
       2019-04-05 11:50:25 +08:00
    印象中 openwrt 好像是 http 下载, 但有 signature 检查?
    ryd994
        10
    ryd994  
       2019-04-05 12:32:30 +08:00
    @Les1ie
    @Osk
    包管理不需要 https 是因为包都是带签名的,而系统内置了 CA,所以可以验证签名
    这和固件是两回事,硬件没办法验证固件。
    secure boot 算一种,然而一般的路由器是不可能有这个功能的

    那系统内置的 CA 如何保证呢: https://www.debian.org/CD/verify
    所以其实是公开公钥的,大家可以自行验证

    部分路由器会在上传页验证上传的固件,所以不需要 https。要知道有没有这个功能很简单:用 hex 编辑器打开文件,看看哪个 ASCII 字符串,改两个字。一般字符串常量就是直接写进去的。部分固件是压缩档,那就需要解压再改。
    liyuhang
        11
    liyuhang  
       2019-04-05 12:37:25 +08:00
    我猜是懒吧,做了对自己又没好处,干脆不做了。
    tony601818
        13
    tony601818  
       2019-04-05 13:06:51 +08:00
    裴讯的固件是有签名的。

    话说回来,你觉得小白用户会自己升级固件吗?
    fangxing204
        14
    fangxing204  
       2019-04-05 13:16:53 +08:00 via Android
    下载最重要的应该是签名,https://whydoesaptnotusehttps.com/
    ifxo
        15
    ifxo  
       2019-04-05 13:21:17 +08:00
    没办法了,这些老公司都不重视安全,固件就没有验证吧,如果有的话怎么刷机玩呢
    zjl5918
        16
    zjl5918  
       2019-04-05 13:38:11 +08:00 via Android
    安全了你还会买他们新出的路由嘛
    sweeneylin
        17
    sweeneylin  
       2019-04-05 14:28:35 +08:00
    ? Safari 可以设置下载后不自动解压呀,在偏好设置-通用里最后一行
    sweeneylin
        18
    sweeneylin  
       2019-04-05 14:29:13 +08:00
    @sweeneylin 不好意思没看到最后一句。。。
    likuku
        19
    likuku  
       2019-04-05 14:34:29 +08:00
    @zhigang1992 反面例子,1 月份 debian/ubuntu 的 apt/apt-get 就因为没有 https 而爆出可被中间人攻击的漏洞:
    Linux 包管理器 apt/apt-get 发现远程代码执行漏洞 : https://www.infoq.cn/article/ZySCJ4w48mH*gYWK0ZYe
    weyou
        20
    weyou  
       2019-04-05 15:03:14 +08:00 via Android
    linksys 固件是有签名的啊,https 只是能防止 mitm 攻击,不能保证固件的正确性啊。这就像你安卓的 app 可以从各个 app 市场或者别人发的帖子里下载,那怎么保证它们没有被修改过,就是用签名保证的,签名不一致,你装都装不上。
    zingl
        21
    zingl  
       2019-04-05 18:33:41 +08:00
    https 只解决传输过程安全性;

    签名解决服务器端安全性,例如服务器被入侵、固件被替换;同时部分解决传输过程安全性,例如被 MITM 替换,说“部分”是因为比如 MITM 可以用旧版固件阻止路由器修补漏洞
    CallMeReznov
        22
    CallMeReznov  
       2019-04-05 18:46:18 +08:00
    系统都是自己写的,想安全自己搞个自效验不就好了,说白了还是成本,想不想解决的问题.
    testcaoy7
        23
    testcaoy7  
       2019-04-05 19:05:36 +08:00 via Android
    确实需要公钥签名,路由器系统可以自带 GPG
    kiari
        24
    kiari  
    OP
       2019-04-06 08:53:02 +08:00
    谢谢各位的回答,,,netgear 的有的有 https 有的没有的,,不知道怎么搞的。。为什么不直接全上,,而是有的产品有,有的产品没
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3472 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 10:59 · PVG 18:59 · LAX 02:59 · JFK 05:59
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.