基于SIP的IMS安全分析研究
2008年第02期,第41卷 通 信 技 術(shù) Vol.41,No.02,2008總第19
2008年第02期,第41卷 通 信 技 術(shù) Vol.41,No.02,2008總第194期 Communications Technology No.194,Totally
基于SIP的IMS安全分析研究
王曉雷,郭云飛,俞柏鋒
(國家數(shù)字交換系統(tǒng)工程技術(shù)研究中心,河南 鄭州 450002)
【摘 要】文中首先分析了SIP協(xié)議的五個常見漏洞:注冊劫持、服務(wù)器偽裝、消息篡改、會話終止、拒絕服務(wù),然后對IMS安全機(jī)制中的接入安全、網(wǎng)絡(luò)域安全以及安全聯(lián)盟的建立流程做了分析,并以此為基礎(chǔ)分析研究了在IMS中應(yīng)用SIP協(xié)議的漏洞實(shí)施攻擊的可行性。從分析結(jié)果可以看出,IMS的安全機(jī)制能夠拒絕除了DOS攻擊之外的所有基于SIP漏洞的攻擊。最后給出了在IMS中實(shí)施DOS攻擊的流程,并利用Open SER服務(wù)器在100M的局域網(wǎng)中對DOS攻擊進(jìn)行了仿真驗(yàn)證。 【關(guān)鍵詞】SIP協(xié)議;IMS;DOS攻擊
【中圖分類號】TN918 【文獻(xiàn)標(biāo)識碼】A 【文章編號】1002-0802(2008)02-0035-04
Security Analysis?。幔睿洹。遥澹螅澹幔颍悖琛。猓幔螅澹洹。铮睢。樱桑小。椋睢。桑停?/p>
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?。穑颍铮簦铮悖铮欤弧。桑停?; DOS?。幔簦簦幔悖?/p>
0 引言
3GPP在R5版本中提出了IMS標(biāo)準(zhǔn)。IMS采用SIP作為其會話控制協(xié)議,被業(yè)界公認(rèn)為未來網(wǎng)絡(luò)融合的控制平臺。SIP協(xié)議具有實(shí)現(xiàn)簡單、擴(kuò)展性好、多媒體會話提供能力強(qiáng)等特點(diǎn)。但另一方面,SIP以文本形式表示的詞法和語法分析比較簡單,面對復(fù)雜的網(wǎng)絡(luò)環(huán)境,SIP協(xié)議缺少有力的安全機(jī)制。同時,IMS安全機(jī)制也正處于不斷完善之中。通過研究SIP協(xié)議的漏洞和現(xiàn)有IMS安全機(jī)制,去發(fā)現(xiàn)IMS的安全威脅和漏洞,具有重大的意義。
陷。目前針對SIP協(xié)議比較典型的安全威脅包括如下幾種。
(1)注冊劫持:注冊過程中,攻擊者截獲注冊消息,并向一個URI的所有Contact發(fā)送注冊注銷消息,然后注冊自己的設(shè)備為contact地址,這樣就將所有到用戶的呼叫全部轉(zhuǎn)向攻擊者的設(shè)備。
(2)服務(wù)器偽裝:呼叫過程中,UA通常直接向域中的服務(wù)器發(fā)送Invite消息。攻擊者偽裝成重定向服務(wù)器接收到該消息后,向用戶發(fā)送301消息表示當(dāng)前SIP服務(wù)器已退出服務(wù),同時將自己的地址指定為接替服務(wù)的SIP服務(wù)器。那么用戶所有的呼叫請求都被攻擊者截獲,而并非發(fā)向服
[1]
1 SIP協(xié)議漏洞分析
SIP協(xié)議在設(shè)計(jì)之初充分考慮了協(xié)議的易用性和靈活性,但并沒有將安全性作為重點(diǎn),使其在安全方面存在一定的缺
務(wù)器。
(3)消息篡改:當(dāng)UA通過信任的proxy來路由呼叫時,惡意的proxy就可以改動消息體。大部分端到端SIP消息中
收稿日期:2007-09-28。
作者簡介:王曉雷(1982-),男,碩士研究生,主要研究方向?yàn)闊o線移動通信;郭云飛(1963-),男,教授,博士生導(dǎo)師,863通信主題專家組組
長,主要研究方向?yàn)樾畔鬏斉c交換、下一代網(wǎng)絡(luò)、無線移動通信;俞柏鋒(1981-),男,碩士研究生,主要研究方向?yàn)闊o線移動通信。
35
,的內(nèi)容都在可篡改之列,例如MIME、SDP、被封裝的電話信令等。
(4)會話終止:會話建立以后,可以通過發(fā)送信令消息修改會話的狀況。如果一個會話消息被攻擊者截獲,獲得了To、From等內(nèi)容,然后在消息中插入BYE請求,于是用戶的正常會話會被終止。
(5)拒絕服務(wù):由于SIP的服務(wù)基于IP網(wǎng)絡(luò),SIP服務(wù)器就不可避免的存在遭受DOS攻擊的可能性。攻擊者通常偽造一個虛假的IP地址和相應(yīng)的Via字段,假裝是某個主機(jī)發(fā)來的請求。然后大量發(fā)送給SIP服務(wù)器,從而使服務(wù)器遭受D0S攻擊。
間的SA采用IPSec ESP的隧道模式,所有來自不同安全域的業(yè)務(wù)都由SEG進(jìn)行路由。2.3 SA的建立流程
在IMS的5個安全聯(lián)盟中,UE和網(wǎng)絡(luò)的相互認(rèn)證是建立安全聯(lián)盟的基礎(chǔ),文中以安全聯(lián)盟②為例,詳細(xì)說明SA的建立過程。
2.3.1UE獲取IP地址
以GPRS接入網(wǎng)為例,UE在GPRS附著流程完成后向SGSN發(fā)送一個激活PDP上下文請求,SGSN根據(jù)該消息中的APN連通請求和分組連接類型來選擇合適的GGSN,并向其發(fā)送一個創(chuàng)建PDP上下文請求。GGSN收到請求后把一個64bit的IPv6前綴包含在一個創(chuàng)建PDP上下文響應(yīng)中,并通過SGSN透傳給UE。UE選擇任意IPv6后綴,組成一個128bit的IPv6地址。2.3.2 P-CSCF發(fā)現(xiàn)
IMS終端通過P-CSCF發(fā)現(xiàn)流程來獲得一個P-CSCF的IP地址。P-CSCF發(fā)現(xiàn)流程分為兩種:一是與接入IP-CAN的流程相結(jié)合,即UE在獲取自身IP地址的同時也獲得了P-CSCF的地址;二是作為一個獨(dú)立的流程進(jìn)行。
在P-CSCF發(fā)現(xiàn)流程的獨(dú)立形式中,當(dāng)IMS終端與IP-CAN連接后,IMS終端向DHCPv6服務(wù)器發(fā)出消息,請求獲得P-CSCF域名和DNS服務(wù)器地址列表。終端從域名列表中選擇
2 IMS安全機(jī)制分析
IMS用戶在被允許接入多媒體業(yè)務(wù)前,用戶和IMS之間需要建立安全聯(lián)盟SA(Security Association)以保護(hù)消息的安全。IMS安全體系
[2,3]
如圖1。圖1中的數(shù)字分別代表了
對應(yīng)于IMS不同安全需求的5個安全聯(lián)盟。

合適的域名,然后向合適的DNS發(fā)送消息把域名解析成IPv6地址,從而獲得P-CSCF的地址。2.3.3 IMS層注冊
IMS層注冊就是IMS用戶在IMS網(wǎng)絡(luò)請求授權(quán)使用IMS業(yè)務(wù)的流程 。以UE使用ISIM進(jìn)行注冊為例,ISIM和HSS共享的參數(shù)有IMPU、IMPI、用戶歸屬網(wǎng)絡(luò)的域名、IMS域內(nèi)的SQN序列號、認(rèn)證密鑰key。注冊通過一個SIP REGISTER請求來完成,共有兩次往返過程,如圖2所示。
UE
P-CSCF
[6]
圖1 IMS安全體系
2.1 接入安全
[4]
接入安全包括用戶和網(wǎng)絡(luò)認(rèn)證以及保護(hù)IMS終端和網(wǎng)絡(luò)間的業(yè)務(wù),由如下兩個安全聯(lián)盟負(fù)責(zé):安全聯(lián)盟①:完成終端的注冊以及終端和網(wǎng)絡(luò)間的相互認(rèn)證;安全聯(lián)盟②:為UE和P-CSCF間的信令和數(shù)據(jù)提供完整性保護(hù),在用戶的注冊過程中建立。2.2 網(wǎng)絡(luò)安全
[5]
I-CSCF HSS S-CSCF

網(wǎng)絡(luò)安全處理網(wǎng)絡(luò)節(jié)點(diǎn)之間的業(yè)務(wù)保護(hù)。IMS網(wǎng)絡(luò)被劃分為若干的安全域,安全域通常是一個由單獨(dú)管理機(jī)構(gòu)管理的網(wǎng)絡(luò)。不同的安全域之間由安全網(wǎng)關(guān)SEG建立安全聯(lián)盟,保護(hù)安全域之間的邊界。網(wǎng)絡(luò)安全由以下三個安全聯(lián)盟負(fù)責(zé):安全聯(lián)盟③:為網(wǎng)絡(luò)域內(nèi)的Cx接口提供機(jī)密性和完整性保護(hù);安全聯(lián)盟④:當(dāng)P-CSCF位于漫游網(wǎng)絡(luò)時,為不同網(wǎng)絡(luò)間具有SIP能力的結(jié)點(diǎn)提供安全,對所有經(jīng)過Za接口的數(shù)據(jù)提供認(rèn)證和完整性保護(hù);安全聯(lián)盟⑤:當(dāng)P-CSCF位于歸屬網(wǎng)絡(luò)時,為網(wǎng)絡(luò)內(nèi)部具有SIP能力的結(jié)點(diǎn)提供安全,即在同一個安全域內(nèi)各個實(shí)體之間建立安全聯(lián)盟。 安全聯(lián)盟③~⑤的建立過程和安全聯(lián)盟②相同。SEG之36
圖2 在IMS層的注冊流程
假設(shè)用戶user向域名為sip:home.net的歸屬網(wǎng)絡(luò)進(jìn)行注冊。則(1)REGISTER消息的簡要格式如下。
,REGISTER sip: home.net SIP/2.0
From:
Contact:
3 IMS安全漏洞分析與攻擊實(shí)驗(yàn)
信令消息的安全通常分為四個方面:完整性、機(jī)密性、真實(shí)性、可用性。在IMS中通過建立安全聯(lián)盟SA實(shí)現(xiàn)了對SIP消息的完整性保護(hù),通過對UE進(jìn)行認(rèn)證實(shí)現(xiàn)了對消息的真實(shí)性和可用性保護(hù)。
在SIP常見的威脅中,服務(wù)器偽裝、消息竄改、會話終止都是在會話過程中發(fā)起攻擊,分別對消息進(jìn)行完整性、可用性和真實(shí)性破壞。因?yàn)镮MS發(fā)起會話邀請時已經(jīng)建立了SA,并對所有的消息都進(jìn)行了保護(hù),所以此三種攻擊手段在IMS中無效。文中重點(diǎn)分析在注冊階段發(fā)起的注冊劫持和DOS攻擊在IMS中的威脅。3.1 IMS中的注冊劫持攻擊
假設(shè)攻擊者為attacker,截獲(1)REGISTER消息后對消息進(jìn)行篡改,篡改后格式如下。
REGISTER sip: home.net SIP/2.0
From:
Contact:
從格式中可以看出,attacker把自己的地址寫進(jìn)了Contact和From域中。S-CSCF返回的401未授權(quán)消息將直接發(fā)往attacker,然后attacker把消息發(fā)回到UE對網(wǎng)絡(luò)進(jìn)行認(rèn)證。但是當(dāng)UE對網(wǎng)絡(luò)認(rèn)證完成后發(fā)送(11)REGISTER消息時已經(jīng)受到SA的保護(hù),attacker無法從消息中獲取終端的認(rèn)證應(yīng)答XRES,所以由attacker偽造的注冊流程無法完成。常規(guī)的注冊劫持攻擊無法在IMS中實(shí)現(xiàn)。3.2 IMS中的拒絕服務(wù)攻擊
常見的DOS攻擊通常采用IP欺騙等方式向服務(wù)器發(fā)送大量的無用數(shù)據(jù)包。SA建立之后,IMS能夠杜絕IP地址欺騙。但是UE在發(fā)送(11)REGISTER消息之前,沒有對所傳送的消息進(jìn)行任何保護(hù)。所以在注冊流程的第一個往返過程中可能發(fā)生DOS攻擊。因?yàn)?GPP/3GPP2沒有對如何防止DOS對DNS的攻擊作相關(guān)定義,所以可以在P-CSCF發(fā)現(xiàn)流程中對DNS發(fā)起DOS攻擊。設(shè)計(jì)攻擊流程如圖3。
UE

DHCP
DNS
[7]
圖2中(1)REGISTER消息沒有進(jìn)行任何安全性保護(hù)。Authorization字段包含了IMPI、歸屬網(wǎng)絡(luò)域名,其中nonce和response用來進(jìn)行認(rèn)證,此時值為空。Security-Client字段用于建立SA。
P-CSCF通過執(zhí)行DNS流程定位I-CSCF,并把REGISTER消息發(fā)送到I-CSCF。I-CSCF在收到注冊消息后向HSS發(fā)送包含IMPU、IMPI、拜訪網(wǎng)絡(luò)標(biāo)識的Diameter用戶認(rèn)證請求。HSS根據(jù)參數(shù)內(nèi)容做出應(yīng)答,并返回一組S-CSCF的性能。I-CSCF根據(jù)S-CSCF的性能為用戶選擇一個合適的S-CSCF,并把REGISTER消息發(fā)向S-CSCF。S-CSCF收到注冊消息后從HSS下載若干5維的認(rèn)證向量V 。
V =(RAND , AUTN , XRES , IK , CK ) , (1)AUTN 由共享的密鑰key 和序列號SQN 生成。S-CSCF利用第一個認(rèn)證向量建立一個401未授權(quán)響應(yīng)來傳送nonce 值和CK 、IK :
nonce =RAND AUTN =RAND key SQN 。 (2) P-CSCF收到401未授權(quán)響應(yīng)后取出CK和IK用來建立SA,然后把剩下的消息發(fā)送給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 計(jì)算得到一個AUTN ,如果它和接收到的AUTN 值一樣,則網(wǎng)絡(luò)通過認(rèn)證。IMSI使用key 和接收到的RAND 產(chǎn)生響應(yīng)值RES ,并通過(11)REGISTER消息的response 字段發(fā)送給S-CSCF。S-CSCF把接收到的RES 值與預(yù)期認(rèn)證向量中的XRES 進(jìn)行比較,如果匹配,則終端UE通過認(rèn)證,并返回一個200(OK)消息。2.3.4 SA的建立
(1)REGISTER消息中的Security-Client字段和(10)401未授權(quán)消息中Security-Server字段包含了建立安全聯(lián)盟所需的參數(shù)。這些參數(shù)包括終端和P-CSCF所支持的安全機(jī)制(ipsec-3gpp)、算法(hmac-sha-1-96),以及安全連接標(biāo)識符SPIs和端口號。(11)REGISTER消息之后所有的SIP消息都將受到SA的保護(hù)。
圖3 DOS攻擊流程
圖3中攻擊者attacker截獲UE發(fā)向DNS的域名解析請求,并把IP地址偽裝成UE的地址,然后向DNS發(fā)送大量的數(shù)據(jù)包直到服務(wù)器無法正常工作。3.3 DOS的攻擊試驗(yàn)
37
,實(shí)驗(yàn)中服務(wù)器端軟件使用OpenSER (Open SIP Express Router)擔(dān)任UE、DHCP、DNS等多種邏輯角色,主機(jī)操作系統(tǒng)使用Redhat Enterprise Linux 4。實(shí)驗(yàn)在100M局域網(wǎng)中進(jìn)行,服務(wù)器和attacker的硬件配置為P-4 1.6GHz雙核處理器、1GB內(nèi)存。
采用sipsak(SIP swiss army knife)這一測試工具的flood.mode測試模式進(jìn)行模擬攻擊。由主機(jī)attacker執(zhí)行攻擊,再利用sipsak的探測模式從另一臺主機(jī)探測DNS的響應(yīng)時間。
正常情況下DNS的響應(yīng)時間測試值在100ms左右。從探測結(jié)果圖4可以看出,在攻擊發(fā)起的前9s時間內(nèi),DNS的響應(yīng)時間沒有多大變化。當(dāng)攻擊發(fā)生21s以后,DNS的響應(yīng)時間






迅速增加至接近25s。
4 結(jié)語
通過文中的研究結(jié)果可以看出,IMS的安全機(jī)制對于現(xiàn)有的攻擊手段來說還是比較完善的。但是IMS是基于全I(xiàn)P架構(gòu)的網(wǎng)絡(luò),隨著終端智能化的發(fā)展,IMS面臨的威脅也不斷升級。對IMS安全機(jī)制的研究和改進(jìn)將是一個長期的研究課題。
參考文獻(xiàn)
1 俞志春,方濱興,張兆心. SIP協(xié)議的安全性研究[J].計(jì)算機(jī)應(yīng)用,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
測試響應(yīng)時間
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 結(jié)語
CL算法的誤碼性能非常好,但它的復(fù)雜度非常高,限制了它在許多實(shí)際系統(tǒng)中的應(yīng)用。為了降低復(fù)雜度,文中提出了一種改進(jìn)的球解碼算法BLAST-SD算法,這個算法是在犧牲有限誤碼性能的情況下大幅度降低了算法的復(fù)雜度,進(jìn)一步加快了解碼的速度。
參考文獻(xiàn)
38
/ms
7 方濱興.信息安全四要素.[DB/OL].http://pact518.hit.edu.cn/

viewpoint/annotation/view.2005-07-05/2007-09-04.
圖4 DOS攻擊DNS的響應(yīng)能力
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 不同信噪比下的迭代次數(shù)