仅有 0.09% 的 HTTPS 站点使用了 HPKP 证书钉

简介:

一份最近的调查报告显示,HTTPS 站点中仅有 0.09% 的站点(大约 4100 个)使用了HTTP 公钥钉HTTP Public Key Pinning(HPKP)来增强其域名的 SSL/TLS 证书。

HPKP 是一个 HTTP 安全扩展,最初发布于 2015 年 4 月(RFC 7469)。该标准定义了一种避免浏览器访问到伪造证书的 HTTPS 网站方法。在浏览器访问 HTTPS 网站时,网站可以锁定浏览器所应接受的该网站的公钥列表;只有浏览器接受的证书同之前通过 HPKP 头所申明的一致时才能访问该网站。

screenshot

为防止攻击者使用一个以你的域名签发的有效证书来伪造你的网站时,HPKP 很有用

这种机制可以用于防护攻击者运行一个假冒网站并使用有效证书来欺骗浏览器的攻击行为。

攻击者有几种方式可以得到有效的证书。他们可以通过对 CA 的社会工程攻击、对技术薄弱点的攻击、CA 的数据泄露、利用脆弱的证书签发策略等来得到。另外,如果攻击者本身得到了浏览器可信任的 CA 的授权,也是可以做到的。

HPKP 就是用来解决这种问题的。

HPKP 如何工作?

当网站管理人员为他的网站设置 HPKP 头时,第一次连接到该域名的用户将接收到一个包括了公钥指纹的列表,以后对该网站的访问必定使用这些公钥之一才能进行。

这些公钥存储在用户的浏览器里面,当用户再次访问该网站时,在建立 HTTPS 连接前,浏览器和服务器会确认它们都使用了正确公钥和服务器证书。如果不是,那么支持 HPKP 的浏览器会拒绝用户访问该网站。

screenshot

这对于防止攻击者通过假冒网站来欺骗用户是一件好事,但是如果合法的网站配置错误的话,这会让你的用户几个月都无法访问你的网站了。

错误配置的 HPKP 会让你的用户无法访问你的网站

做这个调查的 netcraft 公司估计是因为这个原因才导致在该标准发布一年之后,HPKP 的使用率仍然很低。

支持 HPKP 除了需要不断的维护工作,还需要维护人员如踩钢丝般的细心,才能避免整站的访问被完全关闭掉。

“即使是网站管理员们设置好了有效策略,还需要时时注意:日常的维护和紧急处置都有可能造成阻挡合法访客的事故,而且会持续阻挡很长时间。” netcraft 的 Paul Mutton 解释说。

这就是为什么只有 4100 个网站的管理员们决定使用 HPKP 头的原因。不幸的是, netcraft 说,实际上这个数字只有 3000 左右,因为大约有 1/4 的网站的 HPKP 头设置不正确。

实现 HPKP 并不太复杂,只是需要很细心

积极的一面是,当网站管理员熟悉了如何管理白名单中的证书及其客户端密钥,HPKP 可以为大多数带有敏感数据的网站提供了必要的安全措施。

一些著名的服务已经实施了 HPKP ,比如 GiHub、Mozilla 和 Pixabay 等。

尽管如此,像 Lenovo Superfish 和 Dell eDellRoot 这样的丑闻中,他们在其产品中包含了根证书,可以让攻击者绕开 HPKP。此外如果攻击者可以访问用户的浏览器,也能修改浏览器的可信任公钥列表来取消 HPKP 防护,或者禁止用户访问合法网站而去访问恶意伪造的网站。

====================================分割线================================
文章转载自 开源中国社区[http://www.oschina.net]

目录
相关文章
|
5月前
|
算法 Linux 网络安全
Centos7 Linux系统下生成https的crt和key证书
Centos7 Linux系统下生成https的crt和key证书
190 0
|
5月前
|
安全 算法 小程序
互联网并发与安全系列教程(17) - 生产环境配置HTTPS证书
互联网并发与安全系列教程(17) - 生产环境配置HTTPS证书
72 0
|
7月前
|
域名解析 缓存 网络协议
Let's Encrypt 配置 HTTPS 免费泛域名证书
Let's Encrypt 配置 HTTPS 免费泛域名证书
896 0
|
14天前
|
域名解析 网络协议 应用服务中间件
阿里云SSL证书配置(HTTPS证书配置)
该内容是一个关于如何在阿里云上准备和购买SSL证书,以及如何为网站启用HTTPS的步骤指南。首先,需要注册并实名认证阿里云账号,然后在SSL证书控制台选择证书类型、品牌和时长进行购买。申请证书时填写域名信息,并进行DNS验证,这包括在阿里云域名管理板块添加解析记录。完成验证后提交审核,等待证书审核通过并下载Nginx格式的证书文件。最后,将证书配置到网站服务器以启用HTTPS。整个过程涉及账户注册、实名认证、证书购买、DNS设置和证书下载及安装。
75 0
|
18天前
|
网络安全 数据安全/隐私保护 Docker
免费的HTTPS证书
免费的HTTPS证书
62 1
|
1月前
|
存储 网络安全 数据安全/隐私保护
Windows Server 2019 IIS HTTPS证书部署流程详解
Windows Server 2019 IIS HTTPS证书部署流程详解
|
1月前
|
安全 网络安全 CDN
阿里云CDN HTTPS 证书配置流程
阿里云CDN HTTPS 证书配置流程
167 1
|
7月前
|
安全 应用服务中间件 Linux
Linux安装免费Https证书,过期自动更新 省钱秘籍
Linux安装免费Https证书,过期自动更新 省钱秘籍