会话层概述
扫描二维码
随时随地手机看文章
会话层(Session)是建立在传输层之上,利用传输层提供的服务,使应用建立和维持会话,并能使会话获得同步。会话层使用校验点可使通信会话在通信失效时从校验点继续恢复通信。这种能力对于传送大的文件极为重要。
网络七层协议(Open System Interconnection),简称OSI,是一个开放性的通行系统互连参考模型,他是一个定义的非常好的协议规范。OSI模型有7层结构,每层都可以有几个子层。 OSI的7层从上到下分别是 7 应用层 6 表示层 5 会话层 4 传输层 3 网络层 2 数据链路层 1 物理层 其中高层,即7、6、5、4层定义了应用程序的功能,下面3层,即3、2、1层主要面向通过网络的端到端的数据流。
会话层,表示层,应用层构成开放系统的高3层,面对应用进程提供分布处理,对话管理,信息表示,恢复最后的差错等. 会话层同样要担负应用进程服务要求,而运输层不能完成的那部分工作,给运输层功能差距以弥补.主要的功能是对话管理,数据流同步和重新同步。要完成这些功能,需要由大量的服务单元功能组合,已经制定的功能单元已有几十种.。如果您想要用尽量少的词来记住这第5层,那就是“对话和交谈”。
会话层的主要标准有"DIS8236:会话服务定义"和"DIS8237:会话协议规范".会话层(SESSION LAYER)允许不同机器上的用户之间建立会话关系。会话层循序进行类似的传输层的普通数据的传送,在某些场合还提供了一些有用的增强型服务。允许用户利用一次会话在远端的分时系统上登陆,或者在两台机器间传递文件。 会话层提供的服务之一是管理对话控制。会话层允许信息同时双向传输,或任一时刻只能单向传输。如果属于后者,类似于物理信道上的半双工模式,会话层将记录此时该轮到哪一方。一种与对话控制有关的服务是令牌管理(token management)。有些协议会保证双方不能同时进行同样的操作,这一点很重要。为了管理这些活动,会话层提供了令牌,令牌可以在会话双方之间移动,只有持有令牌的一方可以执行某种关键性操作。另一种会话层服务是同步。如果在平均每小时出现一次大故障的网络上,两台机器简要进行一次两小时的文件传输,试想会出现什么样的情况呢?每一次传输中途失败后,都不得不重新传送这个文件。当网络再次出现大故障时,可能又会半途而废。为解决这个问题,会话层提供了一种方法,即在数据中插入同步点。每次网络出现故障后,仅仅重传最后一个同步点以后的数据(这个其实就是断点下载的原理)。
会话劫持由于会话层传输数据的特点所以在发生会话时可能会出现会话劫持。会话劫持发生在攻击者试图接管两台计算机间所建立的TCP会话的时候。会话劫持的基本步骤包括:寻找会话、猜测序号、迫使用户掉线、接管会话。会话劫持的目的是窃取有效系统的一个授权连接。如果黑客成功了,那么他就可以执行本地命令。如果他劫持了一个特权帐户,那么黑客就拥有了与特权用户一样的访问权限。会话劫持之所以会如此的危险是因为它允许控制现有的帐号,这使得攻击就几乎没有痕迹。两种可用于会话劫持的工具是Ettercap和Hunt。
阻止和检测会话劫持有两种主要的机制可以解决劫持的问题:阻止和检测。阻止的方法包括限制到达的连接数,以及配置网络拒绝来自因特网但却宣称来自于本地地址的数据包。加密也会有所帮助。如果你必须允许来自外部的可信任主机的连接,那么要使用Kerberos或IPsec进行加密。FTP和Telnet是相当脆弱的,我们需要使用更安全的协议。SecureShell(SSH)是一个很好的选择。SSH在本地和远程主机上建立一个加密的通道。使用IDS或IPS系统可以改进检测。使用交换机、诸如SSH的安全协议,以及更加随机的初始序列号都将增加会话劫持的难度。