第2章 网络安全基础 计算机技术正在日新月异地迅猛发展,功能强大的计算机和Intranet/Internet正在世界范围内普及。信息化和网络化是当今世界经济与社会发展的大趋势,信息资源的深入开发利用以及各行各业的信息化、网络化已经迅速展开;全社会广泛应用信息技术,计算机网络广泛应用为人们所关注。面对当前严重危害计算机网络的种种威胁,必须采取有力的措施来保证计算机网络的安全。但是现有的计算机网络大多数在建立之初都忽略了安全问题,即使考虑了安全,也仅把安全机制建立在物理安全机制上。本章分析了计算机网络安全体系的含义以及其安全机制,并对当前网络安全应涉及的一些内容做了介绍。
2.1 网络安全体系结构 计算机网络安全体系结构是网络安全最高层的抽象描述,在大规模的网络工程建设与管理和网络安全系统设计开发的过程中,需要从全局的体系结构和考虑安全问题的整体解决方案角度出发,才能保证网络安全功能的完备性与一致性,降低安全的风险、代价和管理的费用。 因此,安全体系结构对于网络安全的理解、设计、实现与管理都具有重大意义。
2.1.1 开放系统互连参考模型 层次 名称 主要功能 功能概述 应用样例 7 应用层 具体应用功能,解决做什么 2.1.1 开放系统互连参考模型 层次 名称 主要功能 功能概述 应用样例 7 应用层 具体应用功能,解决做什么 提供(OSI)用户服务,如文件传输、电子邮件、网络管理等 Telnet、HTTP 6 表示层 表示、表达、解决像什么 实现不同格式和编码之间的交换,传递数据的语法及语义 ASCII、JPEG、EBCDIC 5 会话层 如何检查?对方是谁 在两个应用进程之间建立和管理不同形式的通信对话。其数据流方向控制有三种,即单工、半双工、双工 操作系统、应用访问规划 4 传输层 对方在何处 提供传递方式,进行多路利用,实现端点间的数据交换、为会话层实现提供透明的、可靠的数据传输服务 TCP、UDP、SPX 3 网络层 数据走什么路径到达 通过分组交换和路由选择为传输层实体提供端到端的交换网络数据,传送功能使得传输层摆脱路由选择、交换方式、拥挤控制等网络传输细节,实现数据传输 IP、IPX 2 数据链路层 每一步应该怎样走 进行二进制数据块传送,并进行差错检测和数据流控制。它分为两个子层,即介质访问控制协议(MAC)和逻辑链路控制协议(LLC) 802.3/802.2、 HDLC 1 物理层 对上一层的每一步如何利用物理传输介质传送 通过机械和电气互联方式把实体连接起来,让数据流通过 EIA-RS232、 10Base2、 10Base5
2.1.2 Internet网络体系层次结构 Internet目前使用的协议是TCP/IP协议。TCP/IP协议是一个4层结构的集网络通信、应用、服务、管理等多种功能的协议族,这4层协议分别是物理网络接口层协议、网际层协议、传输层协议和应用层协议。 TCP/IP族的4层协议与OSI参考模型的7层协议和常用协议的对应关系如图2-1所示。
2.1.3 网络安全层次特征体系 1. 安全特性的安全问题 2. OSI参考模型的安全问题 3. 系统单元的安全问题 2.1.3 网络安全层次特征体系 1. 安全特性的安全问题 2. OSI参考模型的安全问题 3. 系统单元的安全问题 4. 物理环境的安全问题 5. 网络系统本身的安全问题 6. 应用系统的安全问题 7. 网络管理的安全问题
2.1.4 IPv6的安全性 IPv6是Internet Protocol version 6的缩写,也被称作下一代互联网协议,它是由IETF(互联网工程任务组)设计的用来代替现行的IPv4协议的一种新的IP协议。 1. IPv6概述 2. IPv6安全性分析 (1) 防火墙的设计 (2) 入侵检测系统(IDS)的设计
2.2 网络协议安全分析 计算机网络互连使得网络通信和信息共享变得更为便捷,同时也将开放的系统暴露在易受攻击的环境中。 2.2 网络协议安全分析 计算机网络互连使得网络通信和信息共享变得更为便捷,同时也将开放的系统暴露在易受攻击的环境中。 TCP/IP的安全脆弱性大致可归结为以下3点: (1) 无验证通信双方真实性的能力,缺乏有效的认证机制。 (2) 无保护网上数据隐私性的能力,缺乏保密机制。 (3) 协议自身设计细节和实现中存在一些安全漏洞,容易引发各种安全攻击。
2.2.1 物理层安全 物理层安全威胁主要指网络环境和物理特性引起的网络设备和线路的不可用而造成的网络系统的不可用,如设备被盗、意外故障、设备损毁与老化、信息探测与窃听等。由于以太网中采用广播方式,因此,在某个广播域中利用嗅探器可以在设定的端口侦听和分析信息包,致使本广播域的信息传递暴露无遗。 所以需将两个网络从物理上隔断,同时保证在逻辑上两个网络能够连通。物理层安全措施相对较少。
2.2.2 网络层安全 网络层的安全威胁主要有两类:IP欺骗和ICMP(因特网控制信息协议)攻击。 2.2.2 网络层安全 网络层的安全威胁主要有两类:IP欺骗和ICMP(因特网控制信息协议)攻击。 IPSec(Internet协议安全)是一个工业标准网络安全协议,为IP网络通信提供了透明的安全服务,保护TCP/IP通信免遭窃听和篡改,可以有效抵御网络攻击,同时保持易用性。IPSec在TCP/IP协议栈中所处的层次如图2-3所示。
1. IPSec协议的安全特征 2. IPSec协议的优点 1) 不可否认性 2) 反重播性 3) 数据完整性 4) 数据可靠性(加密) 2.2.2 网络层安全 1. IPSec协议的安全特征 1) 不可否认性 2) 反重播性 3) 数据完整性 4) 数据可靠性(加密) 5) 认证数据源 2. IPSec协议的优点
2.2.3 传输层安全 传输层安全措施主要取决于具体的协议。传输层主要包括传输控制协议(TCP)和用户数据报协议(UDP)。TCP是一个面向连接的协议,保证数据的可靠性。TCP用于多数的互联网服务,如HTTP、FTP和SMTP。 最常见的是Netscape通信公司设计的安全套接层协议(Secure Sockets Layer,SSL),SSL结构如图2-5所示。
2.2.3 传输层安全 1. SSH协议 2. SSL协议 3. 传输层安全协议
2.2.4 应用层及网络应用安全 1. 简单邮件传输协议(SMTP) 2. 文件传输协议(FTP) 3. 超文本传输协议(HTTP) 2.2.4 应用层及网络应用安全 1. 简单邮件传输协议(SMTP) 2. 文件传输协议(FTP) 3. 超文本传输协议(HTTP) 4. 简单网络管理协议(SNMP) 5. 域名系统(DNS) 6. 安全HTTP协议 7. 安全Telnet协议 8. 安全文件传输协议 1)FTP模型 2)FTP协议的安全扩展 3) 协议的安全问题及防范措施 (1) 漏洞。 (2) 反弹攻击。
2.2.5 安全协议的最新发展 安全协议的研究主要包括两方面内容,即安全协议的安全性分析研究和各种实用安全协议的设计与分析研究。安全协议的安全性分析方法主要有两类:一类是攻击检验方法,另一类是形式化分析方法,其中安全协议的形式化分析方法是安全协议研究中最关键的研究问题之一。 从大的方面讲,在协议形式化分析方面比较成功的研究思路可以分为3种:第一种思路是基于推理知识和信念的模态逻辑;第二种思路是基于状态搜索工具和定理证明技术;第三种思路是基于新的协议模型发展证明的正确性理论。
2.3 安全服务与安全机制 为实现开放系统互连环境下的信息安全,ISO/TC97技术委员会制定了ISO 7482-2国际标准。它从体系结构的角度,描述了实现OSI参考模型之间的安全通信所必须提供的安全服务和安全机制,建立了开放系统互联标准的安全体系结构框架,为网络安全的研究奠定了基础。
2.3.1 安全服务 1. 对象认证 2. 访问控制 3. 数据保密性 4. 数据完整性 5. 防抵赖 1) 信息保密 2) 选择保密 2.3.1 安全服务 1. 对象认证 2. 访问控制 3. 数据保密性 1) 信息保密 2) 选择保密 3) 业务流保密 4. 数据完整性 1) 连接的完整性(包括有恢复的和无恢复的) 2) 选择段有连接的完整性 3) 无连接的完整性 4) 选择段无连接完整性 5. 防抵赖 1) 发送防抵赖 2) 递交防抵赖 3) 公证
1. 加密机制 2. 数字签名机制 3. 访问控制机制 4. 数据完整性机制 5. 鉴别交换机制 6. 通信业务填充机制 7. 公证机制 2.3.2 安全机制 1. 加密机制 2. 数字签名机制 3. 访问控制机制 4. 数据完整性机制 5. 鉴别交换机制 6. 通信业务填充机制 7. 公证机制
2.3.3 安全机制与安全服务之间的关系 安全机制 安全服务 加密 数字 签名 访问 控制 数据 完整性 验证 交换 信息 流填充 路由 2.3.3 安全机制与安全服务之间的关系 安全机制 安全服务 加密 数字 签名 访问 控制 数据 完整性 验证 交换 信息 流填充 路由 仲裁 对等实体验证 Y 数据源验证 访问控制服务 连接的保密性 无连接的保密性 选择域的保密性 信息流的保密性 带恢复的连接完整性 不带恢复连接的完整性 选择域的连接完整性 无连接的完整性 选择域的无连接完整性 带源证据的非否认 带交付证据的非否认
为了能够进行网络管理,需要使用到以下这些常用的网络命令。 2.4 网络操作命令 为了能够进行网络管理,需要使用到以下这些常用的网络命令。
2.4.1 ipconfig 1. 使用ipconfig/all命令查看配置 2. 使用ipconfig/renew命令刷新配置 如图2-9所示的ipconfig/all命令输出,把该计算机配置成静态配置IP地址,并使用DNS服务器解析名称。 2. 使用ipconfig/renew命令刷新配置
2.4.2 ping ping命令有助于验证IP级的连通性。发现和解决问题时,可以使用ping命令向目标主机名或IP地址发送ICMP回应请求。 ping命令的格式及其参数如图2-10所示。 ping命令有两种常见的用法:一个是ping IP地址;另一种是ping主机域名。
2.4.3 arp 使用arp命令可以解决硬件地址的问题。地址解析协议(ARP)允许主机查找同一物理网络上主机的媒体访问控制地址(如果给出后者的IP地址)。 可以使用arp命令查看和修改本地计算机上的ARP表项。arp命令对于查看ARP缓存和解决地址解析问题非常有用,如图2-11所示。
2.4.4 nbtstat nbtstat命令是解决NetBIOS名称解析问题的有用工具,可以使用nbtstat命令删除或更正预加载的项目。 nbtstat –c:显示NetBIOS名称缓存,包含其他计算机的名称对地址的映射。 nbtstat –R:清除名称缓存,然后从Lmhosts文件重新加载。 nbtstat –RR:释放在WINS服务器上注册的NetBIOS名称,然后刷新它们的注册。 nbtstat –a name:对 name选项指定的计算机执行NetBIOS适配器状态命令。适配器状态命令将返回计算机的本地NetBIOS名称表,以及适配器的媒体访问控制地址。 nbtstat –S:列出当前的NetBIOS会话及其状态(包括统计)。
2.4.5 netstat 可以使用netstat命令显示协议统计信息和当前的TCP/IP网络连接。 netstat –a:显示所有连接和监听窗口。 netstat –b:显示包含于创建每个连接或监听端口的可执行组件。在某些情况下已知可执行组件拥有多个独立组件,并且在这些情况下包含于创建连接或监听端口的组件序列被显示。 netstat –e:显示以太网统计信息。此选项可以与-s选项组合使用。 netstat -n:以数字形式显示地址和端口号。 netstat -o:显示与每个连接相关的所属进程ID。 netstat -p proto:显示proto指定的协议的连接;proto可以是下列协议之一;TCP、UDP、TCPv6或UDPv6。如果与-s选项一起使用以显示按协议统计信息,proto可以使下列协议之一:IP、IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP或UDPv6。 netstat –r:显示路由表。 netstat -s:显示按协议统计信息。默认显示IP、IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP和UDPv6的统计信息。 netstat -p:用于指定默认情况的子集。 netstat -v:与-b选项一起使用时将显示包含于为所有可执行组件创建连接或监听端口的组件。
2.4.6 tracert tracert(跟踪路由)是路由跟踪实用程序,用于确定IP数据访问目标所采取的路径。tracert命令用IP生存时间(TTL)字段和ICMP错误消息来确定从一个主机到网络上其他主机的路由。 通过向目标发送不同的IP生存时间(TTL)值的“Internet控制消息协议(ICMP)”回应数据包,tracert诊断程序确定到达目标所采取的路由。要求路径上的每个路由器在转发数据包之前至少将数据包上的TTL值递减1。数据包上的TTL减为0时,路由器应该将“ICMP已超时”的消息发回源系统。
1. net start<service name>命令 2. net stop <service name>命令 3. net user命令 4. net localgroup命令 5. net share命令
2.4.8 nslookup nslookup工具包含在Windows NT和Windows 2000中,并总是随同BIND软件包一起提供。它可以提供许多选项,并提供一种方法从头到尾地跟踪DNS查询,是用来进行手动DNS查询最常用的工具。 nslookup可以用于两种模式:非交互模式和交互模式。 非交互模式下对nslookup的使用如下所示。
2.5 本 章 小 结 在这一章中讨论了网络安全体系结构及网络协议的安全性,包括网络基本协议和应用协议。在网络基本协议中,主要介绍了TCP/IP协议族的相关协议安全,网络协议是所有网络应用安全的基础,也是相关网络安全的集合,学习相关网络协议的安全性知识对于后续的网络安全知识的了解将起到很大的帮助作用。 此外,本章还介绍了一些常见的网络操作命令。
2.6 课 后 习 题 1. 填空题 2. 选择题(每小题只有一个正确答案) 3. 判断题 4. 简答题 参见教材P65