编辑: 摇摆白勺白芍 | 2015-11-23 |
网络攻击确实是一个至关重要的问题.本章将描述是什么使得网络安全与前面讲过的应用程序和操作安全既有区别又有相似之处.由于网络的增长和变化速度比计算机科学其他方面的发展速度更快,因此,不可能介绍所有最流行的攻击与防御技术.但新的形式和变化都是建立在一些基础知识之上的.这些知识包括:网络基本概念、网络威胁和网络控制等. 7.1 网络的概念 由于网络存在单一故障点(single point of failure),所以是脆弱的.但是网络具有恢复(resilience)或容错能力(fault tolerance),所以又是健壮的.一般认为,网络的中间部分很健壮,但其周边却是脆弱的. 在一般用户的眼里,一个网络看起来就像一个设计成两端由中间的一条单线连接起来的东西.这里,我们在描述计算机网络时,着重介绍安全的概念,同时也以简化的方式描述网络本身,而避免让网络的复杂性分散注意力.注意,我们描述的网络是对更复杂的实际网络的抽象. 7.1.1 网络 简单网络模型可以设想为两台设备通过硬件介质连接起来,并用软件实现设备间通信.可能一台计算机是服务器(server),另一台设备提供输入/输出是客户(client). 图7.1 网络的简单示意图 7.1.1 网络(续) 但实际网络的状况显然要比这复杂得多. (1) 执行用户到计算机通信的简单网络设备通常是一台微型计算机或者工作站,因此,客户端具有相当大的存储容量和计算能力. (2) 一个网络可以配置为单个客户与服务器相连,但在通常情况下,是多客户与多个服务器交互的. (3) 网络服务通常是由很多台计算机一起提供的.单个用户会话在客户与服务器之间来回传送消息的过程中,需要经过一些中间计算机.但这些计算机中的部分如果正在实现其他重要的交互服务,则消息可能被暂停传输. (4) 在终端用户接受服务的过程中,通常不会意识到发生了很多会话和计算工作. 7.1.1 网络(续) 通常,网络中的一个单一的计算系统称为一个节点(node),其任务处理设备(计算机)称为主机(host).两台主机之间的连接称为链路(link),网络计算由许多用户、通信介质、可见主机和通常对终端用户不可见的系统组成.系统是一个处理器的集合,通常都具有比工作站(workstation)更强的处理能力和更大的存储空间. 图7.2 更复杂但更典型的网络示意图 7.1.1 网络(续) 使用环境 网络具有以下几个典型的特征: (1) 匿名性:网络隐藏了通信者绝大多数的特征,如相貌、声音以及环境,而在通常情况下,我们是以这些特征相互认识的. (2) 自动性:通信自动完成. (3) 远程性. (4) 透明性:用户甚至不清楚当前通信的主机与上一次通信的主机是否相同. (5) 路由的多样性:为了维护和提高网络的可靠和性能,通信路由通常动态分配. 7.1.1 网络(续) 外形和尺寸 网络按照节点和连接的形式进行组织的方式,称为网络的拓扑结构(topology).其与安全相关的特性有: (1) 边界:边界将一个网络的元素与不属于该网络的元素区分开来. (2) 拥有关系:要想知道网络中每台主机的拥有者是很困难的. (3) 控制:如果说拥有关系是不确定的,那么控制也就是不确定的了. 7.1.1 网络(续) 通信模式 数据的通信要么采用数字(digital)格式(传输的数据以离散的二进制数值表示),要么采用模拟(analog)格式(传输的数据以连接范围的一系列点来表示,使用的介质采用声音或者电压).转换工作由调制解调器来完成,可以实现数字和模拟信号之间的双向转换. 7.1.2 传输介质 通信可以使用几种传输介质: (1) 电缆:可以是双绞线(twisted pair)或者无屏蔽双绞线(unshielded twisted pair, UTP)也可以是同轴电缆(coaxial (coax) cable). (2) 光纤:采用极细的玻璃作为传输介质.传输的是光束而不是电能.光纤介质所产生的串扰非常低、价格和重量相对铜线而言都低得多.铜线逐渐被光纤所取代. (3) 无线:采用无线电信号传送通信信号.很多符合802.11协议的设备都适用于建立办公室或者家庭无线网络. 7.1.2 传输介质(续) (4) 微波:微波信道的容量与双绞线相当.微波信号必须在小于相距49公里的地方进行中继. (5) 红外:红外线通信传输距离不超过11.5公里.由于传输直线的要求和距离的限制,红外线一般只在像办公室那样有保护措施的范围内使用. (6) 卫星:卫星通信链路的质量通常比在地球上铺设的电缆更好.卫星通常在一个很广的范围内传播通信信号.从使用性考虑总是希望信号覆盖很宽的范围,但是覆盖范围越窄,被窃听的危险就越低. 7.1.3 协议 通信可以与实际的通信介质相互分开.协议(protocol)的定义使得这一独立性的实现成为可能,允许用户以一个较高的、抽象的通信层次看待网络.在通信的两端,通信完成的细节过程通过硬件和软件技术被隐藏了.这些硬件和软件依据协议栈(protocol stack)行事.协议栈中的每一层都像是定义了一种语言,使用该语言就可实现在该层中相关信息之间的相互交流. 目前,网络中用得最多的是两种协议栈:开放系统互连协议(OSI)体系和传输控制与互连协议(TCP/IP)体系. 7.1.3 协议(续) ISO OSI参考模型 OSI参考模型包含7层.我们可以把这些层看成是在一条装配线,每一层将自己提供的服务添加到整个通信过程中. 通过物理介质进行实际通信,独立的位传输 物理层