百度安全:最佳HTTPS证书部署实践
发布日期:2017-08-21一、全网HTTPS使用和安全概况
百度在2015年3月将搜索服务全站HTTPS化以来,HTTPS正被越来越多的网站和企业使用。但是我们发现,进行正确的HTTPS配置和安全部署情况并不乐观,安全指数分析了全网13288198个网站,其中有1089693个网站使用了HTTPS,占比8.2%。使用HTTPS的网站中有1080884个网站存在配置或安全问题,占比99.19%。(2017年3月1日数据)
中国互联网网站HTTPS使用和安全情况:
我们希望:通过使用HTTPS带来的安全改善、HTTPS证书有效性、HTTPS安全部署、HTTPS漏洞等多个角度,推进中国互联网网站提升HTTPS安全,避免被浏览器HTTPS危险、不安全提示和访问拦截。
二、使用HTTPS带来的安全改善
1. 更好地保护用户的隐私
在HTTP时代,用户所有浏览数据都是明文和服务器之间交互的,可能会被窃取和修改,比如在公共场合连接的WIFI 热点。使用HTTPS以后,因为对于传输过程和数据都进行了加密,避免了中间节点的监听,密码和隐私泄露风险得到很大程度的降低。
2. 避免用户访问到伪造的服务器
用户访问网站被指向伪造的页面上,之后会发生多少不可想象的事情?HTTPS认证用户和网站真实性机制,可避免劫持伪造。
3. HTTPS还可以防止流量劫持
用户在访问网站时,可以不被流量劫持插入的广告打扰了。
流量劫持实例(左图是劫持页面,右图为正常页面):
三、HTTPS证书有效性
HTTPS证书是为了确认服务端身份,但网络上充满了无效的证书,浏览器对使用无效证书的访问,给出危险、不安全警告,将是否选择继续访问由用户选择,而大多数用户是无法区分这是配置问题还是真的存在安全问题。
证书无效的主要原因有:
1. 证书主机名与域名不匹配
浏览器拦截实例:
2. 使用过期的证书
浏览器拦截实例:
3. 使用不安全的证书签名算法
2009年SHA1算法被完全破解,Chrome等浏览器在对2016年内到期的SHA1证书提示安全警告,对2017年后到期的SHA1证书则提示错误,建议将SHA256作为证书签名算法。
浏览器拦截实例:
4. 证书链顺序校验不正确
从根证书到叶子证书,当前证书的主题使用者与上一个证书的颁发者不同。
浏览器拦截实例:
中国互联网网站使用无效HTTPS证书情况:
四、部署安全的HTTPS
1. 不使用不安全的SSL/TLS版本
SSL 2于1994年11月发布,有严重的弱点,被认为是失败的协议。
SSL 3于1995年12月发布,存在POODLE攻击漏洞。
TLS 1.0 于1999年1月发布,存在BEAST攻击(TLS1.0及更早版本的可预见的初始化向量漏洞)漏洞。
上面这些协议版本存在严重安全问题,绝对不能使用。
2. HSTS头部署
HTTP严格传输安全(HTTP Strict transport security,HSTS),配置浏览器对整个域名空间使用HTTPS来加密。在使用HSTS之后,所有与网站的不安全通信都是不允许的。这一目标通过自动把明文链接转换成安全链接来实现。一个额外的特性是不允许用户绕过证书警告(证书警告是中间人攻击的标志,而研究表明大多数用户都会无视警告,所以最好永远禁止用户这么做)。
支持HSTS是一项能大幅提高网站安全性的措施。新的网站应该在设计的时候就考虑到HSTS,而旧的站点则应该尽快支持。
3. HPKP头部署
互联网的信任机制完全依赖于CA(证书颁发机构)厂商颁发的证书,而任意一个CA厂商都可以签发任意一个域名的证书,导致攻击者可以从CA厂商开始入手。因此需要使用白名单的方式来选择信任的CA,公钥扎钉public key pinning技术的出现,可以允许你强制指定签发证书的CA,只有指定的CA为你的域名签发的证书才能使用。目前该技术有三种实现方式,DANE(基于DNSSEC)、HTTP公钥扎钉和TACK(证书密钥可信保证)。
中国互联网网站HTTPS安全部署情况:
五、修复HTTPS漏洞
1. OpenSSL心脏出血漏洞
发现时间:2014年4月 漏洞等级:高危
危害:OpenSSL的代码中没有对读长度进行检查,攻击者可以利用这个缺陷,在一个心跳请求中获取到服务器进程中最大为64KB的数据。通过发出多个这样的请求,攻击这就可以无限制地获取内存数据。服务器的进程中必然存在敏感信息:例如会话票证的密钥、TLS的会话密钥以及各类密码,攻击者就可以得到这些信息。
2. OpenSSL CCS注入漏洞
发现时间:2014年6月 漏洞等级:高危
危害:该漏洞使得攻击者可以拦截恶意中间节点加密和解密数据,同时迫使使用弱密钥的SSL客户端暴露在恶意节点。
3. 协议降级漏洞
等级:高危
危害:攻击者作为中间人迫使TLS握手使用一个低等级的协议或者使用低强度的密码套件,目前浏览器为了兼容性都支持自愿协议降级,它们会首先使用其支持的最高TLS版本尝试连接,如果首次连接失败,则降低协议版本直到连接建立,这一兼容性措施使得攻击者可以利用不安全的低版本协议漏洞进行攻击。
4. 不安全重新协商漏洞
发现时间:2009年8月 漏洞等级:高危
危害:重新协商漏洞在于新旧TLS连接之间没有连续性,即使这两个连接发生在同一个TCP连接上。也就是说,服务器并不会验证新旧两条TLS连接的另外一端是同一个。当重新协商发生在HTTP请求中时,上层应用不会得到通知。攻击者通过中间人攻击,攻击数据和正常访问端数据会被服务器合并处理,从而使得攻击成功。
中国互联网网站HTTPS漏洞情况:
六、其他
1、SSL/TLS版本和使用最多的CA厂商
2、证书类型选购指南
沃通WoSign在2016年11月21日上线SSl证书新产品Pre系列,以及2017年6月升级推出的强制加密型SSL证书新产品Pro系列,均支持所有浏览器和移动终端,帮助网站开启HTTPS加密和网站身份认证,抵制流量劫持、数据泄露、钓鱼网站,欢迎申请。
相关资讯:
百度已经上线了全站HTTPS的安全搜索,默认会将HTTP请求跳转成HTTPS。本文重点介绍HTTPS协议, 并简单介绍部署全站 HTTPS的意义。
大型网站如何实现HTTPS升级改造?大型网站如何部署HTTPS,大型网站HTTPS实践之HTTPS网站速度优化介绍。
上文讲到大型网站HTTPS实践之HTTPS网站速度优化介绍。本文就为大家介绍HTTPS在访问速度、计算性能、安全等方面基于协议和配置的优化。
网上介绍HTTPS的文章并不多,更鲜有分享在大型互联网站点部署HTTPS的实践经验,我们在考虑部署HTTPS时也有重重的疑惑。本文为大家介绍百度HTTPS实践和一些...
新闻自由基金会采访了部署全站HTTPS的新闻机构人员,总结出部署全站HTTPS之前需要知道的潜在问题、陷阱和建议。