信息安全原理与实践-第二版10-真实世界中的安全协议课件.ppt

上传人(卖家):晟晟文业 文档编号:5182331 上传时间:2023-02-16 格式:PPT 页数:57 大小:3.24MB
下载 相关 举报
信息安全原理与实践-第二版10-真实世界中的安全协议课件.ppt_第1页
第1页 / 共57页
信息安全原理与实践-第二版10-真实世界中的安全协议课件.ppt_第2页
第2页 / 共57页
信息安全原理与实践-第二版10-真实世界中的安全协议课件.ppt_第3页
第3页 / 共57页
信息安全原理与实践-第二版10-真实世界中的安全协议课件.ppt_第4页
第4页 / 共57页
信息安全原理与实践-第二版10-真实世界中的安全协议课件.ppt_第5页
第5页 / 共57页
点击查看更多>>
资源描述

1、1Information Security:Principles and Practice,2nd Edition美Mark Stamp著张 戈译第10章 真实世界中的安全协议210.1 引言 几个广泛应用的真实世界中的安全协议 SSH协议 SSL协议 IPSec 协议 Kerberos协议 WEP GSM 310.2 SSHSecure Shell,简称为SSH,该协议创建了一个安全的通道,基于该通道,可以安全的方式执行原本不安全的命令。例如UNIX系统中用于实现远程登录的命令rloginSSH协议的认证过程可以基于公钥、数字证书或口令字。约定使用的术语:certificateA=Alice

2、s certificate(Alice的证书)certificateB=Bobs certificate(Bob的证书)CP=crypto proposed(加密方案的提议)CS=crypto selected(加密方案的选定)H=h(Alice,Bob,CP,CS,RA,RB,ga mod p,gb mod p,gab mod p)SB=HBobK=gab mod pSA=H,Alice,certificateAAlice h是加密哈希函数 4简化的SSH协议5数字签名可以用来提供双向交互认证。数字签名可以用来提供双向交互认证。因为nonce值RA是Alice发送给Bob的challenge

3、,而SB是Bob的响应。也就是说,nonce值RA提供了重放保护,只有Bob能够给出正确的响应,与此类似的交互过程可以证明Alice在最后一条消息中会被认证。10.3 SSL“套接字层”实际上处于IP协议栈中的应用层和传输层之间。在实践中,SSL协议最常应用的场景是Web浏览,在这种情况下,应用层的协议是HTTP,传输层的协议是TCP。例子:在上购买一本书6一个简单的SSL协议7其中的问题就是,Bob的身份并没有明白无误地被认证!对于Alice来说,唯一能够确认自己正在与Bob进行交流的方式可能就是,对接收到的加密数据进行验证,看其是否被正确加密了。基本SSL协议的一个比较完整的视图 约定术语

4、:n S=the pre-master secret(预备主密码)n K=h(S,RA,RB)n msgs=shorthand for all previous messages(表示“前面所有的消息”)n CLNT=literal string(文本串)n SRVR=literal string(文本串)8实际应用中会根据哈希值h(S,RA,RB)生成不止一个密钥。事实上,根据这个哈希计算可以生成以下6个量:n 两个加密密钥,其中一个用于加密从客户端发送给服务器的消息,另一个用于加密从服务器发送给客户端的消息。n 两个数据完整性密钥,与前面加密密钥的使用方式相同。n 两个初始化向量(IV),

5、其中一个用于客户端,另一个用于服务器。简而言之,在协议中不同的数据传送方向使用不同的密钥。这有助于防止某些特定类型的攻击。910.3.1 SSL协议和中间人攻击SSL协议中是什么机制可以防止中间人攻击呢?1010.3.2 SSL连接 SSL协议最初是由Netscape开发,主要用于Web浏览场景。应用层协议是HTTP,通常使用的HTTP协议有两个版本,分别是HTTP 1.0 和 HTTP 1.1。由于公开密钥运算操作的原因,要为这些HTTP连接中的每一个都建立新的SSL会话将是不小的负担。所以 SSL协议的设计者们内置了一种效率更高的协议:只要有一个SSL会话已然存在,再打开一个新的SSL连接

6、就可以使用这个高效的协议。SSL连接协议的详情:1110.3.3 SSL和IPSecIPSec即Internet Protocol Security,它的设计目标与SSL类似,就是提供网络通信的安全保护。12SSLIPSec复杂度简单相对复杂IP协议栈的层数嵌套字层网络层层次驻留在用户空间位于操作系统运行空间加密保护支持支持数据完整性保护支持支持身份认证支持支持10.4 IPSecSSL协议和IPSec协议逻辑上的基本差异 13IPSec协议的两个主要组成部分 n Internet密钥交换协议密钥交换协议,或简称为IKE(Internet Key Exchange),该协议提供了双向交互认证和

7、会话密钥。IKE协议包含两个阶段,这两个阶段分别相当于SSL协议的会话建立过程和连接建立过程。n 封装安全有效载荷和认证头封装安全有效载荷和认证头,或简称为ESP(Encapsulating Security Payload)和AH(Authentication Header),这两者一起构成了IPSec协议的第二部分。ESP提供IP数据包的加密和完整性保护,而AH则只提供完整性保护。IKE是一种独立的协议,可以脱离ESP/AH部分而独立运行。但是,既然在现实世界当中IKE协议似乎只应用于IPSec协议的场景中,所以我们就简单地将二者合在一起,统一称之为IPSec。14IKE协议协议包含了两个

8、阶段n 阶段一,建立所谓的IKE安全关联,也可以简称为IKE-SA。n 阶段二,建立IPSec安全关联,或被简称为IPSec-SA。阶段一相当于SSL协议中的会话建立,而阶段二则可以比作SSL协议中的连接建立。在IKE协议中,必须在完成了阶段一和阶段二之后,才能够执行ESP/AH。在IKE协议的阶段一中,有4个不同的密钥选项:n 公开密钥加密(原始版本)n 公开密钥加密(改进版本)n 数字签名n 对称密钥 上述每一个密钥选项都有一个主模式(main mode)和一个积极模式(aggressive mode)。结果就是IKE协议的阶段一总共有8个不同的版本。15接下来将要对阶段一的8个变体中的6

9、个进行讨论,分别是:n 数字签名(主模式和积极模式)、n 对称密钥(主模式和积极模式)n 公开密钥加密(主模式和积极模式)。每一个阶段一的变体都利用短时Diffie-Hellman密钥交换方案来建立会话密钥。这种方案的好处就是能够提供完全正向保密(Perfect Forword Secrecy,PFS)。对于我们要讨论的每一个变体,统一使用下面的Diffie-Hellman表示方法。n 令a为Alice的(短时)Diffie-Hellman协商过程指数,n 令b为Bob的(短时)Diffie-Hellman协商过程指数。n 令g为生成器,p为素数。p和g都是公开的。1610.4.1 IKE阶段

10、一:数字签名方式 数字签名版本的主模式 17每一个密钥选项都有一个主模式和一个积极模式。主模式的设计用于提供匿名特性,而积极模式则并非如此。数字签名密钥选项情况下的积极模式版本(请注意,其中并没有试图去隐藏Alice或Bob的身份,因此大幅地简化了该协议的交互过程。)介于数字签名主模式和积极模式之间的一个微妙差别是:在主模式中,有可能将g和p的值作为“crypto proposed(加密方案提议)”和“crypto accepted(加密方案选择)”消息的一部分进行协商。但是,在积极模式中却不是这样,因为Diffie-Hellman值ga mod p在第一条消息中就已经发送了。1810.4.2

11、 IKE阶段一:对称密钥方式 对称密钥选项方式的主模式这种主模式下存在所谓的Catch-22问题 可能存在的问题:n 首先,Alice必须有一个静态IP地址如果Alice的IP地址变化了,这个模式就会失效。n 这个协议太复杂,其中使用了6条消息,也可能就是为了隐匿通信者的身份。但是,该协议并没有成功地隐匿通信参与者的身份,除非你将静态IP地址也视为机密信息。1910.4.3 IKE阶段一:公开密钥加密方式 公开密钥加密选项版本,包括主模式和积极模式 在公钥加密版本的主模式下,Alice必须事先知道Bob的公钥,反过来对Bob也是一样。假设是Alice和Bob彼此都能够访问对方的数字证书,而不需

12、要再通过网络进行传递。公开密钥加密选项下的主模式协议详解:20公开密钥加密选项下的积极模式允许Alice和Bob保持匿名身份。存在的安全问题 假设Trudy生成了Diffie-Hellman的指数a和b,以及随机的nonce值RA和RB。然后,Trudy就可以计算协议里所有其他的量,即gab mod p、K、SKEYID、proofA和proofB。之所以Trudy能够做到这一点,就是因为Alice和Bob的公钥都是公开的。21为什么Trudy要不厌其烦地生成所有这些数值呢?一旦Trudy完成了这一切,她就能够创建完整的会话过程,使其看起来就像是Alice和Bob之间一次有效的IPSec交易。

13、令人震惊的是,这样伪造的一次会话过程让任何旁观者看起来都是有效的,包括Alice和Bob本人也无法否认!22可以否认性可以否认性 10.4.4 IPSec cookieIPSec协议中的这些cookie与Web网站的cookie毫无关系。在Web上,cookie是用于跨越多个HTTP会话的状态维护。而IPSec协议中cookie的目标是令拒绝服务(Denial of Service,DoS)攻击更加困难。TCP SYN flooding攻击攻击 每一个TCP SYN请求都将引发服务器执行少量的计算任务(比如创建SEQ号)并保持若干状态。正是这个状态的保持恰恰给攻击者提供了可乘之机。如果攻击者使

14、用数量庞大的SYN数据包对一台服务器进行狂轰滥炸,并且根本就不去继续完成这些建立中的半开连接,那么服务器最终将会耗尽自己的资源,无法再去处理合法的SYN请求,于是就会导致拒绝服务。IPSec的cookie对于DoS攻击防护并没有提供实质性的帮助。2310.4.5 IKE阶段一小结无论使用8个不同协议版本中的哪一个,IKE阶段一的成功完成将实现双向交互身份认证,并建立起共享的会话密钥,这就是所谓的IKE安全关联(IKE-SA)。在任何一种公开密钥加密选项模式下,IKE协议阶段一的运算都是代价高昂的,而且主模式还都需要6条消息。IKE协议的阶段二开销相对低廉,用于建立所谓的IPSec安全关联,或简

15、称为IPSec-SA。2410.4.6 IKE阶段二阶段二必须在IKE协议的阶段一完成后才能进行。此时,共享的会话密钥,IPSec的cookie、IC、RC以及IKE-SA都已经建立完成,并且这些信息对于Alice和Bob已均为已知。IKE阶段二的协商过程阶段二的协商过程 n 加密方案提议包括ESP或AH。在此阶段,Alice和Bob决定是否使用ESP或AH。n SA是在阶段一建立的IKE-SA的标识符。n 编号为1、2和3的哈希运算依赖于从阶段一得到的SKEYID、RA,RB以及IKESA。n 密钥的生成源于等式KEYMAT=h(SKEYID,RA,RB,junk),其中“junk”对所有人

16、(包括攻击者)均可知。n 值SKEYID依赖于阶段一的密钥方案。n 可以利用短时Diffie-Hellman密钥交换实现PFS(完全正向保密)特性,此为可选项。25IKE阶段二每一次阶段二生成的密钥与阶段一的密钥不同,并且彼此也不相同。IKE协议的阶段一完成之后,我们已经建立了一个IKE-SA。接下来IKE协议的阶段二完成之后,我们就建立了一个IPSec-SA。阶段二之后,Alice和Bob都已经完成了身份认证,并且他们也有了一个共享的会话密钥,用于当前连接的数据加密。2610.4.7 IPSec和IP数据报IP数据报包含IP数据包头和数据体两部分。如果选项字段为空,那么IP数据包头就包含20

17、个字节。为了IPSec的目的,有两个关键点:n 一个关键点就是路由器必须查看位于IP数据包头中的目的地址,以便能够对数据包进行路由转发。因为路由器无法访问会话密钥,所以不能对IP数据包头进行加密。n 第二个关键点就是IP数据包头中的某些字段要随着数据包的转发而改变。IPSec使用ESP或AH来保护IP数据报。依选择不同,ESP头或AH头将被包含在具备IPSec保护的数据报中。这个头信息会告诉接收方,这不是标准的IP数据报,而要按ESP数据包或AH数据包的方式对其进行处理 2710.4.8 运输和隧道方式无论是使用ESP保护还是使用AH保护,IPSec协议都可以独立地采用运输方式或隧道方式。在运

18、输方式中,原始的IP数据包头保持不变。运输方式的设计目标是用于“主机到主机”的通信。28在隧道方式中,整个原始的IP包都被封装在一个新的IP数据包当中。优点:原始的IP数据包头对于攻击者来说不再可见因为我们假定数据包已经被完整加密。如果Alice和Bob两人之间是直接进行沟通,那么新的IP数据包头将会与被封装的IP数据包头相同,所以隐藏原始的IP数据包头信息就显得没有什么意义。隧道方式的设计目标是用于保护防火墙到防火墙之间的通信。2910.4.9 ESP和AH一旦决定采用运输方式或隧道方式,接下来就必须考虑想要实际施加在IP数据报上的保护类型。在IPSec协议中,可以利用的选项只有AH和ESP

19、这两个。n AH(Authentication Header)只能提供数据完整性保护,并不支持加密。AH认证头的完整性保护可以用来保护的信息包括除了IP数据包头之外的所有信息,另外,IP数据包头信息中的某些字段也可以获得认证头的保护。n 在ESP(Encapsulating Security Payload)模式中,数据完整性和数据机密性都要求获得保护。ESP的机密性保护和完整性保护可以施加于除IP数据包头之外的所有信息上。ESP模式中的一种必须支持的加密方案就是NULL加密(即不加密的方案)。在ESP模式中,如果NULL加密被作为加密方案选中,那么就不会应用任何加密,但数据还是会获得完整性保

20、护。这种情况看起来就疑似AH的用法了。既然如此,那还要AH模式干什么用呢?30 AH模式独立存在的三个原因 n AH模式能够比“ESP/NULL”组合模式提供稍微多一些的数据完整性保护。n 在使用ESP模式的情况下,只要选择了一种非NULL的加密方案,自IP数据包头之后的所有数据都将被加密。n“如果AH模式惹恼了微软,那么就留下它吧,因为我们恨微软公司胜过恨AH模式”!3110.5 Kerberos在希腊神话中,Kerberos是一条有着三个头的狗,守卫着地狱之入口。在信息安全领域里,Kerberos是一种通用的认证协议,利用了对称密钥加密技术和时间戳技术。Kerberos的设计面向的是比较小

21、规模的应用场景,主要是类似局域网(Local Area Network,LAN)或是公司的内部网络等环境。在Kerberos方案中,可信任的第三方(TTP)是关键性的安全组件,被称为密钥分发中心或者简称为KDC。它扮演中间人的角色,确保任何一对用户彼此之间都能够安全地通信,进而实现协议的可扩展性。无状态的KDC是Kerberos方案中主要的安全特性之一。Kerberos协议用于身份认证并建立会话密钥,会话密钥可以用于随后数据通信中的机密性和完整性保护。在Kerboros认证框架中,KDC负责签发各种类型的票据(ticket)。每一个TGT票据都包含会话密钥、票据签发的目标用户的ID以及有效期。

22、3210.5.1 Kerberos化的登录Kerberos化登录过程的图解 n 密钥KA的计算方法由公式KA=h(Alices password)表示。n 由KDC创建会话密钥SA。n Alice的计算机利用KA获得SA和Alice的TGT票据;然后,Alice的计算机就会丢弃KA。n TGT=E(“Alice”,SA;KKDC)。33优点:所有安全相关的处理过程优点:所有安全相关的处理过程(在口令输入之后在口令输入之后)对于对于Alice都是透明的;都是透明的;缺点:整个框架的有效性完全依赖于缺点:整个框架的有效性完全依赖于KDC的安全性。的安全性。10.5.2 Kerberos中的票据一旦

23、Alice的计算机接收到TGT票据之后,就可以使用这个TGT票据来发起随后的网络资源访问请求(REQUEST)。Alice接收“需要提交给Bob的票据”的图解说明 约定:34一旦Alice获得“需要提交给Bob的票据”,她随后就可以与Bob进行安全通信,如图10-21。其中“需要提交给Bob的票据”与上面一样,而认证码为:Bob要使用他自己的密钥KB来解密“需要提交给Bob的票据”,从而得到KAB,然后再使用这个KAB来验证时间戳的有效性。密钥KAB还要用于保护后续Alice和Bob之间通话的机密性和数据完整性。既然时间戳用于防止重放攻击,Kerberos认证框架中就要设法最小化必须发送的消息

24、数目。在Kerberos认证框架中,这个时钟偏差在默认情况下的设置是5分钟。3510.5.3 Kerberos的安全性当Alice登录时,KDC发送E(SA,TGT;KA)给Alice,其中TGT=E(“Alice”,SA;KKDC)。既然TGT票据是使用密钥KKDC加密的,那么为什么还要使用密钥KA对TGT票据进行再次加密呢?这是Kerberos认证框架设计中的一个小瑕疵,因为这个操作增加了额外的工作量,但是并没有提供更多的安全性。如果密钥KKDC被攻陷,那么整个系统的安全性必将荡然无存。Kerberos认证框架很容易就实现了基于对称密钥的匿名性。Kerberos认证框架利用KDC记录下在时

25、钟偏差区间之内接收到的所有时间戳认证码中出现的时间戳来防止重放攻击。无需维护状态又是Kerberos认证框架的非常重要的特性之一。3610.6 WEP有线等效保密(Wired Equivalent Privacy)协议,简称为WEP协议,是安全协议。设计目标是要使无线局域网(Wireless Local Area Network,WLAN)和有线局域网(LAN)具有一样的安全性。无论以什么标准来衡量,WEP都是具有严重缺陷的协议。在802.11系列标准中规定了一个数据链路层安全协议,被称为WEP(Wired Equivalent Privacy),这个协议的设计目标是要使无线局域网的安全性与有

26、线局域网同样的好。因为在默认情况下,有线局域网根本就没有安全性可言,所以这个目标很容易实现,而WEP做到了。3710.6.1 WEP协议的认证在WEP协议中,无线接入点与所有的用户共享单独的对称密钥。虽然在多个用户之间共享密钥的做法不是理想选择,但是这种方式肯定是会简化接入点的操作。无论如何,实际的WEP协议的认证过程就是简单的“challenge-response”机制,如图所示。其中Bob是访问接入点,Alice是用户,而K就是共享的对称密钥。3810.6.2 WEP协议的加密一旦Alice通过认证,数据包就会被加密,使用的加密方案是RC4流密码加密方案。每一个数据包都要使用密钥KIV=(

27、IV,K)进行加密,其中IV是3字节的初始化向量,以明文形式与数据包一起发送,而K就是在认证过程中使用的密钥。由于密钥K极少发生变化,那么加密密钥KIV=(IV,K)就会经常出现重复的情况,而且,密钥KIV一旦重复出现,Trudy就将会知道。同一初始化向量IV的更多次重复就会令Trudy的攻击行动愈发简单。虽然RC4算法在正确使用的情况下被视为一种强壮的加密方案,但是仍然存在一种实际的攻击,这种攻击可以用于从WEP协议的密文中恢复出RC4的密钥。3910.6.3 WEP协议的不完整性WEP协议存在着无数的安全问题,但是其中最为臭名昭著的问题之一就是该协议使用循环冗余校验(Cyclic Redu

28、ndancy Check,CRC)来进行“完整性”保护。使用流密码加密方案对数据进行加密这一事实,使得WEP协议的加密是线性的,进而使得数据完整性问题进一步恶化。WEP协议的“完整性检测”无法提供任何密码学意义上的数据完整性保护。4010.6.4 WEP协议的其他问题 场景一:n 如果Trudy能够通过无线连接发送一条消息,并且截获对应的密文,那么她就可以知道明文和相应的密文,这样就使得她可以立刻着手恢复密钥流。场景二:n 在默认情况下,WEP的无线接入点会广播其SSID(Service Set Identifier,服务集标识),这个SSID就是无线接入点的ID。但是,在向无线接入点发起通信

29、连接时,用户是以明文方式发送SSID的,这样Trudy就只需要截获这样的数据包,就能够发现SSID“口令”。4110.6.5 实践中的WEP协议尽管WEP协议本身存在着不少诸如此类的安全问题,但在某些环境中,还是有可能在实践中令WEP协议达到一种适度的安全性。相对于WEP协议,有一些更加安全的替代方案。举个例子,WPA(Wi-Fi Protected Access)协议就要强壮得多,但是这个协议的设计目标是要能够兼容与WEP协议同样的硬件,所以不可避免地会做出一些安全上的折中。虽然已知对WPA协议出现了少量的攻击,但是站在实际应用的角度,这个协议看起来还算比较安全。还有一个被称为WPA2的协议

30、,原则上这个协议要比WPA更加强壮一些,但是需要更加强大的硬件支持。4210.7 GSMGSM蜂窝电话网络即Global System of Mobile communication,也就是所谓的全球移动通信系统,通常被视为第二代移动通信技术。对于早期的手机来说,最大的安全问题就是容易被克隆。恰逢混乱不堪之时,无线通信领域迎来了GSM。在1982年时,GSM是法语Groupe Speciale Mobile的简写,代表一种电路交换系统。但是到了1986年,GSM又被重新定义,终于被正式命名为Global System for Mobile Communications(全球移动通信系统)。GS

31、M的创立标志着第二代蜂窝电话技术的正式开端。近年来,第三代蜂窝电话已经变得很普遍了。第三代合作伙伴计划(The 3rd Generation Partnership Project),或者简称为3GPP,是3G无线通信技术背后的工作组织。4310.7.1 GSM体系结构GSM网络的通用体系架构的图解:mobile是指手机,有时也称为移动终端或移动台,简称为MS。air interface是指从手机到基站之间无线传输通信的接口,简称为AI。visited network包括多个基站以及一个基站控制器。基站控制器扮演了连接器的作用,将在其控制之下的基站与GSM网络的其余部分连接起来。基站控制器包含

32、了访问位置寄存器(Visitor Location Registry,VLR)。访问位置寄存器用于保存网络中所有当前处于活动状态的手机用户的相关信息。公用交换电话网是指传统的(非蜂窝)电话网络系统。Home Network(归属地网络)是指手机(移动终端或移动台)注册的网络。每一个手机(移动终端或移动台)都与唯一的Home Network相关联。44手机(移动终端或移动台)n 每一台GSM手机都包含用户身份识别模块(SIM),这是可防篡改的智能卡。SIM卡中包含国际移动用户识别码(IMSI)。SIM卡中还包含128位的密钥,该密钥只有手机(移动终端或移动台)及其归属地网络知道。访问网络:指手机

33、(移动终端或移动台)当前所附着的网络。基站:指蜂窝网络系统中的蜂窝小区基站控制器:负责管理一组蜂窝小区的集合。访问位置寄存器:存有当前访问基站控制器所辖区域网络的所有手机(移动终端或移动台)的相关信息。归属地网络:保存了一台给定手机(移动终端或移动台)的关键信息,也就是IMSI和密钥Ki。HLR(归属位置寄存器):保持了其中所注册的每一部手机(移动终端或移动台)最近的位置跟踪记录。AuC(鉴权中心):保存有每一部手机(移动终端或移动台)的IMSI和密钥Ki。4510.7.2 GSM安全架构GSM网络架构的设计者们展现出的主要安全目标如下:n 要使GSM网络和常规的电话网络(PSTN网络)一样安

34、全。n 要防止手机(移动终端或移动台)克隆。GSM网络的设计目标不是防范主动攻击。GSM网络试图解决三种安全问题:匿名性、身份认证以及机密性。n 在GSM系统中,匿名性要求能够防止被截听的通信流量被用于识别通话者的身份。n 身份认证对于电话公司来说则是最重要的特性,因为正确的身份认证对于合理计费来说是必需的。n 基于空中接口的通话机密性对用户来说就很重要,同样,这种重要性到了一定的程度,机密性就会变得对电话公司也很重要了。461.匿名性GSM体系提供了一种非常有限的匿名形式。在发起通话之初,IMSI会以明文方式通过空中接口发送出去。然后,网络就将随机的临时移动用户识别码(TMSI)分配给通话发

35、起者,随后TMSI就可以作为用户的身份标识使用。另外,TMSI会频繁变化。最后的实际效果就是,如果攻击者捕获了一次通话初始部分的消息,通话发起者的匿名性将会不保。但是,如果攻击者错过了通话初始部分的消息,那么从实际效果上看,通话发起者的匿名性就得到了相当好的保护。虽然这并不算是一种强有力的匿名性保护手段,但是在现实世界的环境中可能也足够了,毕竟对于攻击者来说,要想从浩瀚庞杂的通信流量中过滤出特定的IMSI信息绝非易事。472.身份认证确保用户向基站成功认证非常必要,这样才能够保证电话公司从它们提供的服务中获得相应的报酬。在GSM网络中,通话发起者要向基站认证自身,但是并没有提供双向相互认证。G

36、SM体系中的身份认证采用简单的challenge-response机制。基站接收到通话发起者的IMSI之后,就将其传送给通话发起者的归属地网络。归属地网络知道通话发起者的IMSI和密钥Ki。归属地网络会生成随机的challenge值,这里称之为RAND,同时还要计算出期望的response,表示为XRES=A3(RAND,Ki),其中的A3是哈希函数。然后,再将这样一对值(RAND,XRES)从归属地网络发送给基站,接着基站将challenge值RAND发送给手机(移动终端或移动台)。手机发回的response值表示为SRES,这个SRES值由手机根据公式SRES=A3(RAND,Ki)计算得

37、到。为了完成身份认证,手机将SRES值发送给基站,由基站来验证是否SRES=XRES。483.机密性GSM体系中使用流密码加密方案来对数据进行加密。之所以选择流密码加密方案,主要是因为蜂窝电话网络环境中相对比较高的差错率,典型的情况是每1000位里大约有1位差错。GSM体系中的加密密钥一般写作Kc。当归属地网络接收到从基站控制器发送过来的IMSI时,归属地网络会执行计算Kc=A8(RAND,Ki),其中的A8是另外一个哈希函数。然后Kc将会和另一对值RAND及XRES一起被发送,也就是说,从归属地网络将三元组(RAND,XRES,K c)发送给基站。一旦基站接收到三元组(RAND,XRES,K

38、c)之后,就启用前面描述的认证协议。如果认证成功,手机将会计算得到Kc=A8(RAND,Ki)。而基站已经知道了Kc,所以手机和基站之间就有了共享的对称密钥,该密钥就用于接下来的通话加密。如前所述,数据加密使用的是A5/1流密码加密方案。4910.7.3 GSM认证协议 GSM协议中手机与基站之间认证与加密的图解n 将RAND值与Ki结合在一起执行哈希运算,从而生成加密密钥Kc。另外,RAND值与Ki结合还执行了哈希运算以生成SRES值,而这个SRES值是被动攻击者能够看到的。所以,SRES值与Kc必须是不相关的否则就会存在针对Kc的捷径攻击。如果使用了安全的加密哈希函数,那么这些哈希值就会是

39、不相关的。n 根据已知的RAND值和SRES值对,想要推导出Ki,要求必须是不可能的,因为这样的一对值对于被动攻击者来说是可以获得的。这就相当于已知明文攻击,只不过将加密方案替换成了哈希函数。n 根据选择的RAND值和SRES值对,想要推导出Ki,要求必须是不可能的,这就相当于面向哈希函数的选择明文攻击。虽然这种攻击看起来不太可能发生,不过一旦攻击者持有SIM卡,他们就能够选择RAND值并监听相应的SRES值。5010.7.4 GSM安全缺陷接下来要讨论GSM体系中的安全缺陷有加密系统的缺陷,也有协议方面的缺陷。1.加密缺陷在GSM体系中有若干个加密相关的缺陷。哈希运算A3和A8都是基于称为C

40、OMP128的哈希函数。哈希函数COMP128是作为秘密设计被开发出来的,仅这一点就违背了Kerckhoffs原则。果不其然,COMP128后来被发现强度不高通过150 000个选择的“明文”就能够将其破解。这实际上就意味着能够接触到SIM卡的攻击者,可以在2到10个小时之间确定出密钥Ki,具体情况则依赖于卡的运算速度。实际上,有两种不同形式的A5加密算法,分别被称为A5/1和A5/2。这两个加密算法都是在违背Kerckhoffs原则的情况下开发出来的,而且这两个算法都不强。512.无效假设GSM协议中存在严重的设计缺陷。GSM手机通话是在手机和基站之间被加密,但是从基站到基站控制器之间却不实

41、施加密。最终就是,GSM体系中安全的重点就只在于保护空中接口上的手机通话,也就是在手机和基站之间的通信保护。GSM体系架构的设计者们假定通话一旦到达基站,就会通过PSTN网络被路由到基站控制器。基于这种假设,当通话从基站发往基站控制器的过程中,GSM安全协议并不提供保护。但是,有许多的GSM系统实际上在基站及基站控制器之间是通过微波链路传输通话的。因为微波是一种无线媒介,所以对于攻击者来说,就有可能(但是也并不容易)窃听到这类链接之上承载的无保护的通话内容,从而就会致使空中接口的加密完全失效。523.SIM卡攻击对于各代的SIM卡,如今已经发展出了若干种不同的攻击方式。在光故障感应攻击中,攻击

42、者通过使用普通的闪光灯就能够强制SIM卡泄露密钥Ki。在配分攻击的情况下,通过利用对时间和功耗的分析就能够恢复出Ki,其中明文选择适当的话,最少甚至只需要使用8个选择明文即可。结果就是,持有SIM卡的攻击者要想恢复出Ki,只需要秒级的时长即可。4.伪造基站与GSM协议相关的另一严重缺陷是伪造的假冒基站带来的威胁。首先,身份认证不是双向相互认证。第二个缺陷是,空中接口上的加密操作并非是自动执行的。53在图10-26中所示的攻击里,伪造的假冒基站发送随机值给手机,而手机就会将这个随机值当作RAND值。于是手机将发回相对应的SRES值作为回应,这个SRES值会被假冒基站抛弃。假冒基站然后告诉手机不必

43、对通话内容进行加密。这个过程中,无论是通话发起者,还是通话接收方,对此都一无所知,接着假冒基站就呼叫目标接收方,并将上述来自通话发起者的通话转发给目标接收方,反过来也是如法炮制。这样一来,伪造的假冒基站就可以窃听整个的通话内容了。请注意,在这种伪造的假冒基站攻击中,假冒基站将会为通话埋单,而不会给通话方计费。在这种攻击中,假冒基站可以发送自身选择的任意RAND值,并能够接收到相应的SRES值。于是,假冒基站就能够在不持有SIM卡的情况下,发起针对SIM卡的选择明文攻击。54GSM协议的另一主要缺陷就是不能够提供重放防护。被截获的三元组(RAND,XRES,Kc)可以不断地被重放。结果就是,被截

44、获的三元组为攻击者提供了无限期有效的密钥Kc。10.7.5 GSM安全小结根据我们对GSM体系安全缺陷的这些讨论,仿佛GSM看起来就是巨大的安全败笔。尽管如此,GSM无疑还是取得了商业上的成功,这自然会引发有关“优秀的安全之于商业上的重要性”之类的若干问题。对于GSM体系的安全来说,真正的问题则是最初的设计目标太过于局限了。在GSM体系里主要的安全缺失包括弱的加密方案、SIM卡问题、伪造假冒基站攻击以及完全没有对重放的防护等。在PSTN网络中,主要的安全缺陷是搭线窃听,虽然也还有些其他的威胁,诸如对无绳电话的攻击等。总体上看,GSM系统有理由被视为一种适度安全的成功。5510.7.6 3GPP

45、第三代蜂窝电话(手机)的安全性设计是由3GPP牵头和推动的。这个组织清晰明确地将其着眼点设定得比GSM的设计者们更高。也许有点儿出人意料,3GPP的安全模型建立在GSM体系的基础之上。但是,3GPP的开发者们小心翼翼地修补了所有已知的GSM安全弱点。手机的历史,从第一代模拟系统,到第二代的GSM系统,再到如今的3GPP系统,这个过程也非常好地说明了安全领域里时常会发生的演化过程。每当攻击者发展出来新的攻击手段时,防御者就以新的保护措施予以防范,对此攻击者就会再发起新一轮探查弱点的努力。虽然3GPP明确地承诺了要比GSM系统所能交付的安全性更多,但是各种攻击行为最终还是有可能会浮出水面。简而言之,安全领域的军备竞赛还将继续。5610.8 小结本章内容回顾n SSH协议n SSL协议n IPSec协议及存在的安全问题n Kerberos身份认证协议n 两个无线网络协议:WEP和GSM57

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(信息安全原理与实践-第二版10-真实世界中的安全协议课件.ppt)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|