谈谈https问题排查流程

2021-01-13 16:26:25 浏览数 (1)

背景

https是Web的核心,chrome早已经会提示http为不安全,大部分公司都已经全量切换为https,但https由于传输加密,抓包基本上看不出来,因此需要一些流程和经验来提升排查效率。

问题排查

1、排查流程

2、常用工具

curl

curl --curl -I -vvv https://test.com 使用-vvv可以看到具体的交互信息

openssl

打印和分析https请求

gnutils-cli

查看证书链信息

代码语言:javascript复制
yum -y install gnutls-utils
gnutls-cli testwww.xxx.cn -p 443

浏览器

F12->Security->View certificate

3、常见问题

访问链路问题

https访问报错,不一定是https的问题,先确认是否是证书问题,http是否访问正常

通常https问题有明显的报错

CA 不被信任

自签名证书,会提示系统不信任其安全证书,比如之前的12306,现在大部分网站已经不再使用自签名,使用权威机构颁发的证书,一般不会出现这种情况

中间证书缺失或错误

部分浏览器或者客户端正常,部分访问异常

查看返回的证书是正确的

使用gnutils-cli工具检查证书链,并更新证书链

SNI不支持

https://myssl.com/可以看到,目前主要是IE6、IE8、java6存在不支持SNI的情况,或者一些自己开发的客户端

可以通过抓包查看https有没有SNI扩展来确认

混合资源

点击Security可以看到,view 4 requests in Network Panel

点开后可以http的静态资源

签名算法不安全

需要sha256,如出现sha128,则签名算法不安全

加密组件不安全

https://myssl.com/可以检查加密套件,浏览器也会有明显提示,暂时没找到这类网站,可根据自己遇到情况排查是否是这个原因

0 人点赞