基于H.323協(xié)議的VoIP安全問題探討
電信工程技術與標準化 姚玉坤 劉合武 2007/12/11
摘要本文簡要介紹了H.323協(xié)議網(wǎng)絡結構、子協(xié)議功能及工作流程。分析了VoIP網(wǎng)絡系統(tǒng)潛在的威脅及安全要求,最后結合H.323VoIP的通信流程,分析了H.235建議所采用的安全措施。圖1 基于H.323VoIP網(wǎng)絡體系示意圖
圖1中,H.323VoIP網(wǎng)絡的各實體的功能如下。
H.323終端是IP網(wǎng)絡中能提供實時、雙向通信的節(jié)點設備,也是一種終端用戶設備,可以和網(wǎng)關、多點接入控制單元進行多媒體通信。
網(wǎng)關用于連接H.323網(wǎng)絡與非H.323網(wǎng)絡(如ISDN,POTS),網(wǎng)關通過轉換呼叫建立和釋放協(xié)議,來轉換兩個網(wǎng)絡的不同媒體格式。
關守主要負責電話號碼和IP地址之間的轉換。它們還負責管理帶寬并提供終端登記和認證機制。同時關守還提供了諸如呼叫傳輸、呼叫轉發(fā)等服務。
MCU提供對三方終端以上的電話會議的支持。所有參與會議的終端與MCU建立一個連接。MCU管理會議資源,語音(視頻)編碼算法,還可以管理媒體流。
H.323協(xié)議是一個龐大的協(xié)議族,其中又包括許多相關的子協(xié)議,形成了一個協(xié)議棧,如圖2所示。
圖2 H.323協(xié)議棧
從圖2可以看到,H.225.0和H.245是H.323系統(tǒng)的核心協(xié)議。H.225.0負責呼叫控制,主要包括兩部分:呼叫接納信令(RAS)和呼叫信令協(xié)議。RAS主要用于傳送終端登記信息、認證信息和呼叫處理信息;呼叫信令協(xié)議基于Q.931而制定,主要用于完成呼叫建立過程,也常稱為Q.931信令。H.245用于媒體控制,主要實現(xiàn)媒體流通信信道的建立、維護和釋放。RTCP是媒體流實時傳輸控制協(xié)議,RTP是媒體流實時傳輸協(xié)議。媒體流安全傳輸將使用H.245信道中給出的算法與密鑰進行編碼。
H.323終端之間建立通信關系通常執(zhí)行四個控制過程:RAS,H.225.0呼叫控制(Q.931信令),連接控制(H.245)及媒體RTP信道建立的過程。
圖3簡要描述了一個基于H.323的PC2PC的VoIP呼叫的建立過程以及呼叫過程中各相關協(xié)議的控制作用。當一個H.323終端想要與另一個端點建立呼叫時,首先,源端點使用RAS信令從一個關守那里獲得許可;然后,源端點使用H.225.0呼叫控制(Q.931信令)來建立與目的端點的通信;接著,源端點使用H.245連接控制信令與目的端點協(xié)商媒體參數(shù)并建立RTP信道;最后,兩端點通過RTP信道進行媒體傳送。
圖3 H.323的呼叫建立過程與協(xié)議控制
3、基于H.323的VoIP安全分析
3.1VoIP的安全威脅
VoIP作為一種多媒體通信服務運行在IP網(wǎng)上,語音分組數(shù)據(jù)包是在IP網(wǎng)中傳輸?shù),由于IP網(wǎng)絡的開放性、可獲得性及廣域性,所有在互聯(lián)網(wǎng)中存在的安全問題,VoIP系統(tǒng)同樣存在。VoIP受到多方面的安全威脅,主要有:
。1)DoS攻擊:DoS(拒絕服務)攻擊是包括任何導致系統(tǒng)不能正常提供服務的攻擊,最基本的DoS攻擊就是利用合理的服務器請求來占用過多的服務資源,從而使合法用戶無法得到服務的響應。目前,基于H.323的VoIP系統(tǒng)采用了很多開放端口用于呼叫建立和業(yè)務傳輸。在呼叫建立過程中,如果沒有做好認證工作,就為DoS攻擊提供了機會。
(2)服務竊。阂环矫媸歉`取合法用戶身份,假冒合法用戶身份,例如通過網(wǎng)絡竊聽方式竊取使用者IP電話的登錄密碼就可以獲得使用賬號的權利。另一方面是冒充合法的網(wǎng)絡節(jié)點進行相應的欺騙,例如通過冒充合法的關守,在終端沒有進行對關守進行認證的情況下,不法分子獲得用戶的登錄口令等個人信息。
。3)信令流的監(jiān)聽:由于H.323信令的開放性,任何人可以通過網(wǎng)絡監(jiān)聽的方式監(jiān)聽VoIP通信建立過程的信令流,從而惡意用戶可以進行對信令流的篡改并可造成會話劫持、中間人攻擊、電話跟蹤等后果。
(4)媒體流的監(jiān)聽:基于H.323的VoIP通信采用RTP/RTCP作為語音信息實時傳輸?shù)膮f(xié)議。由于協(xié)議具有開放性的特點,惡意用戶可以通過網(wǎng)絡監(jiān)聽器監(jiān)聽媒體流,如果可以理解媒體流內容即可破壞媒體流的機密性。
3.2VoIP安全要求
上述VoIP系統(tǒng)存在的安全問題,實際上就是由信息的保密性、完整性、真實性得不到保證和通信主體的認證不足而造成的。要做到VoIP通信的安全,就應該加強安全措施來保證信息的保密性、完整性、真實性和實現(xiàn)通信主體的認證以及通信事件的不可否認性。
如圖3所示,一次VoIP通信過程主要包括4個階段,即RAS信道、H.225.0(Q.931)信道、H.245信道和媒體RTP信道順序建立的過程。其中,前三個是信令信道,最后一個是媒體傳輸信道。H.323安全性不僅僅要求對RAS、H.225.0(Q.931)、H.245等呼叫建立過程中的信令進行保護,同時也要求對多媒體數(shù)據(jù)流本身進行保護,防止機密信息被竊取。
因此,要實現(xiàn)安全的H.323VoIP業(yè)務,首先要保證終端或MCU與關守之間安全傳遞RAS消息,以完成安全注冊,確保只有合法用戶可以使用H.323業(yè)務并進行相應的資源使用授權,如國際、長途業(yè)務授權等。
在保證RAS安全基礎上,建立起安全的呼叫連接信道(H.225.0(Q.931)信道)與呼叫控制(H.245)信道來保證信令流安全,然后在此基礎上,為采用RTP協(xié)議的實時媒體流通信進行加密算法與密鑰協(xié)商,完成媒體流通信機密性。
4、基于H.323的VoIP安全機制及解決方案
目前,基于H.323的VoIP網(wǎng)絡的安全實現(xiàn)主要有兩種安全機制。
。1)采用外部協(xié)議的安全機制,如通過網(wǎng)絡層/傳輸層安全通道(如IPSec、TLS等安全協(xié)議),實現(xiàn)H.323安全保護。
。2)通過對H.323協(xié)議簇中所涉及到的信令本身增加安全機制,實現(xiàn)各種信道安全能力協(xié)商與安全保護,即制定其自身的安全協(xié)議,如H.323協(xié)議的H.235安全協(xié)議。
這里重點介紹第二種機制。
H.323協(xié)議簇中有一成員H.235(又稱為H.Security)是負責身份驗證、數(shù)據(jù)完整性和媒體流加密。H.235建議為不提供可擔保業(yè)務質量的基于分組網(wǎng)絡的H.323系統(tǒng)引入了安全機制。H.235推薦了各種消息的流程、結構以及算法,來保證H.323系統(tǒng)中信令信道、媒體控制信道和媒體流的安全性。所采用的機制主要有:
。1)H.225呼叫信令信道的保密需要采用TLS或IPSec。
(2)H.245媒體控制信道的安全也需要保障,以便實現(xiàn)媒體流的安全性。對于H.323系統(tǒng),可以在H.225信令信道中傳遞各種安全相關的參數(shù)來實現(xiàn)H.245信道的安全。
。3)媒體流的最初密鑰材料的傳遞需要通過H.245的OpenLogicalChannel或是其響應消息。當處理了一定數(shù)量的包以后,需要更換會話密鑰,這時候使用H.245中的EncryptionUpdate
Command等消息。
。4)適應不同的安全性要求,支持多種密碼算法。為了實現(xiàn)終端之間的交互兼容操作,可以提供安全性、非安全性混合環(huán)境下的操作規(guī)則,并支持終端具有盡可能多的有效、專用的加密算法能力。
H.235協(xié)議提供了實現(xiàn)安全性的流程,它通過與H.323協(xié)議族中的其他協(xié)議交互來實現(xiàn)H.323體系的安全性,其具體實現(xiàn)如下。
4.1身份認證安全(H.225.0(RAS))
H.235協(xié)議中提供了兩類認證方式:基于對稱加密體系和基于非對稱加密體系的認證;趯ΨQ加密體系的認證方式中,常用的是利用用戶ID和密碼的唯一性,將用戶密碼作為信息加密的對稱密鑰,接收方通過用相同的密碼解密信息來實現(xiàn)對用戶的認證,也可以用散列函數(shù)對密碼進行單向散列運算形成對稱密鑰進行數(shù)字簽名,接收方通過對數(shù)字簽名的驗證來實現(xiàn)對用戶的認證。還有一種基于對稱加密體系的認證是利用DH(Diffie-Hellman)密鑰交換算法,通信雙方各自形成一對公/私密鑰,只需和對方交換公鑰,經(jīng)過計算形成一個相同的密鑰進行認證,在這種方式下,雙方不需要事先商定一個密碼,也避免了在通信中直接傳輸密鑰的風險;诜菍ΨQ加密體系的認證通過數(shù)字證書的公鑰/私鑰對來進行數(shù)字簽名和認證。這種方式需要證書管理的支持。
H.235中用戶認證的位置很靈活,可以在H.255.0呼叫建立過程中,也可以在H.245呼叫控制過程中實現(xiàn),還可以在IPSec中進行。此外,如果系統(tǒng)存在RAS信道,也需要在網(wǎng)關和終端之間進行單向或者雙向認證。
4.2呼叫連接安全(H.225.0(Q.931))
呼叫連接安全涉及到二個方面:一是在接收呼叫之前,要進行認證,以保證呼叫建立與連接信道安全(如H.225.0);二是通過對端點的認證來進行呼叫授權。
呼叫連接安全主要有以下兩種方法。
利用獨立的安全協(xié)議實現(xiàn)呼叫連接安全:在交換呼叫連接信令消息之前,可以通過在一個安全的眾所周知端口上使用TLS或IPSec,保證呼叫信令信道安全。
利用證書在不安全信道上實現(xiàn)安全認證和完整性檢查,并通過對安全能力與密鑰的協(xié)商機制進行擴展,可以確定后續(xù)信道的安全。
H.323網(wǎng)絡安全模式,在交換呼叫連接消息之前,即呼叫連接信道(H.225.0)與呼叫控制(H.245)信道在第一次消息交換內,就應確定安全的或不安全模式。安全模式是協(xié)商出雙方共同支持的算法與密鑰,以支持媒體流傳輸;非安全模式是以明文消息形式進行后面的媒體流傳輸。
4.3呼叫控制安全(H.245)
H.245呼叫控制信道本身可以通過TLS或IPSec進行加密。H.245包含了對各種信道加密的加密算法和密鑰,可以設置對媒體數(shù)據(jù)流加密的多種模式。在H.245信令過程中,在能力協(xié)商階段進行雙方的安全能力的協(xié)商(比如終端可以接收和發(fā)送H.261視頻編碼)。在主從決定的信令過程中生成媒體會話密鑰。密鑰分發(fā)是在打開邏輯通道的過程中實現(xiàn)的,這里可以使用DH密鑰交換機制,通過在OpenLogicalChannel/OpenLogical
Channel Ack的交互實現(xiàn)。
4.4媒體信道安全
媒體流使用H.245信道中給出的算法與密鑰來進行加密。只加密RTP數(shù)據(jù)報的負荷。媒體會話密鑰可以使用三種機制進行保護。如果H.245信道是安全的,會話密鑰不需要施加任何保護;如果H.245信道是不安全的,可以使用證書(證書也可以用在安全H.245信道上),利用證書內的公鑰加密媒體會話密鑰。媒體流的最初密鑰材料的傳遞需要通過H.245的OpenLogicalChannel或是其響應消息。當處理了一定數(shù)量的包以后,需要更換會話密鑰,這時候使用H.245中的EncryptionUpdate和Encryption
Update Request來完成密鑰的更新的。一旦更新了密鑰,RTP頭部的負荷類型將改變以指出使用新的密鑰。媒體流加密可以使用DES、Triple
DES、RC5等加密算法。
4.5密鑰管理安全
H.323安全的兩個基本要素是加密算法和密鑰管理。由于密碼系統(tǒng)的反復使用,僅靠加密算法已難以保證信息的安全了。事實上,加密信息的安全可靠主要依賴于密鑰系統(tǒng),密鑰是控制加密算法和解密算法的關鍵信息,它的產(chǎn)生、傳輸、存儲等工作是十分重要的。H.323密鑰管理主要包括RAS密鑰管理和呼叫連接密鑰管理。為了安全傳輸密鑰,可以使用IPSec/SSL建立一個安全RAS或呼叫信令信道,或在不安全的明文信道使用公鑰加密和證書實現(xiàn)。
5、結束語
近年來,VoIP技術憑借帶寬寬、開發(fā)升級快、價格低等優(yōu)勢,得到了迅猛發(fā)展。尤其基于H.323的VoIP,繼承了通信領域傳統(tǒng)的設計思想,并可以在傳統(tǒng)電信網(wǎng)絡向基于IP的電信網(wǎng)絡過渡的過程中,可以利用原有很多設備,避免資源浪費的優(yōu)勢,在我國得到廣泛應用。但同時,隨著VoIP的快速發(fā)展,VoIP系統(tǒng)所存在的安全問題也越來越受大家的關注。H.235協(xié)議為H.323協(xié)議提供了比較全面的安全體系結構,為H.323的身份驗證和加密提供了多種方法。H.323VoIP所面臨的一些安全問題,實際是IP網(wǎng)絡上存在的若干安全問題的延續(xù)。只要很好地解決了IP網(wǎng)絡的安全問題,同時配合H.323自身的一些安全機制,基于H.323的VoIP網(wǎng)絡的安全問題才可以最終解決。
中國聯(lián)通網(wǎng)站
五大提供托管VoIP服務的理由 2007-12-11 |
SkypePhone永不會登陸中國 飛信是voip電話主力 2007-12-10 |
VoIP網(wǎng)絡電話改變了傳統(tǒng)語音通信 2007-12-06 |
微軟入侵通信市場 VoIP為尖兵 2007-12-06 |
星網(wǎng)銳捷VoIP厚積薄發(fā) 2007-12-06 |