欢迎来到 黑吧安全网 聚焦网络安全前沿资讯,精华内容,交流技术心得!

你不在意的HTTPS证书吊销机制

来源:本站整理 作者:佚名 时间:2019-08-05 TAG: 我要投稿

缘起偶刷《长安十二时辰》,午睡时,梦到我穿越到了唐朝,在长安城中的靖安司,做了一天的靖安司司丞。当徐宾遇害消失的时候我不在司内,当时的情形我不得而知。后来徐宾醒了,据他描述说“通传陆三”是暗桩,险些致徐宾于死地。而擅长大案牍术的高智商人才居然被一个普通通传的几句话骗至险境,实在丢了我的脸。陆三是通传,熟知靖安司的号令传递系统望楼信号,他是暗桩的消息,传遍整个机构。这让张小敬和姚汝能认为望楼系统已无法完成消息保密传送的功能,其实他们根本不了解这望楼。

整个望楼系统由“传递系统+加密系统”组成,靖安司作为一个军事级别的机构,信息传递绝对是多重加密的。只看懂望楼图案,或者只有密码本都是破译不了密码的,对于通传陆三是暗桩的影响,也只需要更换密码本即可。这些可是我学了RSA非对称加密后设计的望楼系统,早就评估过这些风险了。即使HTTPS通讯中,丢了密钥也…嗯?如果HTTPS证书私钥丢了,会怎样?是不是也没法防范这个私钥被利用了?想到这个问题,我突然从梦中惊醒,去温故一下证书吊销机制。
疑问
HTTPS的证书过期是谁来判断?
HTTPS的证书过期是谁来判断?
证书的合法性又是谁检查的呢?
什么时候触发?
影响性能吗?
如何吊销证书?
HTTPS的请求是客户端(浏览器)发起的,他是如何知道证书被吊销的?
验证HTTPS证书的过程是什么样的?
HTTPS通讯过程大家都清楚,HTTPS的握手是在TCP握手完成后,流程都熟的很,但还是要温故一下:

1.第一个阶段,完成 Client Hello、Server Hello等握手。包含使用SSL版本、服务器和客户端的随机数、密码套件、数据压缩等参数响应。2.第二阶段,服务端把域名证书的公钥下发给浏览器(客户端),浏览器(客户端)校验证书合法性。3.第三阶段,客户端把自己的证书发送给服务端(证书登陆的情况下),服务端检测客户端证书等。
4.第四阶段,完成密钥协商、对称加密密钥交换。
(简称解释:RN: Random Number;PMS: Pre Master Secret;MS: Master Secret)
对于第二阶段中的证书检验这块,相信很多人都不太了解,甚至都不知道会检验什么内容,那么下面我们就来了解一下。
证书完整性验证使用RSA公钥解密来验证证书上的私钥签名是否合法,如果签名无效,则可认定证书被修改,直接报错。
证书有效性验证CA在颁发证书时,都为每个证书设定了有效期,包括开始时间与结束时间。系统当前时间不在证书起止时间的话,都认为证书是无效的。
证书吊销状态检测如果,证书在有效期之内需要丢了怎么办?需要吊销证书了,那么这里就多了一个证书吊销状态的检测。用户将需要吊销的证书通知到CA服务商,CA服务商通知浏览器该证书的撤销状态。来看一个证书吊销后的浏览器提醒:

Chrome返回了NET::ERR_CERT_REVOKED,并且拒绝继续访问,更不提供强制访问的接口,没了继续访问的手动点击链接。
验证发行者HTTPS数字证书的使用分两个角色:
证书发行方issuer,有签名密钥的私钥。
证书申请方subject,使用证书公钥进行身份验证的用户 浏览器检查证书的发行者字段与证书路径中上级证书的subject字段相同。
为了增加安全性,PKI在实现时,多数都验证了发型方的密钥、签名等信息是否跟当前证书的密钥相同。但对于信任链来说,根证书自己签发的,也就是说它们的issuer和subject是一样的。
同时,这些CA根证书都是被操作系统、浏览器等直接打入系统的。比如:

检查域名(IP)规范中间CA提供了对域名证书的管理以及颁发的颗粒度度控制。证书的生效范围会限于固定域名、域名范围(包括子域)或者固定IP。比如下图是https://www.baidu.com的HTTPS证书DNS信息。

上图所示,DNS范围包含了多个域名,同时二级以及二级以上域名都支持范围形式。以*通配义字符表示。但*.example.com的二级域名范围就不能包含a.b.example.com这个三级域名。同时,DNS范围也支持IP的,只是IP不支持范围形式,必须把所有IP列表都放入列表中。
检查策略约束法律策略相关检测(略)。
证书的吊销状态检测方式上面提到了浏览器(客户端)在验证证书合法性时的验证范围,我们暂时只关注证书吊销信息的检测,下面我们仔细来了解一下两种检测机制的实现原理。
1. Certificate Revocation Lists (CRL)CA会定期更新发布撤销证书列表,Certificate Revocation Lists (以下简称CRL),RFC 5280:Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile。CRL分布在公共可用的存储库中,浏览器可以在验证证书时获取并查阅CA的最新CRL。该方法的一个缺陷是撤销的时间粒度限于CRL发布期。只有在计划更新所有当前发布的CRL之后,才会通知浏览器撤销。各家签名CA厂商的策略不一样,有的是几小时,有的是几天,甚至几周。2015年,美国几所大学的学生论文中,统计了当时的CA证书吊销情况,如下图:

[1] [2] [3] [4]  下一页

【声明】:黑吧安全网(http://www.myhack58.com)登载此文出于传递更多信息之目的,并不代表本站赞同其观点和对其真实性负责,仅适于网络安全技术爱好者学习研究使用,学习中请遵循国家相关法律法规。如有问题请联系我们,联系邮箱admin@myhack58.com,我们会在最短的时间内进行处理。
  • 最新更新
    • 相关阅读
      • 本类热门
        • 最近下载