
第七章节隐蔽通信课件.ppt
27页7.1 隐蔽通信概述,将传统的安全解决方案与网络结合起来,这就是信息隐藏研究的一个重要领域---隐蔽通信 隐藏通信可以引用的例子包括阈下信道、隐蔽通道等7.1 隐蔽通信概述,阈下信道(定义):阈下信道存在于诸如密码系统、认证系统和数字签名方案等加密协议中,该信道在发送者和隐藏的接受者之间传送秘密的信息,该信息不能被公众和信道管理者所发现 隐蔽通信:保护通信信道不被别人窃听和进行通信量分析,这种技术提供一种基于TCP/IP协议的匿名连接,从数据流中除去用户的标识信息 多层代理服务器,层层传递后到达目的地址,每层路由器只能识别最临近的一层路由器,第一层路由器对本次连接进行多层加密,以后每经过一层路由器,除去一层加密,最后到达的是明文,这样每层路由器处理的数据都不同隐存储信道、隐定时信道、阈下信道 隐信道可以采用不同的文件名,或多个身份等信息来编码秘密消息,隐蔽性很强隐定时信道可以利用时间轴上的事件序列来进行编码 隐信道的存在条件:网络设计实现中的漏洞,如文件命名的规定,用户编码等接入控制机构实现或运行的不正确所造成的漏洞;接收双方之间存在共享资源 在网络通信中,发信者成为密信信源,收信者成为密信信宿,密信经过的通道构成了隐蔽通信信道。
7.2 隐蔽通道,在系统中可用资源的状态,是系统可用的资源都能用于隐蔽通道:即在系统内部从一方到另外一方发送信号信息变化表明文件状态在系统中有一系列的点状态 隐蔽通道是描述双方之间通信连接的,它允许一方以不违反系统的安全策略的方式传送信息到另一方 隐蔽通道分为两类:隐蔽存储通道和隐蔽时分通道7.2 隐蔽通道,在隐蔽存储通道中的通信发送方必须把隐藏数据写入到存储区(不是通信的存储区),并且信息的恢复由接收方完成 在时分隐蔽通道中,通信需要发送方通过调制自身系统资源发送信号信息隐蔽通道可以利用源方和接收方的嵌入和检测处理的结合 隐蔽通道的存在一定是不可检测的在信息隐藏中,通信双方允许彼此通信,基于系统的安全策略,当使用隐蔽通道定义相关的特性时,即在合法的信息内容上加上无法觉察的信息 隐写术 在数字图像中使用每个像素的低端两个或三个比特位来隐蔽信息并进行通信时,最后的两或三位的信息不影响载体图像内容,并且隐藏了秘密内容的存在隐写术确保了隐蔽通道用于传送秘密信息隐蔽通信也能使用数据包作为载体因为所有通过网络的信息都以数据包的形式通过网络,当通过不同网络拓扑,在它们到达目的地之前,这些数据包由网络结点共享。
在网络环境中信息隐藏的完善的方案应该围绕网络并结合信息隐藏 隐蔽通道的定义违背了系统安全的策略因此这样的通道威胁到系统安全同时没有被利用的带宽的可用性又使这些隐蔽通道存在7.3 TCP隐蔽通信,TCP/IP协议为通信提供了语法和语义规则它们包括信息格式的详细资料,描述了当信息到达时计算机如何响应,特别说明计算机如何处理差错或其他异常条件 TCP/IP协议组能够提供简单开放的通信基础设施目标是通信的最大化、连通性和协作 协议组提供了三种服务,面向应用的服务、可靠的服务和无连接的服务可靠的和无连接的信息传送由网络层服务提供而面向应用的机制由应用层提供 流行的Internet应用服务包括:WWW,E-mail,文件传输和远程登录等7.3.1 TCP协议概述,无连接服务包括网络数据包的尽力而为的传送,它是最基本的互连网服务,TCP/IP根据信息携带的地址信息,使用网络从一台计算机向其他计算机发送信息 IP协议位于网络层提供无连接服务 可靠的传输层服务确保包发送到目的地,并且没有传输差错,丢失包和中间结点的失败,沿着从发送方到接收方的路径TCP提供了这些可靠的传送服务并形成了传输层协议组7.3.2 TCP隐蔽通信的实现,隐蔽通信技术的不可检测性是一个问题。
例如,对TCP/IP头的顺序号字段进行处理,编码方法采用如每一次相同字母的方法来偷偷通信 它将编码为同样的顺序号另外,顺序号字段的使用以及确认帧字段不能被使用ASCII码,因为对于具体的网络数据包,这些字段都被认为是发送和接收数据 网络层的包分解和重组,也可以用于隐蔽通信,Alice和Bob可以使用段偏移字段来隐藏数据位 在传输层,也可以使用用于路由的和错语检验的字段来隐藏信息7.3.2 TCP隐蔽通信的实现,TCP协议中的信息隐藏的载体是数据包因为在网络环境中隐蔽通道指的是隐蔽信道在TCP中,将秘密消息根据某种嵌入算法嵌入到数据包,生成伪数据包在信道中传输因为伪数据包在网络中传输,通过路由器等各种结点,数据包可能丢失或者并没有按原顺序到达目的地,这样我们需要重排序机制与QoS机制来对网络通信量进行分类TCP协议的隐藏通道的基本思想是:只使用带有ACK标识的TCP包进行通信在每个源端,具有ACK标识的TCP报文数据域包含要执行的命令,远程被控制端将立即发送TCP复位报文,并向主控端传送命令的执行结果从表面上整个通信过程就像是在已建立的TCP连接上进行的,另外主控端和被控制端的端口分别被选为80端口和私有端口,从而更加增强了通道的隐蔽性。
在TCP协议的隐蔽通信实现的过程中,主要是针对TCP协议头利用适当的编码技术和解码技术TCP协议具有信息隐藏的潜力因为TCP的传输是透明的,这就使隐蔽通信也是透明的,并且在开放环境中的信息传输大部分都通过Internet数据包进行传送TCP协议是在报文交换计算机通信网络中可靠的端对端的传输层协议TCP是面向连接的协议,它提供了进程间可靠的通信TCP报头如下所示,A和B双方使用TCP/IP时遵循三次握手的过程A想发送秘密信息“tonight”给B使用SYN包来建立和开始会话 (1) A为SYN包编码,A使用ISN(内码,其值用7602176,字母对应为t)来开始三次握手B的接收端口使用ISN加参数来进行解码得到相应的ASCII码,其对应的字母值为t,也就是秘密信息的第一个字母握手继续在会话继续的过程中,可能出现两种情况;一种情况是,B建立套接字来发送SYN/ACK,并从A方接收到确认帧另一种情况是,在接收到B的SYN/ACK帧之后,A给B发送RST来放弃这次会话2) 重复上述过程,A为tonight的其他字母依次依据内码来分别发送相应的SYN包,在接收方B,会依次分别地接收到相应的字母。
直到A给B发送RST为止 上述是隐蔽通道使用的例子任何网络传输所使用的传输协议都是TCP/IP协议使用在信道都是合法合理的信道第三方可能根本意识不到隐蔽通道的存在,这样,就达到了隐藏信息的目的7.4 IGMP中的隐蔽通信,IP多播:允许将信息传输给多个主机,多点传送路由器和主机为了完成多播,必须使用IGMP协议来传输组成员之间的信息这两个阶段为主机到路由器结合成一组,另外的消息队列是路由器到主机形成一组 IGMP封装在IP数据报中进行传输,IP的目的地地址是多播地址,组群管理协议(IGMP),IGMP是通过充分利用IP堆栈来实现的网络堆栈由不同的层构成,每一层只和相邻的上、下层通信IGMP使用第2层和第3层,使用方式与通常的单播或广播流略微不同 在网络上传输的数据流由数据包组成,每个数据包头均带有该数据包的起始地址和目的地址信息单播数据流(如文件传输)的起始地址十分明显,该地址就是IP地址,位于第3层或IP数据包头中,而起始媒体访问控制(MAC)地址则位于第2层或数据链路层上7.4 IGMP中的隐蔽通信,广播数据包的格式与单播数据包的格式一样,但在广播数据包中,目的地址是一个广播地址因此,对于网络地址为192.168.34.0的IP网络来说,它的目的地址是192.168.34.255。
多播数据流也必须遵循与单播和广播数据流相同的基本格式,它们之间的差别在于其目的地址的不同 IGMP多播数据流具有一个D类目的地址,范围为224.0.0.0~239.257.257.255该目的地址并不对应于网络中某台具体的计算机或主机,而是与网络中距离最近的第3层设备相匹配,通常为网络中的一个路由器当多播数据包到达路由器时,路由器必须决定是继续传输该数据包还是停止传输 作为该数据包目的地址的D类IP地址并非某一台实际的主机,而是一个组,它们必须先与离它最近的路由器连接,然后再告知数据流传输主机如果是首次到达的数据包,路由器便会开始“构建组”如果其他主机没有要求路由器从该组接收数据,那么这些数据包将被丢弃 多播数据流请求也使用D类地址如果一台主机希望寻找某个多播组,它会向保留地址224.0.0.2发送一个“加入”信息通过该保留地址,信息发送给了“子网上所有的路由器”当主机要求加入某个特殊组时,这条路径上的路由器便会将该请求向外发送出去最后,当找到该组时,数据流会顺着相同路径传回给提出请求的主机当主机接收完毕,决定不再需要该数据流时,它也向某个特殊的多播地址发送信息,然后该数据流便会停止发送。
在实际操作中,在由各个路由器和其他第3层设备组成的不同树结构中将会“删除”这台接收完毕的主机,数据流也不再发送给它基于IGMP协议,主机要求加入一个组的请求不必到达离数据流传输主机最近的路由器如果一台主机申请加入数据流传输路由中的某个多播组,那么离数据流传输路由器最近的路由器便会将这些数据包进行复制,然后从这一请求多播的端口大量地向下传输给提出申请的主机因此尽管每台提出请求的主机都可以接收到数据流,但由于这些请求并没有传输到源服务器,而数据流也只在需要多播的路由器上进行复制而不是在源服务器上复制,因此可以节省整个网络的带宽 如果某一系统只能进行单播而不能进行多播,那么每个请求都必须返回到源服务器,然后单独从源服务器获得所需的数据流在IP多播中,每台请求接收的PC都可以获得所需的数据流,而网络本身则管理这些PC和客户组为了实现IGMP多播,网络必须知道数据流在何处及何时进行复制 使用IGMP多播时,发送器(源服务器)将数据流和附加信息发送到离它最近,或在同一子网中的路由器接收到信息后,路由器创建一个符合D类IP地址定义的组目的地址(GDA) 路由器随后查看是否有客户机需要该多播组如果没有,路由器便丢弃那些从发送器传来的数据包,不再继续发送。
如果有客户机希望接收这些数据流,路由器将执行下列步骤: (1)接收器将一个专用多播IP地址发送到其子网中的所有路由器,并申明它希望加入一个多播组; (2)如果子网中的路由器找到了该多播组,它开始将数据包发送给提出请求的接收器相反,如果路由器没有找到IGMP组,它便向外发送信息并开始找寻这个组; (3)通过与其他路由器通信,最初发送请求的路由器便可找寻到这个多播组路由器之间的通信基于各种IGMP使用的“路由”协议,如多播开放最短路径优先(MOSPF)和距离向量多播路由协议(DVMRP) (4)当多播组找到后,该路径上的路由器便作为“源”路由器,发送或复制该数据流IGMP方案的最大好处在于节省了带宽网络A中的远程接收器从紧接源路由器后的第一个路由器接收一个数据流源路由器仅在需要复制的地方将这一数据流进行复制,而不是在源路由器进行复制,因此节省了带宽7.5 IP中的隐蔽通信,7.5 IP中的隐蔽通信,用于信息隐藏头字段的选择是变化的,并且不影响数据包的正常传输和处理在基于网络的隐蔽通信中,人们对网络数据包和协议的理解是比较含糊的,在设计的数据隐藏方案中,需要理解IP数据包及协议 在IP协议的分段策略中存在着冗余,在IP头的Flages字段中包含了分段信息。
第一位是保留位,第二位是DF位,代表不分段,第三位是MF位,代表更多分段未分段的数据报的分段信息均为0,例如MF=0,则13位的段偏移=0,这就给出了冗余的条件,DF可以携带任意的0或1,数量只是受数据报最大尺寸的限制考虑在同结构网络中的两个工作站Alice和Bob,这两个用户准备通过协议组来进行隐蔽通信假定网络的管理员已经。












