基于SIP的IMS安全分析研究

2008年第02期,第41卷 通 信 技 术 Vol.41,No.02,2008总第19

2008年第02期,第41卷 通 信 技 术 Vol.41,No.02,2008总第194期 Communications Technology No.194,Totally

基于SIP的IMS安全分析研究

王晓雷,郭云飞,俞柏锋

(国家数字交换系统工程技术研究中心,河南 郑州 450002)

【摘 要】文中首先分析了SIP协议的五个常见漏洞:注册劫持、服务器伪装、消息篡改、会话终止、拒绝服务,然后对IMS安全机制中的接入安全、网络域安全以及安全联盟的建立流程做了分析,并以此为基础分析研究了在IMS中应用SIP协议的漏洞实施攻击的可行性。从分析结果可以看出,IMS的安全机制能够拒绝除了DOS攻击之外的所有基于SIP漏洞的攻击。最后给出了在IMS中实施DOS攻击的流程,并利用Open SER服务器在100M的局域网中对DOS攻击进行了仿真验证。 【关键词】SIP协议;IMS;DOS攻击

【中图分类号】TN918 【文献标识码】A 【文章编号】1002-0802(2008)02-0035-04

Security Analysis and Research based on SIP in IMS

WANG Xiao-lei,GUO Yun-fei,YU Bai-feng

(National Digital Switching System Engineering &Technological Research Center, Zhengzhou Henan 450002, China)

【Abstract】This paper first analyzes the five ordinary leaks: register hijack, impersonation of a server, tampering of message bodies, tearing-down of sessions and denial of service, and then discusses the access security and network domain security in IMS security mechanism, and the establishment flow of security association. Based on these work it analyzes the feasibility of attack by making use of SIP leaks in IMS. The result shows that the security mechanism of IMS can resist all the attack based on SIP leaks except the DOS. Finally it gives an attack flow of DOS and describes a simulation of the DOS attack by using open SER in a 100M LAN.

   【Key words】SIP protocol; IMS; DOS attack

0 引言

3GPP在R5版本中提出了IMS标准。IMS采用SIP作为其会话控制协议,被业界公认为未来网络融合的控制平台。SIP协议具有实现简单、扩展性好、多媒体会话提供能力强等特点。但另一方面,SIP以文本形式表示的词法和语法分析比较简单,面对复杂的网络环境,SIP协议缺少有力的安全机制。同时,IMS安全机制也正处于不断完善之中。通过研究SIP协议的漏洞和现有IMS安全机制,去发现IMS的安全威胁和漏洞,具有重大的意义。

陷。目前针对SIP协议比较典型的安全威胁包括如下几种。

(1)注册劫持:注册过程中,攻击者截获注册消息,并向一个URI的所有Contact发送注册注销消息,然后注册自己的设备为contact地址,这样就将所有到用户的呼叫全部转向攻击者的设备。

(2)服务器伪装:呼叫过程中,UA通常直接向域中的服务器发送Invite消息。攻击者伪装成重定向服务器接收到该消息后,向用户发送301消息表示当前SIP服务器已退出服务,同时将自己的地址指定为接替服务的SIP服务器。那么用户所有的呼叫请求都被攻击者截获,而并非发向服

[1]

1 SIP协议漏洞分析

SIP协议在设计之初充分考虑了协议的易用性和灵活性,但并没有将安全性作为重点,使其在安全方面存在一定的缺

务器。

(3)消息篡改:当UA通过信任的proxy来路由呼叫时,恶意的proxy就可以改动消息体。大部分端到端SIP消息中

收稿日期:2007-09-28。

作者简介:王晓雷(1982-),男,硕士研究生,主要研究方向为无线移动通信;郭云飞(1963-),男,教授,博士生导师,863通信主题专家组组

长,主要研究方向为信息传输与交换、下一代网络、无线移动通信;俞柏锋(1981-),男,硕士研究生,主要研究方向为无线移动通信。

35

,

的内容都在可篡改之列,例如MIME、SDP、被封装的电话信令等。

(4)会话终止:会话建立以后,可以通过发送信令消息修改会话的状况。如果一个会话消息被攻击者截获,获得了To、From等内容,然后在消息中插入BYE请求,于是用户的正常会话会被终止。

(5)拒绝服务:由于SIP的服务基于IP网络,SIP服务器就不可避免的存在遭受DOS攻击的可能性。攻击者通常伪造一个虚假的IP地址和相应的Via字段,假装是某个主机发来的请求。然后大量发送给SIP服务器,从而使服务器遭受D0S攻击。

间的SA采用IPSec ESP的隧道模式,所有来自不同安全域的业务都由SEG进行路由。2.3 SA的建立流程

在IMS的5个安全联盟中,UE和网络的相互认证是建立安全联盟的基础,文中以安全联盟②为例,详细说明SA的建立过程。

2.3.1UE获取IP地址

以GPRS接入网为例,UE在GPRS附着流程完成后向SGSN发送一个激活PDP上下文请求,SGSN根据该消息中的APN连通请求和分组连接类型来选择合适的GGSN,并向其发送一个创建PDP上下文请求。GGSN收到请求后把一个64bit的IPv6前缀包含在一个创建PDP上下文响应中,并通过SGSN透传给UE。UE选择任意IPv6后缀,组成一个128bit的IPv6地址。2.3.2 P-CSCF发现

IMS终端通过P-CSCF发现流程来获得一个P-CSCF的IP地址。P-CSCF发现流程分为两种:一是与接入IP-CAN的流程相结合,即UE在获取自身IP地址的同时也获得了P-CSCF的地址;二是作为一个独立的流程进行。

在P-CSCF发现流程的独立形式中,当IMS终端与IP-CAN连接后,IMS终端向DHCPv6服务器发出消息,请求获得P-CSCF域名和DNS服务器地址列表。终端从域名列表中选择

2 IMS安全机制分析

IMS用户在被允许接入多媒体业务前,用户和IMS之间需要建立安全联盟SA(Security Association)以保护消息的安全。IMS安全体系

[2,3]

如图1。图1中的数字分别代表了

对应于IMS不同安全需求的5个安全联盟。

合适的域名,然后向合适的DNS发送消息把域名解析成IPv6地址,从而获得P-CSCF的地址。2.3.3 IMS层注册

IMS层注册就是IMS用户在IMS网络请求授权使用IMS业务的流程 。以UE使用ISIM进行注册为例,ISIM和HSS共享的参数有IMPU、IMPI、用户归属网络的域名、IMS域内的SQN序列号、认证密钥key。注册通过一个SIP REGISTER请求来完成,共有两次往返过程,如图2所示。

UE

P-CSCF

[6]

图1 IMS安全体系

2.1 接入安全

[4]

接入安全包括用户和网络认证以及保护IMS终端和网络间的业务,由如下两个安全联盟负责:安全联盟①:完成终端的注册以及终端和网络间的相互认证;安全联盟②:为UE和P-CSCF间的信令和数据提供完整性保护,在用户的注册过程中建立。2.2 网络安全

[5]

I-CSCF HSS S-CSCF

网络安全处理网络节点之间的业务保护。IMS网络被划分为若干的安全域,安全域通常是一个由单独管理机构管理的网络。不同的安全域之间由安全网关SEG建立安全联盟,保护安全域之间的边界。网络安全由以下三个安全联盟负责:安全联盟③:为网络域内的Cx接口提供机密性和完整性保护;安全联盟④:当P-CSCF位于漫游网络时,为不同网络间具有SIP能力的结点提供安全,对所有经过Za接口的数据提供认证和完整性保护;安全联盟⑤:当P-CSCF位于归属网络时,为网络内部具有SIP能力的结点提供安全,即在同一个安全域内各个实体之间建立安全联盟。 安全联盟③~⑤的建立过程和安全联盟②相同。SEG之36

图2 在IMS层的注册流程

假设用户user向域名为sip:home.net的归属网络进行注册。则(1)REGISTER消息的简要格式如下。

,

REGISTER sip: home.net SIP/2.0

From: ;tag=s8732nTo:

Contact:Authorization : Digest username=“user_private@home.net” realm=“home.net ”,nonce=“” uri=“sip:home.net”,response=“”Security-Client: ipsec-3gpp; alg=hmac-sha-1-96; spi-c=23456789;spi-s=12345678; port-c=2468;port-s=1357

3 IMS安全漏洞分析与攻击实验

信令消息的安全通常分为四个方面:完整性、机密性、真实性、可用性。在IMS中通过建立安全联盟SA实现了对SIP消息的完整性保护,通过对UE进行认证实现了对消息的真实性和可用性保护。

在SIP常见的威胁中,服务器伪装、消息窜改、会话终止都是在会话过程中发起攻击,分别对消息进行完整性、可用性和真实性破坏。因为IMS发起会话邀请时已经建立了SA,并对所有的消息都进行了保护,所以此三种攻击手段在IMS中无效。文中重点分析在注册阶段发起的注册劫持和DOS攻击在IMS中的威胁。3.1 IMS中的注册劫持攻击

假设攻击者为attacker,截获(1)REGISTER消息后对消息进行篡改,篡改后格式如下。

REGISTER sip: home.net SIP/2.0

From: ;tag=s8732nTo:

Contact:

从格式中可以看出,attacker把自己的地址写进了Contact和From域中。S-CSCF返回的401未授权消息将直接发往attacker,然后attacker把消息发回到UE对网络进行认证。但是当UE对网络认证完成后发送(11)REGISTER消息时已经受到SA的保护,attacker无法从消息中获取终端的认证应答XRES,所以由attacker伪造的注册流程无法完成。常规的注册劫持攻击无法在IMS中实现。3.2 IMS中的拒绝服务攻击

常见的DOS攻击通常采用IP欺骗等方式向服务器发送大量的无用数据包。SA建立之后,IMS能够杜绝IP地址欺骗。但是UE在发送(11)REGISTER消息之前,没有对所传送的消息进行任何保护。所以在注册流程的第一个往返过程中可能发生DOS攻击。因为3GPP/3GPP2没有对如何防止DOS对DNS的攻击作相关定义,所以可以在P-CSCF发现流程中对DNS发起DOS攻击。设计攻击流程如图3。

UE

DHCP

DNS

[7]

图2中(1)REGISTER消息没有进行任何安全性保护。Authorization字段包含了IMPI、归属网络域名,其中nonce和response用来进行认证,此时值为空。Security-Client字段用于建立SA。

P-CSCF通过执行DNS流程定位I-CSCF,并把REGISTER消息发送到I-CSCF。I-CSCF在收到注册消息后向HSS发送包含IMPU、IMPI、拜访网络标识的Diameter用户认证请求。HSS根据参数内容做出应答,并返回一组S-CSCF的性能。I-CSCF根据S-CSCF的性能为用户选择一个合适的S-CSCF,并把REGISTER消息发向S-CSCF。S-CSCF收到注册消息后从HSS下载若干5维的认证向量V 。

V =(RAND , AUTN , XRES , IK , CK ) , (1)AUTN 由共享的密钥key 和序列号SQN 生成。S-CSCF利用第一个认证向量建立一个401未授权响应来传送nonce 值和CK 、IK :

nonce =RAND AUTN =RAND key SQN 。 (2) P-CSCF收到401未授权响应后取出CK和IK用来建立SA,然后把剩下的消息发送给UE。此时401消息中Authorization和Security-Server字段为:

Authorization : Digest realm=“home.net ” nonce=“dcd98b7102dd2f0e8b11d0f600bfb ” algorithm=AKAv1-MD5

Security-Server: ipsec-3gpp; q=0.1;alg=hmac-sha-1-96; spi-c=98765432;spi-s=87654321; port-c=8642;port-s=7531

[6]

UE收到401消息后,由nonce 的值推算出RAND 、AUTN 、CK 、IK 。IMSI使用共享的key 和SQN 计算得到一个AUTN ,如果它和接收到的AUTN 值一样,则网络通过认证。IMSI使用key 和接收到的RAND 产生响应值RES ,并通过(11)REGISTER消息的response 字段发送给S-CSCF。S-CSCF把接收到的RES 值与预期认证向量中的XRES 进行比较,如果匹配,则终端UE通过认证,并返回一个200(OK)消息。2.3.4 SA的建立

(1)REGISTER消息中的Security-Client字段和(10)401未授权消息中Security-Server字段包含了建立安全联盟所需的参数。这些参数包括终端和P-CSCF所支持的安全机制(ipsec-3gpp)、算法(hmac-sha-1-96),以及安全连接标识符SPIs和端口号。(11)REGISTER消息之后所有的SIP消息都将受到SA的保护。

图3 DOS攻击流程

图3中攻击者attacker截获UE发向DNS的域名解析请求,并把IP地址伪装成UE的地址,然后向DNS发送大量的数据包直到服务器无法正常工作。3.3 DOS的攻击试验

37

,

实验中服务器端软件使用OpenSER (Open SIP Express Router)担任UE、DHCP、DNS等多种逻辑角色,主机操作系统使用Redhat Enterprise Linux 4。实验在100M局域网中进行,服务器和attacker的硬件配置为P-4 1.6GHz双核处理器、1GB内存。

采用sipsak(SIP swiss army knife)这一测试工具的flood.mode测试模式进行模拟攻击。由主机attacker执行攻击,再利用sipsak的探测模式从另一台主机探测DNS的响应时间。

正常情况下DNS的响应时间测试值在100ms左右。从探测结果图4可以看出,在攻击发起的前9s时间内,DNS的响应时间没有多大变化。当攻击发生21s以后,DNS的响应时间

迅速增加至接近25s。

4 结语

通过文中的研究结果可以看出,IMS的安全机制对于现有的攻击手段来说还是比较完善的。但是IMS是基于全IP架构的网络,随着终端智能化的发展,IMS面临的威胁也不断升级。对IMS安全机制的研究和改进将是一个长期的研究课题。

参考文献

1 俞志春,方滨兴,张兆心. SIP协议的安全性研究[J].计算机应用,2006,26(09):2124-2126.

2 Camarillo G, Miguel A.Garicia-Martin. The 3G IP Multimedia Subsystem[M].Finland: John Wiley & Sons.Inc,2005:182-188.3 3GPP.TS 23.228(V6.7.1 2006.12), IP Multimedia Subsystem (IMS)[S].France:3rd Generation Partnership Project:5-11.4 3GPP.TS 33.203(V7.4.0 2006-12), 3G Security:Access Security

测试响应时间

for IP-based Service(SA3)[S].France:3rd Generation Partnership Project:14-21.

5 3GPP.TS 33.210(V6.6.0 2006.09), 3G Security:Nerwork Domain Security,IP network Layer Security[S].France:3rd Generation Partnership Project:7-13.

6 IETF.RFC3263(2002.02),SIP:Locating SIP Servers.America:IETF:94-115[S].

攻击时间/s

(上接第31页)

1 POHST M. On the computation of lattice vectors of minimal length, successive minima and reduced basis with applications[J]. ACM SIGSAM Bull, 1981, 15(01): 37-44.2 VITERBO E,BOUTROS J. A universal lattice code decoder[C]. France,1993: 611-614.

3 BRUNEL L, BOUTROS J. Euclidean space lattice decoding for joint detection in CDMA systemsin[C]. South Africa, June 1999.

4 DAMEN M O, CHKEIF A, BELFIORE J. Lattice codes decoder for

R SN /(dB)

4 结语

CL算法的误码性能非常好,但它的复杂度非常高,限制了它在许多实际系统中的应用。为了降低复杂度,文中提出了一种改进的球解码算法BLAST-SD算法,这个算法是在牺牲有限误码性能的情况下大幅度降低了算法的复杂度,进一步加快了解码的速度。

参考文献

38

/ms

7 方滨兴.信息安全四要素.[DB/OL].http://pact518.hit.edu.cn/

viewpoint/annotation/view.2005-07-05/2007-09-04.

图4 DOS攻击DNS的响应能力

space-time codes[J]. IEEE Communication Letter, 2000, 4(05): 161-163.

5 Foschini G J. Layered space-time architecture for wireless communications in a fading environment when using multi-element antennas[J]. Bell Labs Technical Journal, Aut.1996, 1(02): 41-59.

6 VITERBO E, BOUTROS J. A universal lattice code decoder for fading channels[J]. IEEE Trans on Information Theory, 1999, 45(07): 1639-1642.

7 CHAN A M, LEE I. A new reduced-complexity sphere decoder for multiple antenna system[C]. 2002: 460-465.

图2 CL、BLAST-SD 不同信噪比下的迭代次数

标签: