一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于SSL协议完备通信的隐蔽信道传输方法

2022-06-25 00:07:01 来源:中国专利 TAG:

一种基于ssl协议完备通信的隐蔽信道传输方法
技术领域
1.本发明属于计算机网络与信息安全技术,具体涉及一种基于ssl协议完备通信的隐蔽信道传输方法。


背景技术:

2.在复杂的网络环境中无时无刻都在传递着大量的数据包,而隐蔽信道则是伪装成这些合法的数据包,通过某种特定的算法或者行为来传递秘密信息,从而达到隐蔽传输数据的效果。隐蔽信道的传输相比于正常数据的传输其最本质的区别在于隐蔽信道通信过程的高隐蔽性,且隐蔽信道的传输容量和效率均低于正常的数据传输。虽然隐蔽信道的传输容量不及正常的传输方式,但隐蔽性高的特点为其提供了特殊的价值。隐蔽信道可以提供数据传输时的安全保护,并可服务于国家的保密或是军事行业,为其提供一些特殊场合下的机密信息的隐蔽传输。
[0003] ssl(secure sockets layer,安全套接层)协议,旨在不安全的互联网中做到安全的数据传输。使用加密、认证等技术手段来对传输的隐私数据起到保护作用。https(http ssl)是以ssl协议为基础的应用服务,目前大量的投入使用,不断的替代传统单一的http服务,ssl协议为https的服务端和客户端提供传输时的数据安全的保障。目前https服务已经作为主流的web服务供用户使用,所以https的应用场景十分广泛。并且由于ssl协议本身属于安全类协议,有着较高的开放度,研究该协议能更轻松的穿透防火墙等网络防护设备。再加上https服务所产生的业务流量较多,给研究高传输效率的基于ssl协议的隐蔽信道提供了更多的机会。
[0004]
传统的基于tcp/ip的隐蔽信道,可以分为2大类:基于时间的隐蔽信道和基于存储的隐蔽信道
[1]
。存储型隐蔽信道的构建思想是把信息附在协议的特定字段,伪装成正常的数据包发送给接收端。时间型隐蔽信道主要是通过数据包之间的时间特性来表达秘密信息。然而目前存储型的隐蔽信道存在以下问题。
[0005]
一、针对传输容量,现有的存储隐蔽信道在传输容量上有明显的不足,基于tcp/ip协议的存储型隐蔽信道
[2,3]
由于受协议本身大小限制,使用的隐蔽字段容量都较低,大多低于4字节。
[0006]
二、针对传输鲁棒性,现有的存储型隐蔽信道大多通过约定开始和结束符,来确定一次传输的数据。但对于多条隐蔽信道在同一段时间使用同一条传输路线进行传输,或是数据包遭到乱序干扰的情况下缺少可靠性的保障
[4]

[0007]
三、针对传输隐蔽性,基于存储型的隐蔽信道在隐蔽字段的选择和使用上存在着一些问题,大多数的协议字段都有着自己的作用和取值范围,直接修改字段的值容易被检测为字段异常,从而遭到基于内容的针对性检测
[5]
。并且大多数的隐蔽信道仅仅是发送大量伪造的数据报文,而没有保证通信的完整性,没有保持正常的协议功能的使用。
[0008]
综上所示,由于网络存储型隐蔽信道在传输容量、鲁棒性、隐蔽性方面都存在着相应的缺陷,需要研究人员通过对协议和隐蔽信道构建技术的研究,来寻找一种新的协议来
构建大容量,高鲁棒性,较强隐蔽性的存储型隐蔽信道。
[0009]
参考文献:[1] wendzel s, zander s, fchner b, et al. pattern-based survey and categorization of network covert channel techniques[j]. acm computing surveys (csur), 2015, 47 (3): 50.[2] murdoch s j, lewis s.embedding covert channels into tcp/ip[j].information hiding, 2005(3727):247
‑‑
261.[3] zander s, armitage g, branch p covert channels in the ip time to live field. 2006.[4] rowland ch. covert channels in the tcp/ip protocol suite[j]. peer reviewed journal on the internet, 1997, 2(5): 1.[5] petitcolas, fabien a p . [lecture notes in computer science] information hiding volume 2578 || eliminating steganography in internet traffic with active wardens[j]. 2003, 10.1007/3-540-36415-3(chapter 2):18-35。


技术实现要素:

[0010]“一种基于ssl协议完备通信的隐蔽信道传输方法”是在对网络隐蔽信道构建技术的研究过程中针对目前存在的技术问题所提出的发明。本发明的一个目标是寻找一种新的协议和方法用于构建隐蔽信道,来改善现有隐蔽信道在传输容量、鲁棒性、隐蔽性上的不足,提出一种基于ssl协议完备通信的隐蔽信道传输方法,在传输容量、鲁棒性顿号隐蔽性上都有较高的提升。本发明选择ssl作为载体协议,使用ssl协议握手协商通信中的client hello报文的random和session id字段来作为隐蔽字段,在不影响ssl客户端和服务端进行握手交互的前提下,进行完整的握手交互,随后进行正常的数据传输,能够在连接完备通信的基础上去进行隐蔽信道数据的传输。该方法不会影响ssl协议的正常功能使用,能够模拟正常的通信流量,在通信流量上有着较高的隐蔽性。在协议字段上使用大容量的random和session id字段共同作为隐蔽字段,字段本身的取值范围具有随机性,通过加密算法能够满足字段的随机性,符合字段的取值特性,同样有着较高的字段隐蔽性,并且两个大容量字段共同传输一次可传输56字节数据,有着较高的传输容量。在鲁棒性方面由于ssl协议本身就是一个可靠的传输协议,是基于tcp可靠传输协议基础上的,所以协议本身是具备可靠传输的机制,能够确保把秘密消息准确有序的传递给接收端而不会受到网络中噪声、延时、丢包、乱序等影响。
附图说明
[0011]
从下面结合附图的详细描述中,将会更清楚的理解本发明的目标、实现方法、优点和特性,其中。
[0012]
图1是一个说明本发明的隐蔽信道传输的应用场景图。
[0013]
图2是一个展示本发明的隐蔽信道系统架构图。
[0014]
图3是一个说明本发明的隐蔽信道首个握手协商报文示意图。
[0015]
图4是一个说明本发明的隐蔽信道使用的循环对称加密示意图。
[0016]
图5是一个说明本发明的隐蔽信道完备通信流程图。
具体实施方式
[0017]
下面结合附图和具体实施例对本发明作进一步说明。
[0018]
如图1,图2所示,本发明的应用场景适用用于内网向公网传递秘密信息。发送端为处于内网环境下的任意一台主机,通过访问https服务器来进进行秘密信息的传递,在https进行ssl握手协商密钥的过程中来传递秘密信息并建立完备通信。接收端放置在数据包的流经设备上,如主机、防火墙、路由器、目的https服务器。接收端对来往的流量进行分析和筛选,识别的ssl隐蔽信道数据包并解析,解密重组还原秘密信息。以此包括以下步骤。
[0019]
步骤1.ssl隐蔽信道的建立和相关参数的传递。
[0020]
步骤1.1 ssl隐蔽信道的发送端会在数据传输的开始阶段发出一个用于确认身份和协商的报文,通过协商报文来告知自己的身份为隐蔽信道的发送端,并且告知接收端用于后续传输的关键信息。如图3所示,使用伪造clinet hello报文的random字段的第1~4字节来存储用于加密的4字节随机对称密钥,使用random字段的第5~13字节来存储传输文件的大小以字节为单位,使用random字段的第14~17字节来存储传输文件的后缀名,使用random字段的第20~32字节来存储ssl隐蔽信道的版本、类型、身份标识符。最后使用session id整个字段共32字节来存储传输文件的32字节md5校验值。
[0021]
步骤1.2 ssl隐蔽信道的接收端实时监听并抓取网卡上的ssl协议的client hello数据包,解析client hello的random字段,通过使用4字节循环对称解密算法,对random字段进行解密,random字段的第20~32字节为ssl隐蔽信道的版本、类型、身份标识字段,通过该字段来确认发送端的身份是否为隐蔽信道的发送端。确认发送端身份后,通过ip地址和端口对隐蔽信道的发送端进行锁定,使用4字节循环对称解密算法,对random字段和session id进行解密,获取传输文件后缀名,文件大小,文件的md5校验值。通过对传输文件的大小进行相应的计算,可以知道总共需要接收报文的数量,以及最后一个报文隐藏的秘密信息字节数。随后监听并等待后续的来自隐蔽信道发送端的报文。
[0022]
步骤2.ssl隐蔽信道发送端的数据发送。
[0023]
步骤2.1 传输文件的解析和分段,首先将传输的文件转换为字节流,每28字节为一段。将每段数据填充到client_hello数据包的random字段的第5~32字节,和session id字段的第1~28字节。使用随机数生成器生成的4字节对称密钥填充到random字段的1~4字节。将4字节同步序列标识符填充到session id字段的29~32字节。
[0024]
步骤2.2 对填充的数据进行加密,如图4所示,使用random字段的1~4字节随机对称密钥来对填充的数据进行加密。由于random和session id本质为一串随机数,具有随机性,数据直接填充会破坏该字段的随机特性,并且如果直接明文传输对于传输文件内容本身也不够隐蔽,所以需要对其进行加密,设计一种循环对称加密算法来对字段数据进加密。首先使用随机数生成器生成的4字节随机对称密钥填充到random的第1~4字节,将后面的数据以4字节作为一个分段,使用1~4字节的密钥对5~8字节的信息进行对称加密,加密后的密文填充到5~8字节,再用加密后的5~8字节即第一段密文信息作为后面9~12字节的对称密钥进行加密。以此类推,依次循环直到直到random和session id所有数据被加密;经过变换后的60字节为最终传递的密文信息。由于每个报文初始化时都将生成不同的随机对称密钥,
所以就算对于相同信息,也能经过处理后变为不同的伪随机数,从而增强ssl隐蔽信道的隐蔽性,使隐蔽传输的字段值具有随机性。解密过程为循环对称加密算法的逆过程,依次循环做4字节对称解密即可还原秘密信息。
[0025]
步骤2.3 发送伪造数据包并建立完备通信,如图5所示,ssl协议的握手协商是由客户端发起的向服务器进行请求协商,双方进行安全参数的协商,建立并初始化通信的环境。协商使用的协议版本,加密密钥算法,进行客户端和服务器的身份认证等工作。只有通过ssl协议的握手通信协商,才能建立安全可靠的通信环境来进行数据传输。ssl隐蔽信道的发送端伪装成客户端,发送伪造的client hello报文给服务端,并建立完整的握手协商通信,在完成握手协商后继续向服务器正常的请求网页数据,服务器返回数据后,隐蔽信道的发送端解析返回数据中的url链接,加入url地址池,随机多次的向服务器请求其他资源,从而模拟正常用户操作时的流量,建立完备的通信。
[0026]
步骤3 ssl隐蔽信道接收端数据的接收和还原。
[0027]
步骤3.1 ssl隐蔽信道接收端监听并接收数据,监听来自隐蔽信道发送端的流量,赛选出https流量。解析client hello报文的random和session id字段,通过使用4字节循环对称解密算法,对random和session id字段的数据进行解密,从而获取每个报文中携带的秘密数据。
[0028]
步骤3.2 ssl隐蔽信道接收端文件的还原。通过一开始计算出的传输文件字节数,需要传递的报文次数,加上实时统计本次是收到的第几次报文,可以准确计算出文件传输的进度,直到最后一个报文接收完成,解析最后一个报文的隐藏信息。在所有数据接收完成后会对数据进行重组还原,并对还原的文件进行md5完整性校验,如果计算出的md5校验值与身份确认阶段获得的md5校验值一致,就证明文件传输完整无误,如果不一致说明传输可能出错,删除文件。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献