未来智讯 > 人脸语音识别论文 > 基于SSL流量的指纹识别

基于SSL流量的指纹识别

发布时间:2018-11-25 01:06:05 文章来源:未来智讯    
    基于SSL流量的指纹识别作者: 苏頔昕 施勇 薛质   【 摘 要 】 近年来APT(高级持续性威胁)威胁着社会经济生活,它常利用SSL隐藏和传递机密信息,目前对异常SSL流量的检测可以有效削减APT带来的威胁。但是SSL有SSL VPN以及浏览器产生的SSL之分,因此要建立异常SSL检测模型需要先区分出不同类型SSL流量。论文恰是基于此提出了SSL流量的“指纹识别”方法,这也为后续检测模型的建立和有效性提供了有力保障。
  【 关键词 】 SSL;SSL VPN;指纹识别;APT
  1 引言
  随着信息技能的飞速发展,互联网技能的普及,一方面为人们生活带来的便利,另一方面也出现越来越多的平安问题。自2013年美国“棱镜门”事件后,关于APT(高级持续性威胁)的讨论和研讨也越来受到关注。
  APT是一种针对特定指标组织的有经济或政治目的,且持续时间较长的一种抨击,它联合了传统的网络抨击方式同时利用0day漏洞,通常使受抨击者防不胜防,直到出现真正丧失才觉察到抨击的存在。目前在APT抨击中,常利用SSL隐藏或传递机密信息,同时SSL木马的频繁使用,危害也日益严重,因此如何区分出正常和异常的SSL成为了预防APT抨击的一种有效方式。现有的方法主要是针对SSL证书的可信度检测上,然而近年来伪造证书可信度越来越高,所以单从证书角度已不全面可靠,还需要从SSL流量的端口、上下报文以及连接时长等流量统计特点起程进行。由于SSL有不同类型,比如SSL VPN、浏览器的SSL,不同类型具体的检测方式也不相同,因此在此之前需要对抓取的各类SSL流量进行分类。目前对SSL流量分类的相关研讨仍是空白,本文基于此提出了各种SSL流量的“指纹识别”方法。
  文章共分为四局部,最初介绍研讨内容背景和意义,然后简要说明SSL握手协议,其次对SSL流量“指纹识别”方法进行详细阐述,最终分析方法的特点及未来研讨展望。
  2 SSL握手协议
  SSL平安套阶层协议是为主机间提供平安通道的协议,位于传输层和应用层之间,提供连接的隐秘性、用户的真实性以及数据的可靠性。SSL协议由握手层协议、记录层协议、更改密文协议和警报协议组成,如图1所示。
  其中握手协议是SSL协议中最为重要的协议,通过握手能够提供对双方的身份验证机制。在这一过程中客户端和服务器需要确认一个用于加密明文数据所使用的密钥和算法,同时协商双方的信息摘要算法、数据压缩算法等,过程如图2所示。
  (1)ClientHello消息。客户端会最初向服务器发送这条消息,来通知对方客户端所支持的算法,以及为了将来生成多个加密密钥所需要的客户端随机数。
  (2)ServerHello消息。服务器会从客户端发送的加密算法中选择其中的一种。
  (3)Server Certificate 消息。Server Certificate包含了用于身份认证的服务器标识,以及一个用于生成加密参数的随机数。
  (4)Certificate Request 消息。可选消息,如果服务器不需要验证客户端的身份,则不会发送这条消息。
  (5)Server Hello Done消息。这条消息表示ServerHello消息与Certificate消息一经发送完毕,服务器会等候客户端的回应。客户端一旦收到这条消息,才起初数字证书合法性的验证。
  (6)Client Certificate 消息。可选,如果没有收到Certificate Request消息,则不需要发送数字证书。
  3 SSL类型识别
  SSL握手是客户端和服务器进行密钥、算法协商的步骤,不同类型的SSL有特定的密钥和算法选择方式,这些可选择的密钥和算法通过ClientHello消息进行传递,因此本文将根据SSL握手协议中客户端发送的ClientHello消息来区分不同类型的SSL流量。
  ClientHello消息中包含了SSL/TLS版本号、Cipher Suites(加密套件)和扩展局部的签名算法等。常常对于同一个客户端发出的不同类型SSL请求,其ClientHello消息是有差别的。目前SSL流量可大致分为SSL VPN和浏览器产生的SSL,我们通过Wireshake软件进行大量抓包后分析发现,通过Cipher Suites、SessionTicket TLS、Status_request这三个字段信息能够有效区分SSL VPN和浏览器的SSL流量,甚至可区分出不同浏览器和同一浏览器在不同操作系统下的SSL流量。
  近几年Microsoft推出使用SSL进行加密的SSTP,方便了用户在Windows上直接建立VPN,所以本文对SSL VPN的分析着重集中在SSTP VPN。同时主流的浏览器有IE、Chrome、Firefox、Sougou,其中Sougou是使用IE和Chrome内核,因此不对Sougou浏览器进行分析。特别需要注意的是,IE的各个版本随着不同的操作系统版本SSL流量具有明显不同。
  3.1 SSTP VPN
  SSTP VPN仅支持Win7操作系统及以上版本,在Win7、Win8以及Win8.1客户端与Windows Server 2012间搭建SSTP VPN并抓取数据包,通过大量实验归纳发现,SSTP VPN在Win7和Win8操作系统中常常使用TLSv1.0,而Win8.1则使用TLSv1.2。并且Win7和Win8下Cipher Suites的总额相同,共12个,相比之下Win8.1的 SSTP VPN Cipher Suites包含了24个加密套件。Cipher Suites常常由三个局部组成,第一是密钥交换算法,第二是对称加密算法,第三是摘要或者MAC算法, RFC2246中建议了很多中组合,一般写法是“密钥交换算法-对称加密算法-摘要算法”。   虽然Win7和Win8下SSTP VPN的加密套件数量相同,然而还可通过扩展局部是否包含SessionTicket TLS进行有效区分,实验证明惟有Win8和Win8.1才包含该项。Session Ticket是用于在握手阶段SSL连接停止后重新握手使用的,与Session ID的区别在于即使客户端的重新请求发送至另一台服务器仍然能够恢复对话,然而它仅保存在客户端, 目前在浏览器中惟有Firefox和Chrome和Win8以上版本的IE浏览器支持。此外三个操作系统下的SSTP VPN都不包含Status request扩展项,而浏览器则都包含,这是它们之间的最大区别。SSTP VPN的对照见表1,“√”表示包含,反之为“×”。
  3.2 IE浏览器
  对于IE浏览器,目前仍有使用的是IE8到IE11,其中Win7支持IE8、IE9,Win7 Sp1版本支持IE11从前的所有版本,从Win8.1起初则主要使用IE11。在Win8及以上版本,IE浏览器产生的SSL流量包含了SessionTicket TLS字段,这是Win7版本与Win8、Win8.1流量的最大区别,通过这一特点可快速区分出浏览器的操作系统环境。但是,在Win7及Win7 sp1版本中,IE8、IE9和IE10都没有区别,无论从握手协议扩展项或者加密密码套件上看都是相同的,数量都为12个,与Win7环境下SSTP VPN的加密套件一致。唯独可以进行区分的惟有IE11,其加密密码套件Cipher Suites包含了21个,在原有12个的基础上新增了9个组合。
  相比之下Win8.1则较容易识别,因为只使用IE11,且用TLS 1.2版本,不但包含SessionTicket TLS,而且Cipher Suites共有19个,更新升级后的Win8.1专业版的Cipher Suites则包含24个,不不过数量上大略的增加,还去除了原有的几个加密算法组合。IE各版本识别如表2所示。
  3.3 其他浏览器
  针对其他两个非IE的浏览器,Firefox和Chrome,这两类浏览器产生的SSL流量都包含了SessionTicket TLS、Status_reques。但Cipher Suites数量上,在Win7系统下,当Firefox和Chrome使用TLS 1.0时, Firefox有11个Cipher Suites,而Chrome则有17个。除了在Cipher Suites的数量上的差别,Firefox和Chrome在其他扩展字段与IE浏览器有明显区别,主要体如今签名哈希算法数量以及椭圆曲线算法。在签名哈希算法数量选择上,Chrome共10个,比Firefox总额多了2个,且具体签名算法也不尽相同,而IE浏览器惟有在使用TLS 1.2时扩展项才有签名哈希算法,数量为7个。不但如此,在椭圆曲线算法上,Chrome浏览器、IE浏览器以及SSTP VPN各版本在数量和类型上都相同,惟有Firfox多了一个。该特点即可区分Firefox与其他SSL类型。
  通过以上ClientHello几个字段的对照能够明显区分各种类型的SSL流量,实现了SSL“指纹识别”,同时也为后续设计SSL检测模型防御APT抨击奠定了基础。虽然所提分类方式补救了目前研讨空缺,然而对浏览器的SSL流量识别仅集中在Win7及以上现今较流行操作环境,对微软早前的操作系统比如XP、Vista等未做分析,这是实验的不足之处。
  4 结束语
  本文通过分析现有APT和SSL研讨背景,提出了一种通过SSL握手协议中的ClientHello消息进行SSL流量类型识别的方法,不但对Win7及以上版本的SSTP VPN、各版本浏览器的SSL流量做了有效区分,也为以后提出SSL检测模型做好筹备事务。未来我们将在此基础上深入分析各种SSL流量类型的异常检测。
  参考文献
  [1] Paul Giura, Wei Wang. A Context-Based Detection Framework for Advanced Persistent Threats. International Conference on Cyber Security[C].2012,69-74.
  [2] 黄达理, 薛质. 进阶持续性渗透抨击的特征分析研讨[J]. 信息平安与通讯保密, 2012, (5): 87-89.
  [3] Zigan Cao, Gang Qiong, Yong Zhao, et al. Two-Phased Method for Detection Evasive Network Attack Channels[J]. China Communication, 2014, (8): 47-58.
  [4] Linshung Huang, Alex Rice, Erling Ellingsen,et al. Analyzing Forged SSL Certificates in the Wild. IEEE Security and Privacy [C].2014,83-97.
  [5] 钟军, 吴雪阳, 江一等. 一种平安协议的平安性分析及抨击研讨[J]. 计算机科学与工程, 2014,36(6): 1077-1082.
  基金项目:
  国家自然科学基金重点项目(云计算环境下软件可靠性和平安性理论、技能与实证研讨)(编号:61332010)。
  作者简介:
  苏�E昕(1992-),女,上海交通大学,硕士;主要研讨方向和关注领域:网络平安、信息平安管理。
  施勇(1979-),男,上海交通大学,博士,上海交通大学信息平安工程学院,讲师;主要研讨方向和关注领域:网络抨击与防御、信息平安管理、平安标准。
  薛质(1971-),男,上海交通大学,博士,上海交通大学信息平安工程学院,教授,博士生导师;主要研讨方向和关注领域:计算机通讯网、信息平安。
转载请注明来源。原文地址:https://www.7428.cn/page/2018/1125/46781/
 与本篇相关的热门内容: