• <strike id="fdgpu"><input id="fdgpu"></input></strike>
    <label id="fdgpu"></label>
    <s id="fdgpu"><code id="fdgpu"></code></s>

  • <label id="fdgpu"></label>
  • <span id="fdgpu"><u id="fdgpu"></u></span>

    <s id="fdgpu"><sub id="fdgpu"></sub></s>
    您當前的位置是:  首頁(yè) > 新聞 > 國內 >
     首頁(yè) > 新聞 > 國內 >

    SIP系列講座-SIP安全-3-RTP加密-攻擊類(lèi)型-防范方法-攻擊工具

    2017-11-09 13:55:10   作者:james.zhu   來(lái)源:CTI論壇   評論:0  點(diǎn)擊:


      前面的講座中,他們介紹了SIP安全的幾個(gè)核心概念,包括,認證,簽權,SIP加密,TLS等。現在我們繼續討論關(guān)于對語(yǔ)音的加密,DTLS,目前出現的幾個(gè)安全問(wèn)題,如何防范這些安全問(wèn)題和如何使用工具來(lái)檢測這些問(wèn)題。
    1
      在我們的講座中,我們前面討論了對SIP信令的加密,但是僅對SIP加密仍然不會(huì )實(shí)現真正的加密,系統必須對語(yǔ)音也進(jìn)行加密。對語(yǔ)音加密的則稱(chēng)之為SRTP。
      SRTP的主要作用當然是確保語(yǔ)音流和RTP Payload的加密安全,同時(shí)防范第三方軟件對語(yǔ)音的注入,確保本身語(yǔ)音的完整性。SRTP不使用PKI的方式來(lái)交換密鑰,它使用的是Master key的方式。如果直接通過(guò)明文的SDP發(fā)送key是不安全的,所以必須使用加密的方式來(lái)傳輸。如果發(fā)起INVITE之前沒(méi)有開(kāi)啟TLS的話(huà),SDP消息中的k就會(huì )被暴露出來(lái),這也是非常不安全的。
      如何傳輸以安全的方式傳輸SDP中的k是一個(gè)非常復雜的流程。以下是一個(gè)傳輸SDP k的流程圖。這里需要注意到是,在傳輸過(guò)程中,用戶(hù)需要設置SRTCP來(lái)保證第三方侵入,防止對呼叫方強制發(fā)送BYE消息,掛斷呼叫。
      cipher 加密默認使用的是AES,它是一種高級的加密方式。RFC3711 標準對此加密方式的類(lèi)型和算法有非常詳細地說(shuō)明,AES本身就非常復雜,筆者對此不是太了解,如果讀者希望獲得更多算法的話(huà),筆者建議讀者查閱RFC 3711。我們現在介紹的SDP中的k屬性,它相對比較簡(jiǎn)單,所有的k的消息都在交互中進(jìn)行。另外一種方式就是使用SDP中的Crypto,它也是一種交互機制,但是支持了很多參數,而且比較靈活。它主要描述了前一個(gè)單播媒體中的cryptographic suite,key 參數和會(huì )話(huà)參數。注意,Crypto必須出現在SDP的媒體中,不會(huì )出現在信令中。基本的語(yǔ)法格式為:
      a=crypto: []
      在以上的舉例中,SDP包含了3個(gè)m 媒體流,但是其中的兩個(gè)媒體流則使用了RTP/SAVP傳輸,每個(gè)媒體流都有自己的crypto。
      關(guān)于crypto具體的解釋如下:
      tag 1 定義crypto的suite。一般默認是1。
      AES_CM_128_HMAC_SHA1_80 則表示是SRTP使用的cipher。
      HMAC_SHA1_80是一個(gè)80bit的認證tag消息。
      Master key的長(cháng)度是128 bit(前面已經(jīng)定義為AES_CM_128),默認的最大生命周期是2^20。
      inLine 是一種Key的方式。這里已經(jīng)明確,inLine 后面的一串字符(PSXXXVBR)。注意,這里也可能是一個(gè)URL。
      1:32這里不是1 是Master Key ID,32 Bytes長(cháng)。也可以支持更多更多的Master key,這些key未來(lái)可能會(huì )更新。
      我們的示例中使用的是默認的設置。關(guān)于crypto suite在RFC4586中有非常詳細地定義,我們這里不再更多討論。
      以下是一個(gè)終端設置的舉例,用戶(hù)必須啟動(dòng)相應的安全設置和參數。注意,不同的終端可能支持的參數有所不同,用戶(hù)要注意檢查。
      在SDP中的消息舉例,這里通常出現的兩個(gè)crpto中,用戶(hù)會(huì )首先選擇第一個(gè)crpto。另外,一定要注意,因為加密是雙方的安全機制,需要雙方檢查,同時(shí)需要IPPBX本身要配置相應的設置,否則可能導致呼叫失敗。
    2
      盡管SIP加密方式已經(jīng)對SIP信令點(diǎn)安全設置了很多復雜的算法,但是仍然缺乏對呼叫方的身份(Caller Identity)認證經(jīng)過(guò)多次轉發(fā)到身份保護機制。如果初始的SIP請求發(fā)起方經(jīng)過(guò)多個(gè)路徑,當初SIP消息的發(fā)起者的身份在到達最終目的地之前可能因為安全的問(wèn)題發(fā)生修改。RFC4474 對類(lèi)似呼叫方身份做了安全的保護。RFC 4474 在頭域中定義了兩個(gè)參數值:Identity和Identity-Info來(lái)確保發(fā)起請求者的安全。Identity負責傳輸用戶(hù)有效性的簽名消息,Identity-Info負責對證書(shū)簽名者傳輸一個(gè)證明信息。
      以下圖例解釋了如何通過(guò)SIP頭域中的Indentity和Indentify-Info 發(fā)送到呼叫請求中的身份消息。
      整個(gè)身份驗證的流程經(jīng)過(guò)以下幾個(gè)步驟:
      終端發(fā)起INVITE消息,Proxy收到消息以后和自簽的證書(shū)服務(wù)器進(jìn)行交互。
      本地Proxy通過(guò)證書(shū)服務(wù)器,使用hash和from header生成本用戶(hù)的Indentity。
      簽名服務(wù)器返回證書(shū)消息,Proxy在SIP消息中添加證書(shū)的Indentity和Indentity-Info(證書(shū)發(fā)放簽名)。然后對對端Proxy發(fā)起一個(gè)INVITE消息。
      對端Proxy收到INVITE消息以后,通過(guò)web server 獲取證書(shū)信息,然后提取SIP消息中的Indentity和Indentity-Info,結合hash來(lái)計算用戶(hù)安全身份。
      如果驗證成功,則對另外一個(gè)終端發(fā)起INVITE消息。整個(gè)驗證過(guò)程結束。
      注意,RFC 4474 僅發(fā)布了SIP請求中的安全機制,并沒(méi)有規定如果發(fā)生錯誤時(shí)的響應處理機制。響應處理是一個(gè)更加復雜的處理流程,希望未來(lái)有更多RFC規定來(lái)進(jìn)一步的優(yōu)化。
      通過(guò)以上身份的驗證,整個(gè)INVITE信息的安全處理結束,接下來(lái)啟動(dòng)語(yǔ)音的安全認證流程。這里使用了DTLS(Datagram Transport Layer Security)來(lái)驗證Indentity和語(yǔ)音的加密處理。以前我們介紹過(guò),TLS不能支持UDP的傳輸,但是實(shí)際工作場(chǎng)景中,仍然有很多應用使用UDP。所以,為了滿(mǎn)足UDP的安全處理機制,通過(guò)對TLS拓展實(shí)現DTLS的安全機制。DTLS可以適用于時(shí)延比較敏感的應用場(chǎng)景和VPN(隧道)等場(chǎng)景。在以下場(chǎng)景中,INVITE完成以后,用戶(hù)通過(guò)DTLS實(shí)現對雙方Indentity加密認證,也包括來(lái)對語(yǔ)音進(jìn)行加密。
      當然,以上場(chǎng)景僅是一個(gè)非常簡(jiǎn)單的雙方呼叫的場(chǎng)景,事實(shí)上,在DTLS加密的環(huán)境中,很多應用層面的功能需要考慮,例如,匿名呼叫的防范,早期媒體流的處理,分拆SIP請求,多個(gè)媒體處理的握手認證流程。如果Proxy在處理這些功能處理時(shí)不能正確處理DTLS握手的流程,也同樣會(huì )導致很多呼叫問(wèn)題。關(guān)于DTLS的規定,用戶(hù)可以參考RFC5763進(jìn)行進(jìn)一步的研究,我們這里比做更多討論。
    3
      上面我們提到了關(guān)于對發(fā)起呼叫方的安全控制機制,但是,目前仍然沒(méi)有看到非常完整的關(guān)于呼叫方安全保障的完整的解決方案,除了RFC 4474以外,以下規定也對caller的身份做了相關(guān)的規定:
    • RFC 4474bis-00是RFC 4474的升級,除了header中的identiy以外使用,不僅僅在from header中使用SIP URL,在from header中還增加了Tel的號碼支持。
    • STIR(Secure Telephone Identity)是目前專(zhuān)門(mén)針對VoIP-to-PSTN規定的標準,主要目的對發(fā)起呼叫者的號碼進(jìn)行保護和確認。因為,在實(shí)際電話(huà)應用的場(chǎng)景中,大部分的用戶(hù)仍然相信普通電話(huà)號碼的呼叫,但是因為網(wǎng)絡(luò )的介入,PSTN號碼可能最終被其他非法業(yè)務(wù)利用來(lái)進(jìn)行非法呼叫。此標準專(zhuān)門(mén)針對非法呼叫,語(yǔ)音語(yǔ)音郵箱攻擊等業(yè)務(wù)設計了不同的機制。具體規定請讀者查閱STIR證書(shū)草案。
    • P-Asserted-Identity:服務(wù)提供商對號碼服務(wù)提供的認證用戶(hù)保護。其中,在SIP INVITE的呼叫中包括了caller id消息,Proxy 通過(guò)在SIP頭中添加P-Asserted-Identity對呼出的網(wǎng)絡(luò )聲明其真實(shí)性。
    • PSTN網(wǎng)絡(luò )中的ISUP通過(guò)S/MIME 支持了SIP的SDP加密,需要說(shuō)明的是,SIP header 不會(huì )被加密,仍然需要通過(guò)TLS處理。此圖例中,SIP經(jīng)過(guò)兩個(gè)Gateway 傳輸,最后到達另外一邊的終端。通過(guò)MIME來(lái)傳輸ISUP消息。
    • IPPBX SIP trunk 和服務(wù)提供商之間的安全策略限制或防范設備。在上面的安全策略中,我們所探討的都是基于本地認證機制來(lái)實(shí)現的。這些解決方案相對比較復雜。如果用戶(hù)部署了企業(yè)IPPBX的話(huà),企業(yè)IPPBX通過(guò)SIP 中繼實(shí)現外部呼叫連接的話(huà),可以通過(guò)以下方式實(shí)現:
      通過(guò)SIP中級加密的方式的話(huà),企業(yè)用戶(hù)的SIP中繼必須需要安全處理,例如,使用MD5或者TLS加密的方式。如果按照這樣的方式來(lái)對接運營(yíng)商trunk,本地PBX需要支持支持運營(yíng)商提供的認證方式,運營(yíng)商也可以調整認證方式接受本地PBX生成的證書(shū),本地IPPBX必須有有效的證書(shū)。
      使用對SIP支持比較好的防火墻來(lái)對SIP進(jìn)行安全處理。事實(shí)上,類(lèi)似的方法也可能遇到很多問(wèn)題。
      使用IP-Sec 設備或者SBC來(lái)連接,通過(guò)IP-Sec設備來(lái)對所有語(yǔ)音設備進(jìn)行加密處理。這里要注意,因為IP-Sec設備會(huì )處理全部的信令和媒體,增加了很多網(wǎng)絡(luò )開(kāi)銷(xiāo),帶寬要求也會(huì )隨之增加。從目前市場(chǎng)情況來(lái)看,如果針對VOIP 語(yǔ)音應用來(lái)說(shuō),可能SBC是最佳的解決方案。在后期的討論中,我們會(huì )重點(diǎn)介紹SBC的作用,讀者可以了解更多比較全面的關(guān)于SBC的解決方案。
    4
      在前面的章節和本章節的前幾個(gè)部分我們重點(diǎn)從技術(shù)的角度討論了關(guān)于SIP中安全機制的設置和一些技術(shù)概念。在以下的圖例中,VOIP用戶(hù)仍然面對很多的安全問(wèn)題,包括上面提到的那些問(wèn)題,這些安全問(wèn)題涉及了整個(gè)網(wǎng)絡(luò )的方方面面,同時(shí)也涉及了公司安全策略和各種規章制度。
      研究人員Dimitris Geneiatakis發(fā)表的關(guān)于幾種SIP安全的匯總:
      如果我們回到具體到現實(shí)環(huán)境中,SIP安全的問(wèn)題主要包括以下幾個(gè)方面:
      通常情況下,VOIP電話(huà)系統都會(huì )受到至少五種以上的攻擊或侵入。因為篇幅的關(guān)系,我們這里不展開(kāi)討論所有的攻擊方式和細節。關(guān)于以上攻擊方式的介紹,請讀者查閱SANS Institute Reading Room 發(fā)表的文章,作者重點(diǎn)介紹了各種攻擊方式的概念和基本原理。哥倫比亞大學(xué)的SIP研究機構也發(fā)布過(guò)關(guān)于SIP安全的介紹,用戶(hù)可以查閱。如果讀者對安全方面的加密算法有非常濃厚的興趣,可以查閱Amruta Ambre發(fā)表的關(guān)于算法加密討論的文章。
      以下是一個(gè)示例通過(guò)修改SIP信息,把真正的呼叫轉入到侵入者自己的終端,用戶(hù)必須使用TLS/PKI/SRTP對信令和語(yǔ)音加密。
      更多關(guān)于使用工具侵入或偽裝的操作方式,請參閱筆者提供的參考資料。
      另外一個(gè)案例是一個(gè)所謂通過(guò)釣魚(yú)的方式獲取用戶(hù)信息。很多時(shí)候,釣魚(yú)者會(huì )給用戶(hù)發(fā)送郵件或者短信通知用戶(hù)呼叫一個(gè)電話(huà)號碼(例如:07558101000),說(shuō)銀行有什么業(yè)務(wù)需要客戶(hù)馬上聯(lián)系銀行。如果用戶(hù)呼叫上面的號碼的話(huà),這時(shí)這個(gè)號碼會(huì )呼叫網(wǎng)關(guān)的號碼,然后通過(guò)VOIP網(wǎng)關(guān)修改路由,最后轉呼到銀行的電話(huà)號碼上(真正的銀行號碼:07558100000)。如果用戶(hù)不小心的話(huà),可能聽(tīng)到銀行的呼叫就會(huì )按照銀行系統的要求輸入用戶(hù)密碼信息(323345),這時(shí),釣魚(yú)者可以通過(guò)SIP線(xiàn)路上的DTMF按鍵音獲取到用戶(hù)的真正的密碼消息。當然,這樣的后果用戶(hù)是知道的。
      另外,非法的盜打情況也可能經(jīng)常發(fā)生,因為很多國際長(cháng)途的花費是非常高昂的,犯罪分子利用國際話(huà)費結算的差價(jià)獲利。中國國內經(jīng)常會(huì )看到電話(huà)騷擾,電話(huà)盜打,電話(huà)欺騙的新聞。國外也有類(lèi)似的問(wèn)題發(fā)生。根據FBI的官方報道,2001 年第一個(gè)被逮捕的犯罪分子,通過(guò)攻擊VOIP電話(huà)系統,轉售獲得利潤的個(gè)人。
      FBI抓捕捕到盜打電話(huà)的罪犯。
    5
      國家安全監管機構,VOIP行業(yè),廠(chǎng)家,用戶(hù)等都有非常明確的安全機制來(lái)防范安全問(wèn)題,但是可能仍然會(huì )出現安全問(wèn)題。我們今天介紹幾個(gè)防范措施來(lái)最大限度保證用戶(hù)的VOIP網(wǎng)絡(luò )安全。目前,有效地防范VOIP網(wǎng)絡(luò )攻擊的手段很多需要公司系統管理員處不同角度來(lái)進(jìn)行排查,其中也包括了對公司員工的安全教育,公司規定的安全規則,技術(shù)手段,安全設備部署等。
      關(guān)于技術(shù)方面的討論我們前面的章節部分和以前的講座中已經(jīng)做了很多分享,現在,我們再補充一點(diǎn)來(lái)自于政府權威機構和研究機構的一些安全建議。
      美國國家安全監管機構FBI 建議,FBI的建議中,包括了從地理位置的安全處理,設備的安全處理,人員安全培訓,管理員的安全培訓,采購商的安全處理等方面的內容。以下圖例解釋了多種網(wǎng)絡(luò )設備在安全方面的設置和相關(guān)的公司規章制度的設立,值得讀者去參考。
      美國負責計算機安全的機構NIST也給出了幾個(gè)方面的建議:
    • 網(wǎng)絡(luò )數據和語(yǔ)音分離,私有網(wǎng)絡(luò )和公網(wǎng)的分離。
    • 使用支持ALG的防火墻或者SBC來(lái)提升安全性能。
    • 使用比較嚴格的安全認證機制來(lái)防范被破解。
    • 使用TLS加密方式。
    • 進(jìn)來(lái)少用個(gè)人電腦軟電話(huà)或者來(lái)自未經(jīng)授權的第三方基于SIP的軟電話(huà)。
    6
      因為VOIP網(wǎng)絡(luò )中很可能出現很多網(wǎng)絡(luò )安全的問(wèn)題,公司層面雖然制定了很多安全策略,管理人員也部署了針對安全機制的設備,但是仍然需要一些非常有經(jīng)驗的系統管理員來(lái)進(jìn)行維護檢測。技術(shù)人員必須了解一些安全工具,以免讓攻擊者侵入。俗話(huà)說(shuō),知己知彼才能百戰百勝。現在,我們羅列幾個(gè)已經(jīng)在VOIP方面使用多年的工具,以便幫助管理員進(jìn)一步防范攻擊者的攻擊。
      以下列表列出了VOIP工程師可能經(jīng)常使用的排查根據和平臺,大家可以學(xué)習:
      1、使用Wireshark 工具抓包解析數據:
      2、Nmap 掃描網(wǎng)絡(luò )
      3、SIPScan: 掃描端口,IP地址。
      4、Authtool 獲取認證的工具,密碼破解。
      5、進(jìn)行洪水工具的工具:
      6、Linux 工具: inviteflood,registerflood
      7、SIP 信令篡改工具:erase_registrations(刪除注冊),add_registrations(添加注冊流程)
      8、Linux 系統缺陷檢測工具:protos SIP test suite
      9、Linux 工具:reghijacker(攻擊注冊流程),authtool(竊取認證消息)
      10、Linux 工具:sip_rogue(偽裝B2BUA,或者SIP Proxy)
      11、Linux 工具:teardown 對已創(chuàng )建的SIP 會(huì )話(huà)拆線(xiàn)工具,自動(dòng)結束終端通話(huà)。
      12、Linux 工具:check_sync 創(chuàng )建一個(gè)SIP 終端重啟命令。
      13、Linux 工具:redirector 對SIP呼叫執行重定向,可能轉接到非法服務(wù)器。
      14、Linux RTP 語(yǔ)音注入工具:rtpinjector 對RTP語(yǔ)音進(jìn)行注入。
      15、“正式的”Linux平臺工具:Asterisk,FreeSWITCH, SIPp以上這些工具或平臺是正規的開(kāi)源語(yǔ)音平臺,用戶(hù)可以通過(guò)這些平臺開(kāi)發(fā)呼叫中心,IPPBX,壓力測試等相關(guān)業(yè)務(wù)。
      到現在為止,我們已經(jīng)把SIP的整個(gè)安全措施,流程,機制和相關(guān)架構,安全工具等等問(wèn)題后做了一個(gè)比較全面的介紹,希望,讀者通過(guò)這個(gè)系列的講座充分了解SIP安全的重要性,同時(shí),也必須注意,因為網(wǎng)絡(luò )環(huán)境不斷變化,安全防范措施和攻擊工具也同時(shí)進(jìn)行升級,所以用戶(hù)需要關(guān)注更多這個(gè)方面的研究報告,以便保證用戶(hù)系統的安全。以下鏈接是關(guān)于SIP安全的相關(guān)技術(shù)資料說(shuō)明,筆者再次提醒,可能有的工具已經(jīng)不再工作,可能SIP安全能力得到了推廣,所以,攻擊工具可能不能完全正常工作。讀者需要不斷練習,實(shí)戰是解決問(wèn)題的唯一手段。
      參考資料:
      關(guān)于STIR:https://datatracker.ietf.org/doc/draft-ietf-stir-certificates/
      關(guān)于 Secure Telephone Identity Threat Model:
      https://datatracker.ietf.org/doc/rfc7375/?include_text=1
      關(guān)于P-Asserted-Identity:https://www.ietf.org/rfc/rfc3325.txt
      關(guān)于SRTP標準:https://www.rfc-editor.org/info/rfc3711
      關(guān)于RFC3261認證的升級:https://datatracker.ietf.org/doc/rfc4474/
      關(guān)于RFC 4474:https://www.rfc-editor.org/rfc/rfc4474.txt
      https://tools.ietf.org/html/draft-jennings-dispatch-rfc4474bis-00
      關(guān)于 DTLS:http://www.rfc-base.org/txt/rfc-5763.txt
      https://www.rfc-editor.org/rfc/rfc4568.txt
      關(guān)于DTLS和SIP 身份討論:
      https://www.rfc-editor.org/rfc/rfc6347.txt
      https://www.cisco.com/c/en/us/td/docs/solutions/Enterprise/Video/telepresence.html#wp42084
      https://www.cisco.com/c/en/us/about/security-center/securing-voip.html
      SIP加密算法研究:
      Detection and Prevention Mechanism on Call Hijacking in VoIP System。
      SANS Institute Reading Room 關(guān)于安全的討論:https://www.sans.org/reading-room/whitepapers/voip/security-issues-countermeasure-voip-1701
      SIP安全討論:http://cdn.ttgtmedia.com/searchUnifiedCommunications/downloads/SIP1Controlling_Convergent_Networks_CH7.pdf
      關(guān)于SIP安全的討論:
      https://www.cs.columbia.edu/~smb/classes/f06/l13.pdf
      http://download.securelogix.com/library/SIP_Security030105.pdf
      關(guān)于SIP安全討論:http://startrinity.com/VoIP/Resources/sip-security-mechanisms-a-state-of-the-art-review.pdf
      關(guān)于SIP安全和攻擊工具介紹:
      http://www.hackingvoip.com/presentations/IPCOMM_SIP.pdf
      https://link.springer.com/chapter/10.1007/978-3-642-11530-1_10
      https://www.blackhat.com/presentations/bh-usa-06/BH-US-06-Endler.pdf
      安全測試標準:https://www.rfc-editor.org/rfc/rfc4475.txt
      FBI 關(guān)于電話(huà)盜打報告和安全機制建議:https://www.fbi.gov/
      攻擊工具列表:http://www.voipsa.org/Resources/tools.php
      關(guān)注我們的微信號:asterisk-cn 獲得更多有價(jià)值的技術(shù)分享,訪(fǎng)問(wèn)技術(shù)論壇下載開(kāi)源免費IPPBX:www.issabel.cn/forum.
    【免責聲明】本文僅代表作者本人觀(guān)點(diǎn),與CTI論壇無(wú)關(guān)。CTI論壇對文中陳述、觀(guān)點(diǎn)判斷保持中立,不對所包含內容的準確性、可靠性或完整性提供任何明示或暗示的保證。請讀者僅作參考,并請自行承擔全部責任。

    專(zhuān)題

    亚洲精品网站在线观看不卡无广告,国产a不卡片精品免费观看,欧美亚洲一区二区三区在线,国产一区二区三区日韩 大荔县| 元朗区| 新丰县| 封开县| 北宁市| 新邵县| 扎囊县| 湟源县| 友谊县| 佳木斯市| 泉州市| 东乡县| 慈利县| 郯城县| 保德县| 黄大仙区| 广州市| 柳州市| 准格尔旗| 邯郸市| 集贤县| 南丰县| 壤塘县| 青岛市| 柳州市| 福贡县| 即墨市| 得荣县| 囊谦县| 怀宁县| 大渡口区| 徐州市| 神木县| 门头沟区| 栾川县| 东乡族自治县| 苍梧县| 永春县| 阿尔山市| 武川县| 通渭县| http://444 http://444 http://444 http://444 http://444 http://444