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

http->https 的 301 跳转请求也是会暴露 url 的吧

  •  
  •   leavic · 2022-02-08 15:18:00 +08:00 · 1348 次点击
    这是一个创建于 779 天前的主题,其中的信息可能已经有所发展或是发生改变。

    https 本身肯定是安全的,除了域名(不考虑 esni)和端口之外,url 后面的部分是不可见的。

    但是现在网站基本上都是 http+https 同步支持的,http 依靠 301 跳转到 https 来支持 https 访问,也就是会先发起一个 http 请求,然后服务器返回一个 301 代码,并在返回的内容中送回要跳转过去的 https 地址(基本上没意外的就是加了个 s)。

    当然一般的配置中,这个 301 跳转本身并不判断这个 url 是否存在,你任意提交 http 地址人家只是加个 s 返回给你而已,并不能通过这个 301 返回信息判断出某个 url 是否存在或有效。

    之所以提这个问题,是考虑一些特殊的应用(例如机场订阅、或者一些私人使用的资源)的存在,如果这类地址的编码有一定的规律或者特征可以匹配,其实 http 请求也是挺危险(例如某个域名下有大量匹配某个特征的 url 请求,然后都返回了 301),感觉这种情况下还是要彻底关掉 80 端口,让 tcp 握手都无法完成才比较安全。

    3 条回复    2022-02-08 16:28:41 +08:00
    muzuiget
        1
    muzuiget  
       2022-02-08 15:22:24 +08:00
    有什么问题,客户端发起 http 那一刻已经暴露了。
    hgc81538
        2
    hgc81538  
       2022-02-08 16:25:01 +08:00 via iPhone
    Hsts preload list
    adoal
        3
    adoal  
       2022-02-08 16:28:41 +08:00   ❤️ 1
    开 80 本来就是为了照顾敲下域名回车后默认请求 http 的浏览器以及现有收藏 URL 、现有 API caller 等 legacy 行为而不得已为之。如果不在乎兼容性,那当然应该关掉。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1082 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 22:46 · PVG 06:46 · LAX 15:46 · JFK 18:46
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.