好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

基于IP数据包生存期的隐藏信道.docx

7页
  • 卖家[上传人]:I***
  • 文档编号:187016585
  • 上传时间:2021-07-24
  • 文档格式:DOCX
  • 文档大小:73.32KB
  • / 7 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 基于IP数据包生存期的隐藏信道 王华翔信息工程大学信息工程学院河南450002摘要:本文通过对lP包的封装结构和通信过程的分析,指出lP包的TTL值隐藏信息的可能性,并提出了基于IP包生存时间的信息隐藏方法理论分析和实践表明,该方法具有实际应用的可行性和较好的安全性关键词:信息安全;隐写术;隐蔽信道;lP包生存期O 前言本文根据对IP数据包结构和网络传输过程的分析,提出一种基于IP生存时间TTL的信息隐藏方法,通过替换原有的TTL值,可以把秘密消息嵌入到数据包中由于IP数据包的TTL值在网络中是动态可变的(通过路由器、防火墙等),即在信道中存在噪声,本文设计了几种编码方法,使之有广泛的适用范围并且具有良好的隐蔽性llP包结构分析lP数据报的结构如图1所示各部分含义如下:版本:用于传输数据的IP版本,大小为4位;头部长度:用于规定报头长度,服务类型:用于设置数据传输的优先权或者优先级,其大小为8位;总长度:指出数据报的总长,数据报总长=报头长度+数据长度,大小为16位,标识:用于标识所有的分段,大小为16位;分段标志:确定一个数据报是否可以分段,同时也指出当前分段后面是否还有更多分段,大小为3位;分段偏移量:由目标计算机用于查找分段在整个数据报中的位置,大小位13位;生存时间:设置数据报可以经过的最多路由器数。

      长度为8位;协议:指定用于创建数据字段中的数据的上层协议,大小为8位;校验和:检查所传输数据的完整性,大小为16位;源地址:源lP地址,字段长度为32位;目标地址:目标lP地址,字段长度为32位;选项:上一个必须的字段,字段长度具体取决于所选择的lP选项;数据:包含网络中传输的数据,IP数据报还包括上层协议的报头信息;其中,生存时间(TTL)字段设置了数据报经过的最多路由器数它指定了数据报的生存时间TTL的初始值由源主机设置,经过一个处理它的路由器,它的值就减1,当该字段为O时,数据报就被丢弃设置该字段主要是为了防止无法到达的数据报永久停留在网络中阻塞网络该字段成为隐蔽位置的原因是:①由于网络情况和路径变化频繁,该TTL值改变不会被认为是异常②对这个值的操作也可以被认为是合法的,因为对该字段的操作可以认为是用于另外一种用途:在一组拥有相同功能的服务器中找到距离源主机最近的服务器源主机在开始寻找时,首先会发送TTL-1的请求包到这个地址请求包在被丢弃前将到达一些路由器如果没有回复信息,那么源主机就在TTL值上加1,继续搜索由于有原因①和②的存在,所以TTL在网络中的取值是变化的,满足了成为隐蔽信息字段的条件。

      2 基于TTL的信息隐藏本文提出的隐藏算法的主要思想就是将要隐藏的秘密消息编码替换到原IP报文的TTL值并提出编码方法抵抗由于网络中正常TTL变化引起的噪声,并使调制后的TTL值接近自然的TTL值隐藏与传输的原理如图2所示在发送端将秘密消息c经过变换得到m,将m放入TTL中,TTL在数据包中占一个字节,利用该方法进行隐蔽通信需要考虑通信连路上路由器的数量N,接收方必须知道该数据包在网络中共经过多少路由器,从而可以将收到的信息m’加上N得到发送方发送的数据m在局域网中,由于路由路径一般固定,所以N-般不会发生变化,这使得这种简单的信息隐藏方法可行为了让接收方得知IP数据包在网络上经过的路由数N,本文设计了训练序列,接收方可以由已知的训练序列规律求出N值以下是该隐藏方法的流程发送端:(1)将待隐藏的信息c预加密达到m,增加隐秘性2)构造双方预知的一段序列如长度为l的全1串嵌入到TTL字段中,即将TTL值设为255作为训练序列和开始标志3)将待发送的秘密信息m按字节嵌入到TTL字段中发送接收端:(1)接收数据包,将TTL字段的取值存储得到m’2)在TTL值序列中寻找训练序列特征,将序列中TTL取值M与255相减,得到数据包在网络上经过的路由器数N,即255-M=N。

      3)将接收到的TTL值m’加上N得到发送的秘密消息,即m - N+m’4)将m按照预共享的密钥解密得到原始的隐藏信息c在局域网中,该方法可以正确的传输隐藏信息但在复杂的互联网中,由于路由的路径不同,数据包所经过的路由等设备的数目N是动态变化的,这种方法有极高的误码率,这极大的限制了该方法的适用范围,并且由于m直接嵌入TTL中,使隐藏数据包TTL值的统计特性与自然的统计特征相差巨大,容易被检测和消除对于这个问题,本文提出以下几种方法1)采用两个不同的TTL值,这两个值之间的差要比较大,它们分别代表二进制数0和l这样的话,即使经过的路由器数量对方不知道,对方也可以根据接收到的数值的大小来判断,这样就提高了系统的稳定性和隐蔽性2)采用两个不同的TTL值,这两个值之间的差比较小,分别代表二进制数O和l定义一个计数器L,发送O或1是都连续发送L次,接收方收到序列后可以根据收到的重复数值来确定原信息,这样的TTL值变化较小,更符合一般的TTL变化规律为进一步加强隐蔽性,L可以由一个带密钥的函数决定,使之动态变化,这样即使攻击者发现了隐蔽信道的存在,由于没有密钥也很难恢复秘密信息3)采用扩频编码将待发送信息m用扩频编码调制,如长度为L的Walsh-Hadamard码,使每一比特都调制成一个值为士l的码序列C=(CI,C2,……,CL),用预设的TTL值T与C相加得到一个t序列t=(T+C1,T+C2,……,T+CL),再将t序列嵌入到TTL中发送给接收方。

      由于W-H码的均值为0,接收方只要分段计算收到的TTL值的均值就可以得到估计的路由数N’,把接收到的t’序列减去N’,就可以得到序列C’,由于扩频编码的特性,用相应的W-H码即可解扩出原有的信息m如果攻击者如果没有相应的码字,根本无法察觉隐藏信息的存在这种方法也适用于当网络发生较大改变时的情形,由于N’是分段计算的,当网络拓扑突然发生较大改变时,该方法可以自适应的计算出当前网络环境下的N值采用这三种编码方法的流程与前面提到的简单的基于TTL的信息隐藏方法大致相同,增加了编码的步骤以对抗网络上的噪声提高隐蔽性,但不需要训练序列的帮助来获得N值了3 可行性与性能分析在确定的发[来自wwW.L]送和接受端之间,路由的路径一般变化比较缓慢,即N在大多数时间内都是确定值,故以上几种方法在理论上都是可行的本文通过Winpcap编程实验,在局域网及城域网中以上三种方法均能正确的解析出隐藏信息信息隐藏算法的性能一般可以从隐蔽性、鲁棒性和信道容量几方面来考虑1)隐蔽性隐蔽信道的隐蔽性就是要求携密数据和普通数据类似,不引起怀疑,如果能够很容易的被检测出来隐藏也就失去了意义简单的基于TTL的信息隐藏由于使用的一般安全网络设备不关注的TTL值来隐藏消息,隐蔽性是比较高的,但利用基于统计特性的检测方法还是可以被发现的。

      正常的网络数据包中TTL的取值变化不大,随不同的网络环境其统计特性也不同由实际从网络截取的数据包中统计分析得出,在局域网中,由于路由路径基本不变,TTL值一般也是不变的;在一个较复杂网络网关内外间通信时,由于中间一般经过防火墙、负载均衡等设备,其TTL取值一般在某一取值附近波动;存更大距离的互联网中,TTL的取值也呈现了在一定值附近变化的特点由此可见,自然的lP数据包中TTL取值是符合一定规律的,针对这种规律,分布特点设置合理的阈值,可以检测出简单的基于TTL的隐蔽信道简单的将秘密信息直接替换TTL值的方法在局域网中是可行的,但由于其TTL的取值分布规律就是信源信息的分布规律,与合法的lP数据包TTL取值相差很大,很容易被检测出来,隐蔽性不够好本文提到的第一种编码方法用相差较大的两个TTL值来映射秘密消息,考虑到的是正确的解码,而没有考虑TTL取值的分布,故隐蔽性相对较差第二种编码方法使用重复序列代替单独的码字,由于发送的TTL值差别很小,类似于正常传输的1P包中的TTL取值,故具有很强的隐蔽性第三种编码方法利用了扩频编码的方法,TTL的取值仅在极小的1范围内变化,统计特性上可以看作是TTL信道中的随机噪声,故此方法具有很强的隐蔽性。

      2)鲁棒性鲁棒性描述算法抵抗蓄意或非蓄意攻击的能力或程度蓄意攻击包括被动和主动攻击被动攻击指监测者分析检查所有数据,尝试发现可能存在的隐蔽通信,其最高目标是窃听,截断或篡改秘密信息主动攻击则不关心隐蔽通信是否存在,其目的是:在不破坏数据包功能的前提下,尽可能地干扰可能存在的秘密信息的提取非蓄意攻击指传输路径中,数据包可能遭遇的操作和处理,例如:过滤、筛选、地址翻译等实用算法产生的携密数据包,经过非蓄意攻击后,大部分秘密信息能够保留简单的信息直接嵌入TTL的方法鲁棒性很差,传输过程中任何噪声都会造成接收方误码率的急剧增高,这种方法仅适用于无噪声信道,比如局域网本文提到的第一种编码方法其鲁棒性取决于比特0和1对应TTL取值的差△T,若信道本身的TTL变化值大干△T,就会造成误码后两种编码方法的鲁棒性取决于设计的码长L,对于第二种方法,只要在L长的序列中误码的个数不超过L/2个,接收端就可以正确的还原秘密信息对于第三种方法,由于引入了扩频增益,鲁棒性更好3)信道容量容量指隐藏的秘密比特数从保密通信的角度,带宽或传输速率能更好地刻画隐藏算法的容量特性基于此种隐蔽信道的特点,我们定义每个数据包隐藏的比特数bpp来定义该隐蔽信道的容量。

      容易得知,第一种编码方法的信道容量为Ibpp.第二和第三种方法的信道容量为1/L bpp隐藏效率比较低,后两种编码方法通过降低信道容量的方法获得隐蔽性和鲁棒性的提升当然,也可以对信道容量进行改进,引入多进制编码来提高隐藏效率,但相应的会降低信道的隐蔽性如简单的信息直接嵌入TTL的方法,信道容量达到了每数据包隐藏l字节的,但其隐蔽性和鲁棒性都很弱总体来说,基于lP数据包TTL构造的隐蔽信道的带宽很小,这有利于提高信道的隐蔽性,并且由于网络流量巨大,即使在低带宽情况下也可以传输大量的隐蔽信息4 总结基于网络协议的信息隐藏是在信道中隐藏信息,相对于基于信源的隐藏通常具有更高的安全性本文通过对JP包的封装结构和通信过程的分析,指出lP包的TTL值隐藏信息的可能性,并提出了基于IP包生存时间的信息隐藏方法理论分析和实践表明,该方法具有实际应用的可行性和较好的安全性参考文献[l]Girling,N.and C., Covert Channels in LAN´s. IEEE Transactionson Software Engineering.1987.[2]万宏辉.基于TCP/JP的信息隐藏,湘潭师范学院学报:[来自WWW]自然科学版.2007.[3]杨智丹等,基于lP报头选项的网络隐蔽通道技术.计算机工程.2009.[4]杨智丹,刘克胜与李丽.IPv6中的网络隐蔽通道技术研究冻南大学学报(自然科学版).2007.-全文完-。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.