语音和视频通信承载着组织中最敏感的一些对话,但支持这些通信的系统通常被视为普通的网络流量,从而造成了攻击者可能利用的安全漏洞。
在后台,信令消息负责建立和控制会话,而独立的媒体流则承载实际的语音或视频。如果这两个组件中的任何一个未受保护,攻击者就可能拦截通话详情、篡改会话或捕获原本不应该泄露的媒体数据包。
因此,确保实时通信安全需要同时关注呼叫路径的两个环节。基于传输层安全协议 (TLS) 的 SIP 有助于保护用于建立和管理会话的信令消息,而安全实时传输协议 (SRTP) 则有助于保护承载实际对话的媒体流。这两种技术共同为保障 VoIP、统一通信 (UC) 和其他实时协作服务的安全奠定了重要的基础。
本文将深入探讨基于 TLS 的 SIP 协议和 SRTP 如何协同工作以保护实时通信。我们将分析信令和媒体流量之间的区别,每种技术分别保护哪些方面,以及它们对于保护 VoIP、统一通信 (UC) 和协作环境的重要性。
实时通信如何在网络中传输
统一通信和 VoIP 通信在网络上的行为与传统的数据应用有所不同。它们不仅更容易受到抖动、丢包和延迟等现象的影响,而且通常由两个部分组成:信令和实际的音视频媒体。
信令由会话发起协议 (SIP)等协议处理,这些协议允许 IP 电话、IP PBX、软电话、语音网关以及其他服务器或终端等设备交换信令消息。信令使这些设备能够相互发现、协商呼叫参数、建立会话、在通话期间进行更改,并在通话结束后正确终止会话。
SIP 本身并不传输实际的音视频媒体。这项工作由实时传输协议 (RTP)完成,RTP 是一种应用层协议。RTP 运行在用户数据报协议 (UDP) 之上,UDP 是一种传输层(第四层)协议,通常用于实时媒体传输。
这意味着两个 SIP 端点之间的通信可能涉及多个信令会话和媒体流。下图更清晰地说明了这一点。

在两部IP电话进行语音通话时,会建立SIP会话,同时通过独立的RTP流传输语音数据包。在许多IP PBX环境中,每部IP电话和IP PBX之间都会交换SIP信令,以实现更复杂的呼叫控制功能。
通话期间,RTP 流承载实际媒体,而 SIP 对话则保持原位,以便终端或呼叫控制系统在需要时可以修改或终止会话。
为什么 SIP 和 RTP 需要额外的保护
UC 和 VoIP 通信依赖于上述架构才能成功完成通信会话。然而,这种架构存在固有的安全漏洞。SIP 和 RTP 都缺乏内置的安全功能来防止恶意用户劫持这些通信。
如果 SIP 信令遭到泄露或篡改,攻击者可能能够获取敏感的通话信息、干扰呼叫建立和控制、冒充终端、重定向呼叫、进行电话欺诈或扰乱合法通信。如果 RTP 数据包流遭到破坏,攻击者可以累积已传输的数据包并重建语音对话,从而窃听参与者视为私密通道的内容。
未受保护的 SIP 信令可能揭示什么
SIP 信令包含实时通信运行所必需的重要元数据。这些元数据包括主叫号码和被叫号码、SIP 用户名和域名、关键基础设施(包括 IP 电话、PBX、SBC 或中继线)的 IP 地址、呼叫路由信息、编解码器协商以及根据设计可能需要的身份验证交换。以下是SIP INVITE 消息的数据包捕获。从中可以看到诸如主叫号码以及源和目标 SIP 设备等信息。

即使没有实际录制到对话音频,信号传输也可能向攻击者泄露有用的信息,其严重程度可能与窃听对话不相上下。
保护信令传输和媒体传输
这时,基于TLS的SIP和SRTP就派上了用场。这些技术通过对信令和媒体流量应用安全特性,帮助缓解上述攻击。让我们仔细看看每一项技术。
基于TLS的SIP
SIP over TLS 是一个用于保护 SIP 信令消息的框架。它使用传输层安全协议 (TLS),该协议可加密并保护网络上设备之间的通信。具体来说,TLS 提供:
- 加密:即使数据被截获,其他人也不容易读取所交换的数据。
- 完整性:确保数据在传输过程中不会被篡改而不被检测到。
- 身份验证:它允许一方(通常是服务器或终端)使用证书来证明其身份。
SIP over TLS 在概念上与 HTTPS 类似。正如 HTTPS 通过在 TLS 上运行 HTTP 来保护 HTTP 一样,SIP over TLS 通过加密和保护设备之间交换的 SIP 消息来保护 SIP 信令。
安全RTP
确保 SIP 安全只是任务的一半。RTP 会话也必须得到保护,而这正是 SRTP 的作用所在。SRTP 对媒体流进行加密,并提供完整性保护和重放保护,从而防止攻击者轻易监听、修改或重用捕获的语音数据包。
与基于 TLS 的 SIP 类似,加密有助于防止未经授权的第三方理解截获的流量。SRTP 还添加了一个身份验证标签,以验证数据包是否来自预期的发送方,以及是否在传输过程中被篡改。SRTP 利用数据包序列信息来帮助检测和拒绝重放数据包。这有助于防止攻击者捕获旧的媒体数据包并将其注入到数据流中。
SRTP 对 RTP 媒体负载进行加密,但通常不自行处理密钥交换。加密密钥和相关参数通过其他机制协商或交换,通常是通过 SIP 信令本身。每个 VoIP 或 UC 应用都会以自己的方式应用此机制。
兼容性和证书问题规划
虽然基于 TLS 和 SRTP 的 SIP 是安全通信环境的重要组成部分,但它们的引入可能会带来复杂性和操作挑战,这些挑战必须加以解决。
基于 TLS 的 SIP 协议高度依赖于正确的证书管理。电话和 PBX 必须信任颁发证书的证书颁发机构 (CA),并且证书名称应 与终端使用的完全限定域名( FQDN) 完全匹配。证书过期、名称不匹配、缺少中间证书,或者设备不信任颁发证书的 CA,都可能导致电话注册失败或SIP 中继线路中断。因此,证书续期和监控应纳入语音安全计划。
兼容性是另一个潜在的复杂问题,必须妥善解决。某些终端设备,例如 IP 电话、ATA、寻呼系统、门禁电话以及语音网关或传统 PBX 平台等,可能不支持基于 TLS 或 SRTP 的 SIP 协议,或者仅支持特定版本。在许多系统中,SRTP 可以配置为可选、首选或必需。如果需要加密,但某个终端设备不支持,则通话可能会失败。
了解通信中哪些部分经过加密、哪些部分未加密也至关重要。在许多统一通信 (UC) 和 VoIP 环境中,用户之间需要端到端加密。电话可能使用基于 TLS 和 SRTP 的 SIP 协议与 PBX 通信,而 PBX 或 SBC 会终止该加密会话,并建立另一条呼叫路径,连接到 SIP 提供商、呼叫中心平台、录音系统或 PSTN 网关。因此,必须对呼叫路径的每个部分进行单独评估,以确保通信环境的完全安全。
为什么协议知识仍然重要
过去,网络工程师与这些协议的接触更为密切,因为使用这些协议的平台需要进行详细的配置。而现代统一通信 (UC) 和 VoIP 平台通常将大部分复杂性隐藏在 Web 界面和简单的配置选项之后。在许多系统中,启用 TLS 或 SRTP 可能就像选中一个复选框或选择一个安全配置文件一样简单。
这种抽象化虽然使安全配置更易于访问,但也可能导致知识鸿沟。工程师可能在不完全了解受保护内容、哪些内容仍然暴露、加密的起始点和结束点、密钥交换方式以及证书验证的重要性等信息的情况下启用加密。因此,理解接口底层的协议仍然至关重要。
结论
SIP over TLS 和 SRTP 不应孤立看待,而应视为构成完整安全解决方案的必要互补技术。SIP over TLS 保护信令,而 SRTP 保护承载实际语音或视频通话的媒体流。了解这些技术是什么、它们的作用以及它们如何工作,有助于网络工程师更好地理解 VoIP、UC 和企业网络整体所需的全面安全策略。
作者:Daniel Noworatzky
来源:https://info.teledynamics.com/blog/securing-voip-communications-with-sip-over-tls-and-srtp
本文来自作者投稿,版权归原作者所有。如需转载,请注明出处:https://www.nxrte.com/jishu/69306.html