首頁>>>技術(shù)>>>VoIP

研究:基于分層方法的VoIP安全問題

2007/12/26

  通信服務(wù)與IP網(wǎng)絡(luò)特別是Internet的結(jié)合,是一個(gè)伴隨著e-Mail、即時(shí)消息的產(chǎn)生而不斷發(fā)展的自然過程。VoIP——在包轉(zhuǎn)換的IP網(wǎng)絡(luò)上傳輸語音——是電信領(lǐng)域呈現(xiàn)的一個(gè)最重要的發(fā)展趨勢。VoIP網(wǎng)絡(luò)發(fā)展迅猛有兩個(gè)重要因素:從傳統(tǒng)的電話到VoIP網(wǎng)絡(luò)的轉(zhuǎn)變帶來成本的降低,而且允許將新的服務(wù)和應(yīng)用(視頻傳輸、會議,等等)加入到標(biāo)準(zhǔn)的電話服務(wù)中去。

  即使是為了達(dá)到同一個(gè)目的,VoIP與傳統(tǒng)的電話相比擁有完全不同的體系結(jié)構(gòu)。在VoIP網(wǎng)絡(luò)中語音和信號是混合的并且和正常的數(shù)據(jù)一樣在局域網(wǎng)、廣域網(wǎng)或者互聯(lián)網(wǎng)上傳播,而在傳統(tǒng)的電話網(wǎng)中每一個(gè)會話維持一個(gè)私有的、物理的電路,并且獨(dú)占信道。VoIP語音是一種普通的IP數(shù)據(jù),但就服務(wù)的質(zhì)量和實(shí)用性來說它與傳統(tǒng)電話是沒有區(qū)別的。

  隨著技術(shù)的不斷發(fā)展,VoIP面臨著許多新的安全風(fēng)險(xiǎn)而且遭受攻擊的機(jī)率也大大增加。由于網(wǎng)絡(luò)和電話的特點(diǎn),VoIP將遭受到來自全方位的安全問題。傳統(tǒng)電話的安全問題包括信令攻擊、盜用電話線路,相應(yīng)于VoIP網(wǎng)絡(luò)則是對特定協(xié)議進(jìn)行攻擊。他們的主要目的只有一個(gè):欺騙。從物理層到應(yīng)用層,都與VoIP的安全問題相關(guān)。在安全性和可靠性不高的互聯(lián)網(wǎng)上傳輸語音數(shù)據(jù)更是增加了遭受攻擊的可能性,并且會導(dǎo)致更多的攻擊行為。

  Voice over IP特性

  當(dāng)研究VoIP安全的時(shí)候,許多人往往把它和一般的網(wǎng)絡(luò)應(yīng)用等同起來處理,這種普遍的現(xiàn)象實(shí)際上是非常錯(cuò)誤的。他們并沒有認(rèn)識到VoIP與其他網(wǎng)絡(luò)應(yīng)用的本質(zhì)區(qū)別——VoIP的時(shí)間敏感性。

  VoIP對技術(shù)的要求非?量。它不僅對時(shí)延特性要求敏感而且要求具有一個(gè)能夠充分保證服務(wù)質(zhì)量的有效機(jī)制。當(dāng)時(shí)延超過150ms或者丟包率超過3%時(shí),通話質(zhì)量就會大大受到影響。此外,再加上擁塞等一些不可預(yù)見性的因素,因此我們可以推斷出VoIP最大的脆弱性就在于:對干擾具有高度的敏感性。

  廣為人知的拒絕服務(wù)攻擊(DoS)就是一種干擾類型攻擊。針對VoIP的攻擊(例如大量發(fā)送經(jīng)過特殊構(gòu)造的數(shù)據(jù)包)將使VoIP設(shè)備產(chǎn)生拒絕服務(wù)。當(dāng)SIP電話終端處理大流量的數(shù)據(jù)時(shí)可能會造成系統(tǒng)的停止響應(yīng)或崩潰。

  Voice over IP體系結(jié)構(gòu)

  VoIP技術(shù)使用和標(biāo)準(zhǔn)電話通信相似的兩種類型的協(xié)議,即信令協(xié)議和媒體傳輸協(xié)議。目前,在全球范圍內(nèi)廣泛使用的VoIP結(jié)構(gòu)有兩種,它們分別是H.323結(jié)構(gòu)和SIP結(jié)構(gòu)。

  H.323是國際電信同盟(ITU)為在基于數(shù)據(jù)包的網(wǎng)絡(luò)上傳輸音頻和視頻而制定的一種標(biāo)準(zhǔn)。H.323實(shí)際上是一種封裝標(biāo)準(zhǔn),它對H.225,H.245等標(biāo)準(zhǔn)進(jìn)行了封裝,每種協(xié)議都在呼叫建立的過程中扮演特定的角色。H.323使用RTP協(xié)議作為標(biāo)準(zhǔn)的媒體傳輸協(xié)議。H.323定義了四種邏輯組成部分:終端、網(wǎng)關(guān)、關(guān)守(gatekeeper)和多點(diǎn)控制單元(MCU)。

  SIP是Internet工程工作小組(IETF)為發(fā)起雙向的通信會話而建立的協(xié)議。它是一種應(yīng)用層控制協(xié)議,用于和一個(gè)或多個(gè)參與者創(chuàng)建、修改和終止會話。SIP是基于文本的,并且結(jié)構(gòu)與HTTP相似?蛻魴C(jī)發(fā)出請求,并發(fā)送給服務(wù)器,服務(wù)器處理這些請求后給客戶機(jī)發(fā)送一個(gè)響應(yīng)。該請求與響應(yīng)形成一次事務(wù)。SIP可以運(yùn)行于TCP、UDP或者SCTP之上。

  SIP網(wǎng)絡(luò)的結(jié)構(gòu)(參見圖1)與H.323的結(jié)構(gòu)不同。SIP網(wǎng)絡(luò)由端點(diǎn)、代理或者重定向服務(wù)器、定位服務(wù)器和注冊機(jī)組成。注冊機(jī)和定位服務(wù)器也可以同時(shí)運(yùn)行于代理服務(wù)器。

  本文對VoIP安全威脅進(jìn)行討論的方法為分層的方法,采用分層的方法是基于以下兩點(diǎn)原因的考慮:首先,因?yàn)閷τ赥CP/IP協(xié)議棧和VoIP SIP協(xié)議體系結(jié)構(gòu)來說有些層可以看成是相似的。SIP會話初始階段和TCP的三次握手就具有很強(qiáng)的相似性,這在許多專業(yè)的文獻(xiàn)中經(jīng)常被引用例如文獻(xiàn)[7]。其次,采用基于源的分層方法可以迅速地找到安全威脅的解決方案,將攻擊限制在特定的層結(jié)構(gòu)中以便將初始解決方案的搜索空間縮小到該層,因此尋找問題的答案更加容易。通常來說,起源于某一層的問題可以在該層內(nèi)找到解決的方案。下面的內(nèi)容將集中討論兩個(gè)VoIP層:信令協(xié)議層和傳輸協(xié)議層。


(點(diǎn)擊看大圖)


  信令協(xié)議層

  該層是最重要并且是VoIP攻擊最多的層。許多源于這一層的攻擊可以利用最少的攻擊達(dá)到最大的攻擊效果。其中,最重要、最有效的攻擊如下。

  基于SIP的拒絕服務(wù)攻擊

  拒絕服務(wù)(DoS)是一種使得計(jì)算機(jī)系統(tǒng)或網(wǎng)絡(luò)無法向用戶提供服務(wù)的攻擊行為,一般通過消耗目標(biāo)網(wǎng)絡(luò)的帶寬或目標(biāo)系統(tǒng)的計(jì)算資源從而使網(wǎng)絡(luò)鏈接或服務(wù)失效。DoS攻擊可以通過很多方式進(jìn)行實(shí)施,下面列舉了三種基本的攻擊形式:

  a.消耗計(jì)算資源,例如:帶寬、磁盤空間、或者CPU。

  b.破壞配置信息,例如:路由信息。

  c.破壞物理網(wǎng)絡(luò)部件。

  1)SIP炸彈

  這種攻擊向目標(biāo)VoIP系統(tǒng)發(fā)送大量偽造的SIP信息,而IP電話對有效性問題非常敏感。對大量偽造的SIP信息進(jìn)行譯碼和解釋將需要分配大量的計(jì)算資源。因?yàn)榇蟛糠值南到y(tǒng)資源都用于處理偽造的信息,正常數(shù)據(jù)的處理速度將會非常低并且整個(gè)VoIP通話的性能將會遭到巨大的衰減。

  2)SIP-Cancel/Bye 拒絕服務(wù)攻擊

  這兩種攻擊在某些情況下非常相似:攻擊者一旦檢測到目標(biāo)主機(jī)與另外一個(gè)主機(jī)建立了SIP/VoIP會話就向目標(biāo)用戶發(fā)送一個(gè)偽造的SIP信息。圖2解釋了這種類型的拒絕服務(wù)攻擊。


(點(diǎn)擊看大圖)


  有效的SIP-CANCLE攻擊應(yīng)該在INVITE發(fā)送之后并且在接收最后一個(gè)ACK之前發(fā)送。這對攻擊者的要求非常高?紤]到SIP-CANCLE拒絕服務(wù)攻擊的時(shí)間窗口非常小,我們可以推斷這種攻擊只有在目標(biāo)主機(jī)的本地網(wǎng)絡(luò)才會成功。在這種情況下,攻擊者一旦檢測到目標(biāo)主機(jī)接收到INVITE請求就向其發(fā)送CANCEL報(bào)文。攻擊者如何檢測該事件則超出本文討論范圍。

  與SIP-CANCEL相反,SIP-BYE可以在VoIP會話開始后的任何時(shí)間發(fā)送。因此,有效的攻擊時(shí)間窗口就是整個(gè)會話時(shí)間。

  但是在現(xiàn)實(shí)中這兩種攻擊方法很難實(shí)現(xiàn),主要原因有以下兩點(diǎn):

  a.攻擊時(shí)機(jī)監(jiān)測:這兩種攻擊都是基于目標(biāo)的特定行為的,因此成功的攻擊必須與目標(biāo)的行為同步。

  b.報(bào)頭復(fù)制:成功的攻擊必須能夠?qū)IP會話的原始報(bào)頭復(fù)制到CANCEL/BYE報(bào)文中以使其成為合法的報(bào)文。

  基于SIP攻擊的解決方案

  以上描述的所有攻擊都依賴于篡改和構(gòu)造欺騙性的SIP信息。如果沒有數(shù)字簽名或加密措施的保護(hù)的話,標(biāo)準(zhǔn)的SIP信息就會很容易偽造。

  為了避免遭受這種攻擊,有效的解決方案是防止SIP的內(nèi)容被篡改,攔截,并且采用高度的加密和認(rèn)證機(jī)制。以下兩種解決方案為比較常用的方法:

  1)使用TLS

  在SIP的RFC中為了保護(hù)SIP信息采用將TLS(傳輸層安全)加入到代理服務(wù)器,重定向服務(wù)器和注冊機(jī)中的方法。TLS能夠保證SIP信息的完整性、私密性,它能夠?yàn)橥暾拿荑管理提供相互認(rèn)證和安全的密鑰分發(fā)機(jī)制。在SIP中使用TLS的要求是要有一個(gè)可靠的傳輸協(xié)議(基于TCP的SIP信令協(xié)議)。TLS不可以應(yīng)用于基于UDP的SIP信令協(xié)議。

  2)使用IPsec

  IPsec可以用于在網(wǎng)絡(luò)層為SIP報(bào)文提供加密服務(wù)。對于在SIP VPN下的SIP主機(jī)(SIP用戶代理),這種方法尤為適合。IPsec對所有基于UDP、TCP、和SCTP的SIP信令協(xié)議都起作用。IPsec可以用于為數(shù)據(jù)提供認(rèn)證,完整性和私密性并且支持端到端特性。在SIP的RFC中并沒有指定密碼管理機(jī)制,一種普遍接受的密鑰管理機(jī)制是Internet密鑰交換(IKE)。IKE協(xié)議能夠?yàn)镮Psec提供自動的密鑰交換和管理機(jī)制。

  傳輸協(xié)議層

  在SIP VoIP網(wǎng)絡(luò)中,基于傳輸層的威脅包括利用RTP/RTCP協(xié)議的弱點(diǎn)進(jìn)行的攻擊。它們依賴于沒有加密的RTP數(shù)據(jù)流。

  竊聽

  最簡單最易于實(shí)現(xiàn)的就是竊聽攻擊。竊聽是一種中途截獲并且讀取信息或通話而不被接收人察覺的行為。在VoIP中,竊聽使得攻擊者具有監(jiān)聽和記錄私密電話內(nèi)容的能力。人們通常會在電話中透露銀行卡賬號等重要信息,因此竊聽可以產(chǎn)生非常重要和意想不到的結(jié)果。在商業(yè)領(lǐng)域,竊聽也可以獲取重要的商業(yè)情報(bào)。

  RTP使用標(biāo)準(zhǔn)的編碼方式對音頻進(jìn)行編碼,他的主要弱點(diǎn)在于使用過的編碼信息可以在每個(gè)RTP包的頭部找到。攻擊者截取VoIP媒體流之后對其進(jìn)行保存然后對RTP流進(jìn)行解碼便可以進(jìn)行竊聽。

  RTP插入攻擊

  這一類傳輸層攻擊的特征是攻擊者將帶有欺騙性的RTP包插入RTP流中。根據(jù)插入RTP包的形式不同,得到的結(jié)果也不相同。

  1)SSRC沖突攻擊

  一旦接收到兩個(gè)來自不同發(fā)送者的數(shù)據(jù)包但是卻具有相同的SSRC,RTP就會進(jìn)入沖突狀態(tài)。RTP的沖突處理機(jī)制很簡單:如果一個(gè)源發(fā)現(xiàn)另外一個(gè)源使用與他相同的SSRC,就必須發(fā)送RTCP BYE包然后再隨機(jī)選擇一個(gè)新的;如果接受者發(fā)現(xiàn)有兩個(gè)源發(fā)生碰撞,則它會保持其中一個(gè)的包而丟棄來自于另一個(gè)的包;兩個(gè)源會解決碰撞問題因此碰撞不會持續(xù)。

  以下兩種DoS攻擊可以用來幫助理解RTP如何處理沖突:

  a.當(dāng)攻擊者竊取其中一個(gè)對等點(diǎn)的SSRC后,將自己的RTP報(bào)文發(fā)送給另外一個(gè)對等點(diǎn)。接收者一旦接收到相同的SSRC,就選擇接收從單一源發(fā)送來的數(shù)據(jù)包。因此,攻擊者就可以有效地剔除一個(gè)VoIP用戶。

  b.攻擊者向目標(biāo)主機(jī)發(fā)送帶有目標(biāo)自身的SSRC的RTP報(bào)文。目標(biāo)主機(jī)則被迫放棄當(dāng)前的RTP流而選擇一個(gè)新的,然后沖突釋放了SSRC。這使得所有目標(biāo)主機(jī)參與的會話都會產(chǎn)生中斷。

  2)其他的SSRC操縱

  SSRC操縱可以以更加復(fù)雜和創(chuàng)新的方式來實(shí)現(xiàn)。如果攻擊者知道其中一個(gè)對等點(diǎn)的SSRC,他就能夠用相同的SSRC和IP特性偽造報(bào)文,但是擁有比合法報(bào)文更高的時(shí)間戳和RTP序號值。在接收端RTP應(yīng)用將會首先處理攻擊者的數(shù)據(jù)包而丟棄合法的數(shù)據(jù)包,因?yàn)樗麄兊臅r(shí)間戳不合法并且更晚。這種攻擊使得虛假的內(nèi)容在真實(shí)的音頻內(nèi)容之前播放,這種攻擊也可以看作為一種拒絕服務(wù)攻擊。

基于RTP攻擊的解決方案

  與一些基于SIP的攻擊的情況相同,大部分基于RTP的攻擊都依賴于偽造的欺騙性RTP包并將他們插入RTP中。要是沒有保護(hù)措施,可以認(rèn)為RTP是一種不安全的協(xié)議。如果攻擊者能夠截取到RTP包,那么偽造惡意的數(shù)據(jù)包并在合適的時(shí)候?qū)⑺麄儼l(fā)送出去只是微不足道的事。即使攻擊者無法獲取RTP流,只要攻擊者擁有對等點(diǎn)的一些信息,偽造欺騙性的RTP報(bào)文并且發(fā)動攻擊也并不是一件困難的事。

  與SIP的情況相同,保護(hù)RTP流免受攻擊的解決方案就是引入加密機(jī)制和類似安全哈希的數(shù)字簽名。

  結(jié)束語

  目前VoIP安全的發(fā)展還處于初始階段,安全威脅和攻擊還有待于建立起一系列理論。但是在實(shí)踐中卻很難執(zhí)行,主要是因?yàn)橄嚓P(guān)基礎(chǔ)知識和攻擊檢測機(jī)會的缺乏。但是,隨著VoIP網(wǎng)絡(luò)數(shù)量的不斷壯大,攻擊者必將對這一新興的技術(shù)產(chǎn)生興趣。選擇分層的方法進(jìn)行分析強(qiáng)調(diào)了消除威脅的解決方案,而且當(dāng)新的攻擊模型出現(xiàn)時(shí)能夠更有效地對其進(jìn)行定義。

計(jì)算機(jī)與信息技術(shù)



相關(guān)鏈接:
Jangl和Pluggd可讓Gmail成殺手級應(yīng)用 2007-12-26
IP PBX電話系統(tǒng):對你的業(yè)務(wù)有極大的好處 2007-12-26
互聯(lián)網(wǎng)周刊:通信進(jìn)化 2007-12-25
IP通信將是中小企業(yè)壯大拐點(diǎn) 2007-12-24
8大VoIP網(wǎng)絡(luò)電話插件 2007-12-24

分類信息: