哦哟,吃饱饭好干活

前提条件

  加密流量太难分析。即使用模型训练,哪怕是百分之一的误报率,到客户现场环境中都是灾难性的误报,而且加密流量研判起来非常复杂,遂先从证书安全入手。

  已知 tls1.3 流量证书只能在本地提取,所以这里针对的是 tls1.3 之前的版本。

tls1.3 握手过程
tls1.3 握手过程

{}:用握手层流密钥加密;[]:用流密钥加密。

证书校验过程

流量中证书包含内容

  本地证书发现没有证书签名值这个字段。

证书的发布机构 
证书的有效期 
公钥 
证书所有者(Subject) 
签名所使用的算法 
指纹以及指纹算法
Issuer (证书的发布机构)
Valid from , Valid to (证书的有效期)
Public key (公钥)
Subject (主题)
Signature algorithm (签名所使用的算法)
Thumbprint, Thumbprint algorithm (指纹以及指纹算法)

证书签名值;

数字证书签名流程

  1、CA 会把持有者的公钥、用途、颁发者、有效时间等信息打成一个包,然后对这些信息进行 Hash 计算,得到一个 Hash 值;

  2、CA 会使用自己的私钥将该 Hash 值加密,生成 Certificate Signature,也就是 CA 对证书做了签名;

  3、将 Certificate Signature 添加在文件证书上,形成数字证书;

证书校验

  1、客户端会使用同样的 Hash 算法获取该证书的 Hash 值 H1;

  2、通常浏览器和操作系统中集成了 CA 的公钥信息,浏览器收到证书后可以使用 CA 的公钥解密 Certificate Signature 内容,得到一个 Hash 值 H2 ;

  3、最后比较 H1 和 H2,如果值相同,则为可信赖的证书,否则则认为证书不可信。

证书安全

异常证书特征

证书有效期太长
自签名证书:         颁发者和使用者是相同的
非信任机构:         有些证书是机构颁发的,但是不是受信任机构,信任的机构可以定期从浏览器导出
免费 DV 证书:        使用者无组织信息
过期证书
证书伪造:           由于证书问题导致的校验不通过(域名不匹配等)

撤销的证书:         如果证书已被撤销,通常在线证书撤销列表(CRL)或在线状态协议(OCSP)发布。

免费证书颁发机构

注意,证书颁发机构不止颁发一种证书,需要对其下证书进行收集筛选
1.Let's Encrypt
2.LookSSL 
3.JoySSL
4.CloudFlare SSL
5.COMODO PositiveSSL
6.CerSign
7.SSL For Free
8.mianfeissl.com
9.GoGetSSL
10.ZeroSSL

白名单排除

下面是大概率是白名单的,但是不代表着一定

多域名 SSL 证书:可以同时保护多个域名,不限制域名类型;例如:anxinssl.com 及它的子域、
idcspy.com 及它的子域、abc.com 及它的子域等,最多可保护 2~150 个域名。

通配符证书:只能保护一个域名以及该域名的所有下一级域名,不限制域名数量;例如:anxinssl.com 
及它的所有子域,没有数量限制。

一般来说恶意样本都是单域名 SSL 证书:只保护一个域名(包括带 www 和不带 www)的 SSL 证书,
可以是顶级域名可以是二级域名。
OV 证书(企业验证型):需要验证域名所有权以及企业身份信息,证明申请单位是一个合法存在的真实实体,一般在 1~5 个工作日颁发。价格一般在百元至千元左右,适用于企业型用户申请。
EV 证书(扩展验证型):除了需要验证域名所有权以及企业身份信息之外,还需要提交一下扩展型验证,比如:邓白氏等,通常 CA 机构还会进行电话回访,一般在 2~7 个工作日颁发证书。价格一般在千元至万元左右,适用于在线交易网站、企业型网站。

恶意的一般都是 DV 证书,用这个可以减少误报。