第7章 网络安全

发表于 2022-08-20 18:12:12 阅读 (48) 分类:计算机网络

7-01  计算机网络都面临哪几种威胁?主动攻击和被动攻击的区别是什么?对于计算机网络的安全措施都有哪些?

答:计算机网络面临以下的四种威胁:截获(interception),中断(interruption),篡改(modification),伪造(fabrication)。

网络安全的威胁可以分为两大类:即被动攻击和主动攻击。

主动攻击是指攻击者对某个连接中通过的PDU进行各种处理。如有选择地更改、删除、延迟这些PDU。甚至还可将合成的或伪造的PDU送入到一个连接中去。主动攻击又可进一步划分为三种,即更改报文流;拒绝报文服务;伪造连接初始化。

被动攻击是指观察和分析某一个协议数据单元PDU而不干扰信息流。即使这些数据对攻击者来说是不易理解的,它也可通过观察PDU的协议控制信息部分,了解正在通信的协议实体的地址和身份,研究PDU的长度和传输的频度,以便了解所交换的数据的性质。这种被动攻击又称为通信量分析。

还有一种特殊的主动攻击就是恶意程序的攻击。恶意程序种类繁多,对网络安全威胁较大的主要有以下几种:计算机病毒;计算机蠕虫;特洛伊木马;逻辑炸弹。

对付被动攻击可采用各种数据加密动技术,而对付主动攻击,则需加密技术与适当的鉴别技术结合。

7-02  试解释以下名词:(1)重放攻击;(2)拒绝服务;(3)访问控制;(4)流量分析;(5)恶意程序。

答:(1)重放攻击:所谓重放攻击(replay attack)就是攻击者发送一个目的主机已接收过的包,来达到欺骗系统的目的,主要用于身份认证过程。

  (2)拒绝服务:DoS(Denial of Service)指攻击者向因特网上的服务器不停地发送大量分组,使因特网或服务器无法提供正常服务。

  (3)访问控制:(access control)也叫做存取控制或接入控制。必须对接入网络的权限加以控制,并规定每个用户的接入权限。

  (4)流量分析:通过观察PDU的协议控制信息部分,了解正在通信的协议实体的地址和身份,研究PDU的长度和传输的频度,以便了解所交换的数据的某种性质。这种被动攻击又称为流量分析(traffic analysis)。

 (5)恶意程序:恶意程序(rogue program)通常是指带有攻击意图所编写的一段程序。

7-03  为什么说,计算机网络的安全不仅仅局限于保密性?试举例说明,仅具有保密性的计算机网络不一定是安全的。

答:计算机网络安全不仅仅局限于保密性,但不能提供保密性的网络肯定是不安全的。网络的安全性机制除为用户提供保密通信以外,也是许多其他安全机制的基础。例如,存取控制中登陆口令的设计。安全通信协议的设计以及数字签名的设计等,都离不开密码机制。

7-04  密码编码学、密码分析学和密码学都有哪些区别?

答:密码学(cryptology)包含密码编码学(Cryptography)与密码分析学(Cryptanalytics)两部分内容。

密码编码学是密码体制的设计学,是研究对数据进行变换的原理、手段和方法的技术和科学,而密码分析学则是在未知密钥的情况下从密文推演出明文或密钥的技术。是为了取得秘密的信息, 而对密码系统及其流动的数据进行分析,是对密码原理、手段和方法进行分析、攻击的技术和科学。

7-05  “无条件安全的密码体制”和“在计算上是安全的密码体制”有什么区别?

7-06 答:如果不论截取者获得了多少密文,但在密文中都没有足够的信息来惟一地确定出对应的明文,则这一密码体制称为无条件安全的,或称为理论上是不可破的。
          如果密码体制中的密码不能被可使用的计算资源破译,则这一密码体制称为在计算上是安全的。

7-07    破译下面的密文诗。加密采用替代密码。这种密码是把26个字母(从a到z)中的每一个用其他某个字母替代(注意,不是按序替代)。密文中无标点符号。空格未加密。

Kfd ktbd fzm eubd kfd pzyiom mztx ku kzyg ur bzha kfthcm ur mfudm zhx

Mftnm zhx mdzythc pzq ur ezsszcdm zhx gthcm zhx pfa kfd mdz tm sutythc

Fuk zhx pfdkfdi ntcm fzld pthcm sok pztk z stk kfd uamkdim eitdx sdruid

Pd fzld uoi efzk rui mubd ur om zid uok ur sidzkf zhx zyy ur om zid rzk

Hu foiia mztx kfd ezindhkdi kfda kfzhgdx ftb boef rui kfzk

答:单字母表是:

明文:a  b  c  d  e  f  g  h  I  j  k  l  m  

密文:z  s  e  x  d  r  c  f   t     g  y  b

明文:n  o  p  q  r  s  t  u  v  w  x  y  z

密文:h  u  n     I  m  k  o  l  p  k  a

根据该单字母表,可得到下列与与本题中给的密文对应的明文:

the time has come the walrus said to talk of many things

of shoes amd ships and sealing wax of cabbages and kings

and why the sea is boiling hot and whether pigs have wings

but wait a bit the oysters cried before we have our chat

for some of us are out of breath and all of us are fat

no hurry said the carpenter they thanked him much for that

7-07对称密钥体制与公钥密码体制的特点各如何?各有何优缺点?

答:在对称密钥体制中,它的加密密钥与解密密钥的密码体制是相同的,且收发双方必须共享密钥,对称密码的密钥是保密的,没有密钥,解密就不可行,知道算法和若干密文不足以确定密钥。公钥密码体制中,它使用不同的加密密钥和解密密钥,且加密密钥是向公众公开的,而解密密钥是需要保密的,发送方拥有加密或者解密密钥,而接收方拥有另一个密钥。

两个密钥之一也是保密的,无解密密钥,解密不可行,知道算法和其中一个密钥以及若干密文不能确定另一个密钥。

优点:对称密码技术的优点在于效率高,算法简单,系统开销小,适合加密大量数据。对称密钥算法具有加密处理简单,加解密速度快,密钥较短,发展历史悠久等优点。

缺点:对称密码技术进行安全通信前需要以安全方式进行密钥交换,且它的规模复杂。

公钥密钥算法具有加解密速度慢的特点,密钥尺寸大,发展历史较短等特点。

      

7-08为什么密钥分配是一个非常重要但又十分复杂的问题?试举出一种密钥分配的方法。

答:密钥必须通过最安全的通路进行分配。可以使用非常可靠的信使携带密钥非配给互相通信的各用户,多少用户越来越多且网络流量越来越大,密钥跟换过于频繁,派信使的方法已不再适用。

举例:公钥的分配,首先建立一个值得信赖的机构(认证中心CA),将公钥与其对应的实体进行绑定,每个实体都有CA发来的证书,里面有公钥及其拥有者的标识信息,此证书被CA进行了数字签名,任何用户都可从可信的地方获得CA的公钥,此公钥可用来验证某个公钥是否为某个实体所拥有。

7-09  公钥密码体制下的加密和解密过程是怎么的?为什么公钥可以公开?如果不公开是否可以提高安全性?

答:加密和解密过程如下:

(1)、密钥对产生器产生出接收者的一对密钥:加密密钥和解密密钥;

(2)、发送者用接受者的公钥加密密钥通过加密运算对明文进行加密,得出密文,发送给接受者 ;接受者用自己的私钥解密密钥通过解密运算进行解密,恢复出明文;

     因为无解密密钥,解密是不可行的,所以公钥可以公开,知道算法和其中一个密钥以及若干密文不能确定另一个密钥。   


7-10  试述数字签名的原理

答:数字签名采用了双重加密的方法来实现防伪、防赖。其原理为: 被发送文件用SHA编码加密产生128bit的数字摘要。然后发送方用自己的私用密钥对摘要再加密,这就形成了数字签名。将原文和加密的摘要同时传给对方。对方用发送方的公共密钥对摘要解密,同时对收到的文件用SHA编码加密产生又一摘要。将解密后的摘要和收到的文件在接收方重新加密产生的摘要相互对比。如两者一致,则说明传送过程中信息没有被破坏或篡改过。否则不然。

7-11  为什么需要进行报文鉴别?鉴别和保密、授权有什么不同?报文鉴别和实体鉴别有什么区别?

答:(1)使用报文鉴别是为了对付主动攻击中的篡改和伪造。当报文加密的时候就可以达到报文鉴别的目的,但是当传送不需要加密报文时,接收者应该能用简单的方法来鉴别报文的真伪。

(2)鉴别和保密并不相同。鉴别是要验证通信对方的确是自己所需通信的对象,而不是其他的冒充者。鉴别分为报文鉴别和实体鉴别。授权涉及到的问题是:所进行的过程是否被允许(如是否可以对某文件进行读或写)。

(3)报文鉴别和实体鉴别不同。报文鉴别是对每一个收到的报文都要鉴别报文的发送者,而实体鉴别是在系统接入的全部持续时间内对和自己通信的对方实体只需验证一次。

7-12  试述实现报文鉴别和实体鉴别的方法。

答:(1)报文摘要MD是进行报文鉴别的简单方法。A把较长的报文X经过报文摘要算法运算后得出很短的报文摘要H。然后用自己的私钥对H进行D运算,即进行数字签名。得出已签名的报文摘要D(H)后,并将其追加在报文X后面发送给B。B收到报文后首先把已签名的D(H)和报文X分离。然后再做两件事。第一,用A的公钥对D(H)进行E运算,得出报文摘要H。第二,对报文X进行报文摘要运算,看是否能够得出同样的报文摘要H。如一样,就能以极高的概率断定收到的报文是A产生的。否则就不是。

(2)A首先用明文发送身份A和一个不重数RA给B。接着,B响应A的查问,用共享的密钥KAB对RA加密后发回给A,同时也给出了自己的不重数RB。最后,A再响应B的查问,用共享的密钥KAB对RB加密后发回给B。由于不重数不能重复使用,所以C在进行重放攻击时无法重复使用是哟截获的不重数。

7-13  报文的保密性与完整性有何区别?什么是MD5?

答:(1)报文的保密性和完整性是完全不同的概念。

保密性的特点是:即使加密后的报文被攻击者截获了,攻击者也无法了解报文的内容。

完整性的特点是:接收者接收到报文后,知道报文没有被篡改或伪造。

(2)MD5是[RFC1321]提出的报文摘要算法,目前已获得了广泛的应用。它可以对任意长的报文进行运算,然后得出128bit的MD报文摘要代码。算法的大致过程如下:

①先将任意长的报文按模264计算其余数(64bit),追加在报文的后面。这就是说,最后得出的MD5代码已包含了报文长度的信息。

②在报文和余数之间填充1~512bit,使得填充后的总长度是512的整数倍。填充比特的首位是1,后面都是0。

③将追加和填充的报文分割为一个个512bit的数据块,512bit的报文数据分成4个128bit的数据依次送到不同的散列函数进行4论计算。每一轮又都按32bit的小数据块进行复杂的运算。一直到最后计算出MD5报文摘要代码。

这样得出的MD5代码中的每一个比特,都与原来的报文中的每一个比特有关。

7-14  什么是重放攻击?怎样防止重放攻击?

答:(1)入侵者C可以从网络上截获A发给B的报文。C并不需要破译这个报文(因为这可能很花很多时间)而可以直接把这个由A加密的报文发送给B,使B误认为C就是A。然后B就向伪装是A的C发送许多本来应当发送给A的报文。这就叫做重放攻击。

(2)为了对付重放攻击,可以使用不重数。不重数就是一个不重复使用的大随机数,即“一次一数”。

7-15  什么是“中间人攻击”?怎样防止这种攻击?

答:(1) 中间人攻击(Man-in-the-Middle Attack,简称“MITM攻击”)是一种“间接”的入侵攻击, 这种攻击模式是通过各种技术手段将受入侵者控制的一台计算机虚拟放置在网络连接中的两台通信计算机之间,这台计算机就称为“中间人”。然后入侵者把这台计算机模拟一台或两台原始计算机,使“中间人”能够与原始计算机建立活动连接并允许其读取或篡改传递的信息,然而两个原始计算机用户却认为他们是在互相通信,因而这种攻击方式并不很容易被发现。所以中间人攻击很早就成为了黑客常用的一种古老的攻击手段,并且一直到今天还具有极大的扩展空间。

(2) 要防范MITM攻击,我们可以将一些机密信息进行加密后再传输,这样即使被“中间人”截取也难以破解,另外,有一些认证方式可以检测到MITM攻击。比如设备或IP异常检测:如果用户以前从未使用某个设备或IP访问系统,则系统会采取措施。还有设备或IP频率检测:如果单一的设备或IP同时访问大量的用户帐号,系统也会采取措施。更有效防范MITM攻击的方法是进行带外认证。

7-16  试讨论Kerberos协议的优缺点。

答:Kerberos协议主要用于计算机网络的身份鉴别(Authentication), 其特点是用户只需输入一次身份验证信息就可以凭借此验证获得的票据(ticket-granting ticket)访问多个服务,即SSO(Single Sign On)。由于在每个Client和Service之间建立了共享密钥,使得该协议具有相当的安全性。

概括起来说Kerberos协议主要做了两件事:Ticket的安全传递; Session Key的安全发布。

再加上时间戳的使用就很大程度上的保证了用户鉴别的安全性。并且利用Session Key,在通过鉴别之后Client和Service之间传递的消息也可以获得Confidentiality(机密性), Integrity(完整性)的保证。不过由于没有使用非对称密钥自然也就无法具有抗否认性,这也限制了它的应用。不过相对而言它比X.509 PKI的身份鉴别方式实施起来要简单多了。

7-17因特网的网络层安全协议族Ipsec都包含哪些主要协议?

答:在Ipsec中最主要的两个部分就是:鉴别首部AH和封装安全有效载荷ESP。

AH将每个数据报中的数据和一个变化的数字签名结合起来,共同验证发送方身份,使得通信一方能够确认发送数据的另一方的身份,并能够确认数据在传输过程中没有被篡改,防止受到第三方的攻击。它提供源站鉴别和数据完整性,但不提供数据加密。

ESP提供了一种对IP负载进行加密的机制,对数据报中的数据另外进行加密,因此它不仅提供源站鉴别、数据完整性,也提供保密性。

IPSec是IETF(Internet Engineering Task Force,Internet工程任务组)的IPSec小组建立的一套安全协作的密钥管理方案,目的是尽量使下层的安全与上层的应用程序及用户独立,使应用程序和用户不必了解底层什么样的安全技术和手段,就能保证数据传输的可靠性及安全性。

IPSec是集多种安全技术为一体的安全体系结构,是一组IP安全协议集。IPSec定义了在网际层使用的安全服务,其功能包括数据加密、对网络单元的访问控制、数据源地址验证、数据完整性检查和防止重放攻击。

7-18  试简述SSL和SET的工作过程。

答:首先举例说明SSL的工作过程。假定A有一个使用SSL的安全网页,B上网时用鼠标点击到这个安全网页的链接。接着,服务器和浏览器就进行握手协议,其主要过程如下。

(1)浏览器向服务器发送浏览器的SSL版本号和密码编码的参数选择。

(2)服务器向浏览器发送服务器的SSL版本号、密码编码的参数选择及服务器的证书。证书包括服务器的RSA分开密钥。此证书用某个认证中心的秘密密钥加密。

(3)浏览器有一个可信赖的CA表,表中有每一个CA的分开密钥。当浏览器收到服务器发来的证书时,就检查此证书是否在自己的可信赖的CA表中。如不在,则后来的加密和鉴别连接就不能进行下去;如在,浏览器就使用CA的公开密钥对证书解密,这样就得到了服务器的公开密钥。

(4)浏览器随机地产生一个对称会话密钥,并用服务器的分开密钥加密,然后将加密的会话密钥发送给服务器。

(5)浏览器向服务器发送一个报文,说明以后浏览器将使用此会话密钥进行加密。然后浏览器再向服务器发送一个单独的加密报文,表明浏览器端的握手过程已经完成。

(6)服务器也向浏览器发送一个报文,说明以后服务器将使用此会话密钥进行加密。然后服务器再向浏览器发送一个单独的加密报文,表明服务器端的握手过程已经完成。

(7)SSL的握手过程到此已经完成,下面就可开始SSL的会话过程。

 下面再以顾客B到公司A用SET购买物品为例来说明SET的工作过程。这里涉及到两个银行,即A的银行(公司A的支付银行)和B的银行(给B发出信用卡的银行)。

(1)B告诉A他想用信用卡购买公司A的物品。

(2)A将物品清单和一个唯一的交易标识符发送给B。

(3)A将其商家的证书,包括商家的公开密钥发送给B。A还向B发送其银行的证书,包括银行的公开密钥。这两个证书都用一个认证中心CA的秘密密钥进行加密。

(4)B使用认证中心CA的公开密钥对这两个证书解密。

(5)B生成两个数据包:给A用的定货信息OI和给A的银行用的购买指令PI。

(6)A生成对信用卡支付请求的授权请求,它包括交易标识符。

(7)A用银行的公开密钥将一个报文加密发送给银行,此报文包括授权请求、从B发过来的PI数据包以及A的证书。

(8)A的银行收到此报文,将其解密。A的银行要检查此报文有无被篡改,以及检查在授权请求中的交易标识符是否与B的PI数据包给出的一致。

(9)A的银行通过传统的银行信用卡信道向B的银行发送请求支付授权的报文。

(10)一旦B的银行准许支付,A的银行就向A发送响应(加密的)。此响应包括交易标识符。

(11)若此次交易被批准,A就向B发送响应报文。

7-19  电子邮件的安全协议PGP主要都包含哪些措施?

答:PGP是一种长期得到广泛使用和安全邮件标准。PGP是RSA和传统加密的杂合算法,因为RSA算法计算量大,在速度上不适合加密大量数据,所以PGP实际上并不使用RSA来加密内容本身,而是采用IDEA的传统加密算法。PGP用一个随机生成密钥及IDEA算法对明文加密,然后再用RSA算法对该密钥加密。收信人同样是用RSA解密出这个随机密钥,再用IDEA解密邮件明文。

7-20  路加密与端到端加密各有何特点?各用在什么场合?

答:(1)链路加密

       优点:某条链路受到破坏不会导致其他链路上传送的信息被析出,能防止各种形式的通信量析出;不会减少网络系统的带宽;相邻结点的密钥相同,因而密钥管理易于实现;链路加密对用户是透明的。

       缺点:中间结点暴露了信息的内容;仅仅采用链路加密是不可能实现通信安全的;不适用于广播网络。

(2)端到端加密

   优点:报文的安全性不会因中间结点的不可靠而受到影响;端到端加密更容易适合不同用户服务的要求,不仅适用于互联网环境,而且同样也适用于广播网。

   缺点:由于PDU的控制信息部分不能被加密,所以容易受到通信量分析的攻击。同时由于各结点必须持有与其他结点相同的密钥,需要在全网范围内进行密钥管理和分配.

为了获得更好的安全性,可将链路加密与端到端加密结合在一起使用。链路加密用来对PDU的目的地址进行加密,而端到端加密则提供了对端到端数据的保护。

7-21  试述防火墙的工作原理和所提供的功能。什么叫做网络级防火墙和应用级防火墙?

答:防火墙的工作原理:防火墙中的分组过滤路由器检查进出被保护网络的分组数据,按照系统管理员事先设置好的防火墙规则来与分组进行匹配,符合条件的分组就能通过,否则就丢弃。

防火墙提供的功能有两个:一个是阻止,另一个是允许。阻止就是阻止某种类型的通信量通过防火墙。允许的功能与阻止的恰好相反。不过在大多数情况下防火墙的主要功能是阻止。

网络级防火墙:主要是用来防止整个网络出现外来非法的入侵,属于这类的有分组过滤和授权服务器。前者检查所有流入本网络的信息,然后拒绝不符合事先制定好的一套准则的数据,而后者则是检查用户的登录是否合法。

应用级防火墙:从应用程序来进行介入控制。通常使用应用网关或代理服务器来区分各种应用。