◆张 博
网络安全之IP隐通道研究
◆张 博
(北京政法职业学院信息技术系 北京 102628)
目前网络安全的形势日益严峻,网络安全领域中的攻击手段层出不穷,目前利用隐通道传输信息也是网络攻击与防御中使用的一种方法。在包交换网络中,IP隐通道的实现方式主要是IP存储隐通道与IP时间隐通道,其中IP时间隐通道利用数据包的时间属性隐蔽的特点传输信息,难于检测与消除,是现在IP隐通道技术的主流。
存储隐通道;时间隐通道;IP隐通道
随着网络的飞速发展,全球范围内网络安全事件的日益增加,另外《网络安全法》及一系列配套政策法规的出台与实施,也昭示网络安全的形势日益严峻。
网络安全领域中攻击手段、方式层出不穷,对于信息的完整性、保密性、可用性、可控性和不可否认性造成了严重的威胁。从网络防御的角度如何保护信息或数据的安全,一种有效方式就是实现隐蔽通信。
隐蔽通信是指采取了隐蔽措施的通信,使得窃密者无法感知到信息的传输或对截获到的信息无法解读,从而达到对传输信息的保护。目前隐蔽通信的方式大致有:传输信息的隐蔽、通信方式的隐蔽、传输信道的隐蔽、传输信号频谱(或其他物理信息)的隐蔽。其中传输信道的隐蔽,即隐通道信息传输更为隐秘,更不易被感知与截获,在隐蔽通信中应用越来越宽泛。
隐通道(Covert Channel)的概念形成于上世纪70年代初期,美国国防部的“可信计算机系统评估准则”把对隐通道的限制和分析纳入了安全计算机系统的标准中。隐通道是一个能绕过系统制定好的安全机制的通信通道,以违反信息安全策略的方式传输信息,发送、接收双方利用合法操作实现隐蔽传输信息的目的,具有抗截获、抗检测等特点。
从嵌入隐蔽信息的方式进行划分,隐通道分为存储隐通道(Covert Storage Channel)和时间隐通道(Covert TimingChannel)。存储隐通道是指发送方将信息直接或间接地写入某些存储位置(内存单元、外存空间、网络数据包等),而接收方通过读取此存储位置的信息,按照双方约定好的规则还原出来自发送方的信息。时间隐通道是指发送方将信息嵌入到与时间有关的参数中,在信息交互中并不改变信息的内容,接收方通过预先定义好的规则将顺序、间隔、周期变化等与时间有关的参数来还原信息,达到隐蔽传输信息的目的。
因网络隐通道与网络协议密切相关,TCP/IP作为事实上的网络协议应用广泛,其应用场景为路由、交换等网络设备所组成的包交换网络中,因此在包交换网络中的网络隐通道也称为IP隐通道,IP隐通道通常分为IP存储隐通道与时间隐通道。
IP存储隐通道主要是利用网络协议漏洞,利用协议报文的报头中选项域字段,将需要传输的信息嵌入其中,达到隐蔽传输的效果。因某些选项域字段空闲不用,而且其长度可变,同时网络中安全机制或者安全设备对此并不做检测,使通过该种方式建立隐通道成为可能。其中常见的实现途径有:IP、ICMP、TCP、HTTP等。
基于网络的IP存储隐通道,一般是通过修改网络包的包头(协议冗余位)或载荷数据(协议伪装)传输信息。此种类型的隐通道利用现有协议报文中的冗余位,非常容易实现,成本低廉。初期该种方式吸引了众多科研工作者利用协议中的冗余位实现隐蔽通信。
IP存储隐通道网络中常用的传输安全的检测手段为防火墙,目前防火墙中常见的是包过滤防火墙,其主要依据源地址、目的地址、源端口号、目的端口、协议等五元组来完成对数据包的过滤,不会检查报文的内容,无法对隐通道进行检测与阻止。随着技术发展,防火墙技术引入了流量正规化技术(traffic nor-malization),即将进出IP数据包的冗余位强制使用相同的格式改写,有效地限制了IP存储隐通道的使用。
随着防火墙技术、入侵检测防御系统的发展,利用IP存储隐通道传输信息越来越难以隐蔽,因此又发展出利用时间属性的IP时间隐通道,由于包交换网络的时延因素更为复杂,因此IP时间隐通道很难被检测与消除。
基于网络的IP时间隐通道(IP Covert Timing Channel),不修改网络包本身,将隐蔽传输的信息调制成与时间相关,发送方通过改变网络包的间隔、速率、顺序等方式将传输信息嵌入,接收方按照相同规则检测、度量这些网络包的相应时间属性进行解析获得信息。依据不同时间类型,IP时间隐通道可以分为网络包时间间隔、网络包速率、网络包顺序、及其他可以利用时间属性表达隐藏信息的隐通道。
由于网络环境复杂多变,网络包间间隔时间序列具有复杂多变的特点,包间时延隐通道通过控制网络包之间的延时间隔,通过自主产生载体数据流(主动式隐通道)或者操控其他载体数据流嵌入隐蔽信息(被动式隐通道)来传输隐蔽信息,其适用性最广,收发双方可跨越本地物理网络,可以部署在传输终端或网络中间节点,是目前IP时间隐通道研究的主流。
包间时延IP时间隐通道是指发送方将秘密消息调制到网络传输的的数据包间时间间隔中,接收方记录网络包到达的时间,根据网络包的时间间隔来还原出隐蔽消息。
(1)包间时延IP隐通道的分类
包间时延隐通道通过改变相邻网络包的时间间隔嵌入隐蔽消息,按照对时间参数的定义不同,可分为以下几类:
①IP网络包隐通道:在设定时间段内,发送网络数据包代表传输1,不发送网络数据包代表传输0。
②击键间隔隐通道:Telnet等应用每次击键都发送一个网络数据包,设定时间间隔预设值x,控制它们所发送的网络包间隔t,当网络包时间间隔t>x时定义为1,反之当t ③重放时间隐通道:与击键间隔隐通道类似,预先收集大量正常网络发送行为的包间隔,按间隔长短分为2个集合(较小的间隔归入集合1、较大的归入集合2),发送方要传输0时从集合1中选取一个时间间隔,同理发送1时从集合2中选取一个间隔。 (2)包间时延IP隐通道的检测 包间时延隐通道在包交换网络中将隐蔽消息嵌入到IPD中,改变了IPD的分布统计规律。根据隐蔽通信和正常通信在IPD分布上的区别,下面介绍常见的几种包间时延隐通道的种检测方法: ①形状检测。基于统计建模的思想,对时间间隔序列执行统计,计算样本的分布规律,检测时统计实际网络包的时间间隔序列与正常通信的统计样本的差值,充分考虑网络抖动及时延的情况下,若两者之间的差值超出预先设置好的阈值时,就可以初步判断网络通信中是否还有隐通道。由于实际网络时延的不确定性,阈值的选取非常困难,实际的检测结果也不尽如人意。 ②规则检测。正常网络IPDs随时间不断变化,而隐通道的IPDs由于其按照既定策略进行调整导致其变化规律相对固定。将IPDs分段,比较正常网络IPDs与待检测网络IPDs每段的变化差值来检测是否存在隐通道。由于包交换网络的不稳定性,该种检测方式误差较大。 ③熵检测。主要以重复时间间隔为检测对象,在规则性检测的基础上,使用高阶熵率(熵率代表无穷序列的不确定性,熵率小说明时间关联度大,反之说明关联度小)检测隐通道产生的重复间隔。统计正常网络通信和检测对象的相对熵,计算它们概率分布之间的散度,判断隐通道的存在。 由于IP隐通道是利用IP网络中正常的数据传输通道,对其检测及防御非常困难,尤其是IP时间隐通道利用了包交换网络中的时间属性,其隐蔽性更强,对其的检测更加困难,目前是IP隐通道中的主流技术,不过总体来说IP时间隐通道对于网络抖动异常敏感,目前的实现方式鲁棒性不强、传输速率不高、抗干扰不强,另外无论在检测技术方面还是实现技术方面都还有很多难点需要攻克,随着人工智能的发展,其基于IP时间隐通道的渗透与防御将会更加错综复杂,也将是网络安全领域未来持续研究的热点。 [1]J. Selvi and R. VandenBrink,“Covert Channels over Social Networks,”The SANS Institute,2012. [2]S. J. Murdoch,and S. Lewis,“Embedding Covert Channels into TCP/IP,”International Workshop on Information Hiding,2005. [3]R. Archibald,D. Ghosal,A comparative analysis of detection metrics for covert timing channels,Computers & Security,2014. 北京政法职业学院科研课题《移动互联网中信息隐藏通道研究》(KY201808)。3 总结