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

证书有效期大于域名有效期的情况下,域名不续费被人抢注,是不是就等于拥有了其他人域名的 SSL 证书

  •  
  •   oblivion · 2019-04-02 13:18:58 +08:00 · 3805 次点击
    这是一个创建于 2062 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近在给公司的金融接口续签 SSL,发现签发 SSL 并没有校验域名有效期,突然异想天开想到一个问题:

    比如我持有 xxx.xxx 域名

    • 1.域名明天过期
    • 2.去购买一份时间最长的 DV SSL 证书(目前似乎最长 3 年,一般 2 年)
    • 3.域名不续费
    • 4.域名删除
    • 5.域名在证书有效期内被抢注

    在这种情况下域名的上一个主人持有的 SSL 证书似乎是一直有效的,这种情况下是否存在安全问题?

    21 条回复    2019-04-11 11:28:10 +08:00
    dorentus
        1
    dorentus  
       2019-04-02 13:27:03 +08:00 via iPhone
    3 到 4 之间的时间很长
    virusdefender
        2
    virusdefender  
       2019-04-02 13:28:02 +08:00
    是有效的,除非中间人,正常情况下感觉也做不了什么。
    FanError
        3
    FanError  
       2019-04-02 13:31:59 +08:00 via iPhone
    证书不是有 key 的吗?抢注人没这个 key 他怎么配 ssl,当然他也可以自己申请一个 ssl,但这个和你那个不是同一个啊?

    我是这么理解的。
    FanError
        4
    FanError  
       2019-04-02 13:33:50 +08:00 via iPhone
    似乎看错了,问的是上家的 key 是否有效。0.0
    ivyliner
        5
    ivyliner  
       2019-04-02 13:40:26 +08:00
    不会有安全问题. 一个域名可以签发多个 SSL 证书, 只要你有域名的管理员权限. 为什么无法进行中间人攻击? 因为别人的会重新申请一个 SSL 证书, 然后在 webserver (nginx) 上部署对应的 key, 您手里并没有这个 key, 所以无法进行中间人攻击. 您手里的 SSL 证书只能说是 Common name 是对的. 当然如果您可以进行域名劫持的话, 那确实是可以进行中间人攻击.
    cjpjxjx
        6
    cjpjxjx  
       2019-04-02 13:44:06 +08:00 via iPhone   ❤️ 1
    你租了一间房子
    装了一把锁,能用三年(假设)
    一年后没有继续交租金,房子被房东收回(所有的钥匙都还在你这)
    房子被租给下一个租户
    问:你原来的钥匙还能打开这个房间吗
    zxp
        7
    zxp  
       2019-04-02 13:45:37 +08:00
    新注册的域名所有人可以去申请原证书作废
    kaneg
        8
    kaneg  
       2019-04-02 14:16:06 +08:00 via iPhone
    理论上如果终端域名被劫持了是可以被欺骗。
    当然如果下家知道这个情况,在证明自己是当前的实际持有人,可以向上家的 CA 申请吊销该证书。
    webjin1
        9
    webjin1  
       2019-04-02 14:21:30 +08:00
    #3 #5 回答可以解楼主疑惑。
    Lax
        10
    Lax  
       2019-04-02 15:11:28 +08:00
    看了楼主发的这个域名,
    注册有效期是 Registry Expiry Date: 2024-03-07T19:21:51Z
    证书有效期是 Expires: Thursday, April 2, 2020 at 20:00:00 China Standard Time
    oblivion
        11
    oblivion  
    OP
       2019-04-02 15:56:22 +08:00
    @virusdefender
    @FanError
    @ivyliner
    @cjpjxjx
    那如果是刻意造成这种情况并且可以中间人攻击的话,中间人使用旧主人申请的证书,客户端上是没法区分的吧(新主人买 EV 证书可破?)
    faceair
        12
    faceair  
       2019-04-02 16:01:10 +08:00
    理论上可行。但如果之前的证书被下家申请吊销,客户端 OCSP 查询就会失败。
    Tink
        13
    Tink  
       2019-04-02 16:17:16 +08:00
    好像没有什么用啊,新持有人会签发新的证书,会有新的密钥对啊
    oblivion
        14
    oblivion  
    OP
       2019-04-02 16:23:19 +08:00
    @Tink
    某些特定情况下似乎可以用来做中间人攻击
    客户端 ->中间人 (旧主人申请的证书的密钥对)->服务器(新主人申请的证书的密钥对)
    xenme
        15
    xenme  
       2019-04-02 16:46:32 +08:00
    @Tink
    @FanError
    @ivyliner
    @cjpjxjx
    @webjin1

    如果下家不知道的话,肯定存在中间人的风险,因为老的证书并没有失效。
    Tink
        16
    Tink  
       2019-04-02 16:47:37 +08:00 via iPhone
    @xenme #15 但是老的证书也没有部署呀
    zn1997
        17
    zn1997  
       2019-04-02 17:02:00 +08:00
    如果说从中间人攻击的角度考虑,只要你能签出来证书,都是可以拿来用的。但是域名不在你手上的情况,要是想搞一个证书,这就看证书发行商的验证机制做的如何了。
    xenme
        18
    xenme  
       2019-04-03 06:09:43 +08:00 via iPhone
    @Tink 比如劫持到 dns 或者中间链路等,你首先访问的是攻击的人的服务器,攻击的人部署的是旧的证书和 key,因为没有被吊销,所以对用户来说依然是可信的,访问并没有任何问题。

    攻击者收到请求后代用户发起请求到真正的服务器,此时攻击者就是个普通客户端,但是中转一下就已经实现了中间人并查看了所有的连接请求。
    ivyliner
        19
    ivyliner  
       2019-04-03 10:11:28 +08:00
    @xenme @oblivion 你们是对的. 中间人攻击确实是有效的.
    Williamp
        20
    Williamp  
       2019-04-08 14:58:33 +08:00
    The domain (which will expired by tomorrow) for which you have already renewed SSL certificate, the SSL certificate is effective (depending on the validity of the certificate) also after the expiration of the domain, if you renew that same domain and server is also same. But if server is different then you will have to reissue SSL certificate for that domain. Mostly reissue feature comes with mostly certificate authority SSL certificates https://www.clickssl.net/ssl-certificate-authorities
    TrustOcean
        21
    TrustOcean  
       2019-04-11 11:28:10 +08:00
    这种情况下新的域名所有权人可以通过 crt.sh 查询已经签发且不再受控的有效证书信息, 可向 CA 汇报进行 revoke。可能最简单的方式是您在 CA 处重新申请新的 SSL 订单并且验证域名所有权后才能实现此操作。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1216 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 18:26 · PVG 02:26 · LAX 10:26 · JFK 13:26
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.