1、第11章 网络安全技术计算机网络技术及应用(第2版)11.1 网络安全问题概述n11.1.1网络安全的概念和安全控制模型n网络安全是指网络系统的硬件、软件及其系统中的数据受到保护,不会由于偶然或恶意的原因而遭到破坏、更改、泄露等意外发生。网络安全是一个涉及计算机科学、网络技术、通信技术、密码技术、信息安全技术、应用数学、数论和信息论等多种学科的边缘学科。图 11-1 网络安全的组成 图11-2网络安全模型 这种通用模型指出了设计特定安全服务的4个基本任务:n(1)设计执行与安全性相关的转换算法,该算法必须使对手不能破坏算法以实现其目的。n(2)生成算法使用的保密信息。n(3)开发分发和共享保密
2、信息的方法。n(4)指定两个主体要使用的协议,并利用安全算法和保密信息来实现特定的安全服务。11.1.2 安全威胁n安全威胁是指某个人、物、事件或概念对某一资源的机密性、完整性、可用性或合法性所造成的危害。某种攻击就是某种威胁的具体实现。n安全威胁可分为故意的(如黑客渗透)和偶然的(如信息被发往错误的地址)两类。故意威胁又可进一步分为被动和主动两类。1安全攻击n对于计算机或网络安全性的攻击,最好通过在提供信息时查看计算机系统的功能来记录其特性。当信息从信源向信宿流动时,图11-3列出了信息正常流动和受到各种类型的攻击的情况。图11-3 安全攻击n另外,从网络高层协议的角度,攻击方法可以概括地分
3、为两大类:服务攻击与非服务攻击。n服务攻击(Application Dependent Attack)是针对某种特定网络服务的攻击,如针对E-mail服务,Telnet,FTP,HTTP等服务的专门攻击。n非服务攻击(Application Independent Attack)不针对某项具体应用服务,而是基于网络层等低层协议而进行的。TCP/IP协议(尤其是Ipv4)自身的安全机制不足为攻击者提供了方便之门。2基本的威胁n网络安全的基本目标是实现信息的机密性、完整性、可用性和合法性。4个基本的安全威胁直接反映了这4个安全目标。一般认为,目前网络存在的威胁主要表现在:n(1)信息泄漏或丢失。n
4、(2)破坏数据完整性。n(3)拒绝服务攻击。n(4)非授权访问。3主要的可实现的威胁n这些威胁可以使基本威胁成为可能,因此十分重要。它包括两类:渗入威胁和植入威胁。n(1)主要的渗入威胁有:假冒、旁路控制、授权侵犯。n(2)主要的植入威胁有:特洛伊木马、陷门。4潜在的威胁n对基本威胁或主要的可实现的威胁进行分析,可以发现某些特定的潜在威胁,而任意一种潜在的威胁都可能导致发生一些更基本的威胁。5病毒n病毒是能够通过修改其它程序而“感染”它们的一种程序,修改后的程序里面包含了病毒程序的一个副本,这样它们就能够继续感染其它程序。n通过网络传播计算机病毒,其破坏性大大高于单机系统,而且用户很难防范。由
5、于在网络环境下,计算机病毒有不可估量的威胁性和破坏力,因此,计算机病毒的防范是网络安全性建设中重要的一环。网络反病毒技术包括预防病毒、检测病毒和消毒3种技术。11.2 加密与认证技术n11.2.1密码学的基本概念n密码学(或称密码术)是保密学的一部分。保密学是研究密码系统或通信安全的科学,它包含两个分支:密码学和密码分析学。密码学是对信息进行编码实现隐蔽信息的一门学问。密码分析学是研究分析破译密码的学问。两者相互独立,而又相互促进。密码系统通常从3个独立的方面进行分类n(1)按将明文转换成密文的操作类型可分为:置换密码和易位密码。n(2)按明文的处理方法可分为:分组密码和序列密码。n(3)按密
6、钥的使用个数可分为:对称密码体制和非对称密码体制。1转换密码和易位密码n在转换密码(substation cipher)中,每个或每组字母由另一个或另一组伪装字母所替换。最古老的一种置换密码是Julius Caesar发明的凯撒密码,这种密码算法对于原始消息(明文)中的每一个字母都用该字母后的第n个字母来替换,其中n就是密钥。例如使加密字母向右移3个字母,即a换成D,b换成E,c换成Fz换成C。n由于凯撒密码的整个密钥空间只有26个密钥,只要知道圆圈密算法采用的是凯撒密码,对其进行破译就是轻而易举的事了,因为破译者最多只需尝试25次就可以知道正确的密钥。n对凯撒密码的一种改进方法是把明文中的字
7、符换成另一个字符,如将26个字母中的每一个字母都映射成另一个字母。例如:n明文:a b c d e f g h i j k l m n o p q r s t u v w x y zn密文:Q B E L C D F H G I A J N M K O P R S Z U T W V Y Xn这种方法称为单字母表替换,其密钥是对应于整个字母表的26个字母串。按照此例中的密钥,明文attack加密后形成的密文是QZZQEA。n采用单字母表替换时,密钥的个数有26!=41026个。虽然破译者知道加密的一般原理,但他并不知道使用的是哪一个密钥。即使使用1s试一个密钥的计算机,试遍全部密钥也要用101
8、3年的时间。n这似乎是一个很安全的系统,但破译者通过统计所有字母在密文中出现的相对频率,猜测常用的字母、2字母组、3字母组,了解元音和辅音的可能形式,破译者就可逐字逐句地破解出明文。n易位密码(transposition cipher)只对明文字母重新排序,但不隐藏它们。列易位密码是一种常用的易位密码,该密码的密钥是一个不含任何重复字母的单词或词语。n要破译易位密码,破译者首先必须知道密文是用易位密码写的。通过查看E,T,A,O,I,N等字母的出现频率,容易知道它们是否满足明文的普通模式,如果满足,则该密码就是易位密码,因为在这种密码中,各字母就表示其自身。n破译者随后猜测列的个数,即密钥的长
9、度,最后确定列的顺序。在许多情形下,从信息的上下文可猜出一个可能的单词或短语。破译者通过寻找各种可能性,常常能轻易地破解易位密码。2分组密码和序列密码n分组密码的加密方式是首先将明文序列以固定长度进行分组,每一组明文用相同的密钥和加密函数进行运算。一般为了减少存储量和提高运算速度,密钥的长度有限,因而加密函数的复杂性成为系统安全的关键。n分组密码设计的核心是构造既具有可逆性又有很强的非线性的算法。加密函数重复地使用替换和易位两种基本的加密变换,也就是香农在1949年发现的隐蔽信息的两种技术:打乱和扩散。打乱(confusion)是改变信息块使输出位与输入位之间无明显的统计关系。扩散(diffu
10、sion)是通过密钥的效应把一个明文位转移到密文的其它位上。另外,在基本加密算法前后,还要进行移位和扩展等。n分组密码的优点是:明文信息良好的扩散性,对插入的敏感性,不需要密钥同步,较强的适用性,适合作为加密标准。n分组密码的缺点是:加密速度慢;错误扩散和传播。n序列密码的加密过程是把报文、话音、图像、数据等原始信息转换成明文数据序列,然后将它同密钥序列进行逐位模2加(即异或运算),生成密文序列发送给接收者。接收者用相同密钥序列进行逐位解密来恢复明文序列。n序列密码的安全性主要依赖于密钥序列。密钥序列是由少量的制乱素(密钥)通过密钥序列产生器产生的大量伪随机序列。布尔函数是密钥序列产生器的重要
11、组成部分。n序列密码的优点是:处理速度快,实时性好,错误传播小,不易被破译,适用于军事、外交等保密信道。n序列密码的缺点是:明文扩散性差,需要密钥同步。3加密技术n数据加密技术可以分为3类,即对称型加密、非对称型加密和不可逆加密。n对称型加密使用单个密钥对数据进行加密或解密,其特点是计算量小、加密效率高。但是此类算法在分布式系统上使用较为困难,主要是密钥管理困难,从而使用成本较高,安全性能也不易保证。这类算法的代表是在计算机网络系统中广泛使用的DES算法(Digital Encryption Standard)。n不对称型加密算法也称公开密钥算法,其特点是有两个密钥(即公用密钥和私有密钥),只
12、有两者搭配使用才能完成加密和解密的全过程。由于不对称算法拥有两个密钥,它特别适用于分布式系统中的数据加密,在Internet中得到广泛应用。其中公用密钥在网上公布,为数据发送方对数据加密时使用,而用于解密的相应私有密钥则由数据的接收方妥善保管。不对称加密的另一用法称为“数字签名”(digital signature),即数据源使用其私有密钥对数据的校验和(checksum)或其它与数据内容有关的变量进行加密,而数据接收方则用相应的公用密钥解读“数字签字”,并将解读结果用于对数据完整性的检验。在网络系统中得到应用的不常规加密算法有RSA算法和美国国家标准局提出的DSA算法(Digital sig
13、nature Algorithm)。不常规加密法在分布式系统中应用时需注意的问题是如何管理和确认公用密钥的合法性。n不可逆加密算法和特征是加密过程不需要密钥,并且经过加密的数据无法被解密,只有同样的输入数据经过同样的不可逆加密算法才能得到相同的加密数据。不可逆加密算法不存在密钥保管和分发问题,适合于分布式网络系统上使用,但是其加密计算机工作量相当可观,所以通常用于数据量有限的情形下的加密,例如计算机系统中的口令就是利用不可逆算法加密的。近来随着计算机系统性能的不断改善,不可逆加密的应用逐渐增加。在计算机网络中应用较多的有RSA公司发明的MD5算法和由美国国家标准局建议的可靠不可逆加密标准(SH
14、S,Secure Hash Standard)。n加密技术用于网络安全通常有两种形式,即面向网络或面向应用服务。n从通信网络的传输方面,数据加密技术还可分为以下3类:链路加密方式、节点到节点方式和端到端方式。4密码分析n试图发现明文或密钥的过程称为密码分析。密码分析人员使用的策略取决于加密方案的特性和分析人员可用的信息。n密码分析的过程通常包括:分析(统计所截获的消息材料)、假设、推断和证实等步骤。表11-1总结了各类加密消息的破译类型,这些破译是以分析人员所知的信息总量为基础的。破译类型密码分析人员已知的内容仅密文加密算法、要解密的密文已知明文加密算法、要解密的密文、使用保密密钥生成的一个或
15、多个明文-密文对选择明文加密算法、要解密的密文、密码分析人员选择的明文消息,以及使用保密密钥生成的对应的密文对选择密文加密算法、要解密的密文、密码分析人员选择的密文,以及使用保密密钥生成的对应的解密明文选择文本加密算法、要解密的密文、密码分析人员选择的明文消息,以及使用保密密钥生成的对应的密文对、密码分析人员选择的密文,以及使用保密密钥生成的对应的解密明文11.2.2常规密钥密码体制n常规加密也叫作对称加密、保密密钥或单密钥加密,它是20世纪70年代之前使用的惟一一种加密机制。它现在仍是最常用的两种加密类型之一,另一种是公开密钥加密机制。1常规加密的模型n常规加密又称对称加密,该方案有5个组成
16、部分。n(1)明文:作为算法输入的原始信息。n(2)加密算法:加密算法可以对明文进行多种置换和转换。n(3)共享的密钥:共享的保密密钥也是对算法的输入,算法实际进行的置换和转换由保密密钥决定。n(4)密文:作为输出的混合信息。它由明文和保密密钥决定。对于给定的信息来讲,两种不同的密钥会产生两种不同的密文。n(5)解密算法:这是加密算法的逆向算法。它以密文和同样的保密密钥作为输入,并生成原始明文。n目前经常使用的一些常规加密算法有:数据加密标准(Data Encryption Standard,DES)。三重DES(3DES,或称TDEA)。Rivest Cipher5(RC-5)。国际数据加密
17、算法(International Data Encryption Algorithm,IDEA)。2常规加密的要求n(1)需要强大的加密算法。n(2)发送方和接收方必须用安全的方式来获得保密密钥的副本,必须保证密钥的安全。如果有人发现了密钥,并知道了算法,则使用此密钥的所有通信便都是可读取的。3一些常用的常规加密算法n最常用的加密方案是美国国家标准和技术局(NIST)在1977年采用的数据加密标准(DES),它作为联邦信息处理第46号标准(FIPS PUB 46)。1984年,NIST“再次肯定”DES以FIPS PUB 46-2的名义供联邦再使用5年。算法本身以数据加密算法(DEA,Data
18、 Encryption Algorithm)被引用。DES本身虽已不再安全,但其改进算法的安全性还是相当可靠的。nTDEA(三重DEA,或称3DES)最初是由Tuchman提出的,在1985年的ANSI标准X9.17中第一次为金融应用进行了标准化。在1999年,TDEA合并到数据加密标准中,文献号为FIPS PUB 46-3。nRC5是由Ron Rivest(公钥算法RSA的创始人之一)在1994年开发出来的。其前身RC4的源代码在1994年9月被人匿名张贴到Cypherpunks邮件列表中,泄露了RC4的算法。RC5是在RFC2040中定义的,RSA数据安全公司的很多产品都已经使用了RC5。
19、n国际数据加密算法IDEA完成于1990年,开始时称为PES(Proposed Encryption Standard)算法,1992年被命名为IDEA。IDEA算法被认为是当今最好最安全的分组密码算法。11.2.3公开密钥加密技术n公开密钥加密又叫作非常规加密,公钥加密最初是由Diffie和Hellman在1976年提出的,这是几千年来文字加密的第一次真正革命性的进步。因为公钥是建立在数学函数基础上的,而不是建立在位方式的操作上的。更重要的是,公钥加密是不对称的,与只使用一种密钥的对称常规加密相比,它涉及到两位独立密钥的使用。这两种密钥的使用已经对机密性、密钥的分发和身份验证领域产生了深远的
20、影响。n公钥加密算法可用于下面一些方面:数据完整性、数据保密性、发送者不可否认和发送者认证。1公钥加密体制的模型图11-5 常规加密体制模型图11-6 公共密钥算法的演示2一些常用的公钥体制nRSA公钥体制是1978年Rivest、Shamir和Adleman提出的一个公开密钥密码体制,RSA就是以其发明者姓名的首字母命名的。RSA体制被认为是迄今为止理论上最为成熟完善的一种公钥密码体制。该体制的构造基于Euler定理,它利用了如下的基本事实:寻找大素数是相对容易的,而分解两个大素数的积在计算上是不可行的。nRSA算法的安全性建立在难以对大数提取因子的基础上。所有已知的证据都表明,大数的因子分
21、解是一个极其困难的问题。n与对称密码体制如DES相比,RSA的缺点是加密、解密的速度太慢。因此,RSA体制很少用于数据加密,而多用在数字签名、密钥管理和认证等方面。11.2.4 数字签名n数字签名提供了一种签别方法,普遍用于银行、电子商业等,以解决下列问题:n(1)伪造:接收者伪造一份文件,声称是对方发送的;n(2)冒充:网上的某个用户冒充另一个用户发送或接收文件;n(3)篡改:接收者对收到的文件进行局部的修改。n(4)抵赖:发送者或接收者最后不承认自己发送或接收的文件。11.2.5 身份认证技术n网络用户的身份认证可以通过下述3种基本途径之一或它们的组合来实现。n(1)所知(Knowledg
22、e)个人所掌握的密码、口令等。n(2)所有(Possessses)个人的身份认证、护照、信用卡、钥匙等。n(3)个人特征(Characteristics)人的指纹、声音、笔记、手型、血型、视网膜、DNA、以及个人动作方面的特征等。11.3 防火墙技术n11.3.1 防火墙概述n一般来说,防火墙是设置在被保护网络和外部网络之间的一道屏障,以防止发生不可预测的、潜在破坏性的侵入。它可以通过监测、限制、更改跨越防火墙的数据流,尽可能的对外部屏蔽内部网络的信息、结构和运行状况,以此来实现网络的安全保护。n一个防火墙可以是一个实现安全功能的路由器、个人计算机、主机或主机的集合等,通常位于一个受保护的网络
23、对外的连接处,若这个网络到外界有多个连接,那么需要安装多个防火墙系统。n防火墙可以提供以下服务:(1)限定人们从一个特别的控制点进入或离开;(2)保证对主机的应用安全访问;(3)防止入侵者接近你的其它防御设施;(4)有效防止破坏者对客户机和服务器所进行的破坏;(5)监视网络。11.3.2防火墙系统结构n防火墙的系统结构一般分为以下几种:n(1)屏蔽路由器屏蔽路由器Internet内部主机代理服务器n一般采用路由器连接内网和外网,如图11-7所示,此路由器可以起到一定的防火墙作用,通过设置路由器的访问控制表,基于IP进行包过滤,这种方法不具备监控和认证功能,最多可以进行流量记录。图11-7屏蔽路
24、由器实现防火墙(2)双目主机结构n它包含一个有两个网络接口的代理服务器系统,关闭正常IP路由功能,并安装运行网络代理服务程序。有一个包过滤防火墙,用于连接Internet,如图11-8所示。Internet包 过 滤 路 由器代理服务器内部主机Web服务器(3)屏蔽主机结构Internet包过滤路由器代理服务器路由器内部主机(4)屏蔽子网结构n将网络划分为三个部分:Internet(外网)、DMZ(分军事区)、内网。Internet与DMZ区通过外部屏蔽路由器隔离,DMZ区与内网通过内部屏蔽路由器隔离,如图11-10所示。图11-10 屏蔽子网防火墙11.3.3防火墙分类n从构成上可以将防火墙
25、分为以下几类:n(1)硬件防火墙n(2)软件防火墙n(3)软硬结合防火墙11.3.4防火墙的作用n防火墙能有效的对网络进行保护,防止其它网络的入侵,归纳起来,防火墙具有以下作用:n(1)控制进出网络的信息流向和信息包;n(2)提供对系统的访问控制;n(3)提供使用和流量的日志和审计;n(4)增强保密性。使用防火墙可以阻止攻击者获取攻击网络系统的有用信息。n(5)隐藏内部IP地址及网络结构的细节;n(6)记录和统计网络利用数据以及非法使用数据。11.3.5 防火墙的设计策略n防火墙设计策略基于特定的防火墙,定义完成服务访问策略的规则。通常有两种基本的设计策略:允许任何服务除非被明确禁止;禁止任何
26、除非被明确允许。第一种的特点是“在被判有罪之前,任何嫌疑人都是无罪的”,它好用但不安全。第二种是“宁可错杀一千,也不放过一个”,它安全但不好用。在实用中防火墙通常采用第二种设计策略,但多数防火墙都会在两种策略之间采取折衷。1防火墙实现站点安全策略的技术n(1)服务控制。n(2)方向控制。n(3)用户控制。n(4)行为控制。2防火墙在大型网络系统中的部署n根据网络系统的安全需要,可以在如下位置部署防火墙:n(1)在局域网内的VLAN之间控制信息流向时加入防火墙。n(2)Internet与Internet之间连接时加入防火墙。n(3)在广域网系统中,由于安全的需要,总部的局域网可以将各分支机构的局
27、域网看成不安全的系统,总部的局域网和各分支机构连接时,一般通过公网ChinaPac,ChinaDD和NFrame Relay等连接,需要采用防火墙隔离,并利用某些软件提供的功能构成虚拟专网VPN。n(4)总部的局域网和分支机构的局域网是通过Internet连接的,需要各自安装防火墙,并组成虚拟专网。n(5)在远程用户拨号访问时,加入虚拟专网。n(6)利用一些防火墙软件提供的负载平衡功能,ISP可在公共访问服务器和客户端间加入防火墙进行负载分担、存取控制、用户认证、流量控制和日志记录等功能。n(7)两网对接时,可利用硬件防火墙作为网关设备实现地址转换(NAT)、地址映射(MAP)、网络隔离(DM
28、Z,De-Militarized Zone,非军事区,其名称来源于朝鲜战争的三八线)及存取安全控制,消除传统软件防火墙的瓶颈问题。设置防火墙还要考虑到网络策略和服务访问策略。n影响防火墙系统设计、安装和使用的网络策略可分为两级,高级的网络策略定义允许和禁止的服务以及如何使用服务,低级的网络策略描述防火墙如何限制和过滤在高级策略中定义的服务。n服务访问策略集中在Internet访问服务以及外部网络访问(如拨入策略、SLIP/PPP连接等)。服务访问策略必须是可行的和合理的。可行的策略必须在阻止已知的网络风险和提供用户服务之间获得平衡。典型的服务访问策略是:允许通过增强认证的用户在必要的情况下从I
29、nternet访问某些内部主机和服务;允许内部用户访问指定的Internet主机和服务。11.4 病毒与病毒的防治n11.4.1病毒的种类及特点 1病毒的种类多种多样,主要有以下6种。n(1)文件型的病毒n(2)引导扇区病毒n(3)宏病毒n(5)多形性病毒n(6)伙伴病毒 2网络病毒的特点nInternet的发展孕育了网络病毒,由于网络的互联性,病毒的威力也大大增强。网络病毒具有以下特点:n(1)破坏性强。n(2)传播性强。n(3)具有潜伏性和可激发性。n(4)针对性强。n(5)扩散面广。11.4.2病毒的传播途径与防治n1计算机病毒有以下4种传播途径。n第一种途径:通过不可移动的计算机硬件设备进行传播,这些设备通常有计算机专用芯片和硬盘等。n第二种途径:通过移动存储设备来传播,这些设备包括软盘、磁盘等。n第三种途径:通过计算机网络进行传播。n第四种途径:通过点对点通信系统和无线通道传播。2病毒的防治n病毒在发作前是难以发现的,因此所有的防病毒技术都是在系统后台运行的,先于病毒获得系统的控制权,对系统进行实时监控,一旦发现可疑行为,就阻止非法程序的运行,利用一些专门的技术进行判别,然后加以清除。反病毒技术包括检测病毒和清除病毒两方面,而病毒的清除都是以有效的病毒探测为基础的。目前广泛使用的主要检测病毒的方法有特征代码法、校验和法、行为监测法、感染实验法等。