随着 IP 语音(VoIP)技术在全球电信市场的不断普及,对服务供应商、设备制造商以及最终用户而言,性能改善、成本降低以及功能支持使 VoIP 成为一种极富吸引力的事物。由于人们对 VoIP 的兴趣日益增加,语音通信的安全性有可能发展成为 VoIP 解决方案的一项关键要求。基于分组的通信对安全风险尤其脆弱,这些风险包括:数据包监听语音“窃听”、伪造网络 ID 的未付费服务使用以及操纵数据包造成的服务中断等。尽管已经包含了安全特性的VoIP实施尚为数不多,但我们目前已将几种标准纳入了考虑范围之内。
为什么要讨论 VoIP 的安全性
既然PSTN(公共交换电话网络)语音呼叫通常都不安全,那么 VoIP 呼叫真的还有必要具备安全性吗?答案有两重。首先,IP 网络的分组性质使其比 PSTN 更易受到安全威胁。就当前为数据网络提供服务的技术而言,在数据包网络上刺探语音信息比物理刺探电路交换网络要更为容易。此外,就当前社会政治条件提出的新型安全顾虑而言,在我们的语音网络中集成安全特性对服务供应商和最终用户都有利。
从服务供应商的角度看,实施安全保障措施可避免各种破坏性行为,这些行为可能导致盗窃服务以及损失大笔收入等。通过访问网络数据库及 IP 地址,可以获得伪造的服务注册,无需付费就可使用服务,或者其费用会转嫁到另一实际客户头上。此外,电话终端设备的实施和配置可能会使其好像有效的终端设备的克隆一样,能够在不为人知的情况下免费而有效地访问服务。如果网络黑客能够成功访问网络设备、修改数据库或复制设备的话,那么他们就会成为威胁,导致语音网络的关闭或“拥堵”,并控制语音网络。最后,诸如会话启动协议(SIP)、H.323 以及媒体网关控制协议(MGCP)等分组网络协议可通过访问数据包进行操纵,从而修改协议信息,导致数据包目的地或呼叫连接的变化。
其他安全威胁会对最终用户构成隐私威胁。黑客只需通过简单的分组网络“窃听”,就能“听到”语音载体通道,或“看到”呼叫设置(信令)信息,从而获取详细的呼叫信息。如果用户的个人信息、行为及习惯被提取用于非法途径或破坏性行为,那么这就会导致个人信息被盗或名誉受损。终端电话设备克隆经过配置,通过上述网络协议操纵伪装成其他无辜用户,或“窃听”正在进行的语音和相关信号传送流量用于脱机分析,就能实现上述目的。
尽管上述安全威胁切实存在,但这并不意味着 VoIP 部署是完全脆弱的。我们可实施各种安全特性以解决上述难题。
互联网安全组件
安全的 VoIP 可利用大部分目前数据通信已有的安全性组件。当前互联网安全基础设施的关键功能之一就是传输数据的完整性。该组件既保证两实体之间的消息不被破坏,又确保接收方进行确认。与此类似的组件是对不可否认性的支持,即排斥数字签名消息(通过安全钥匙),从而避免收费。互联网安全的保密度可确保只有消息的接收方和传输方才能看到该消息的内容。安全组件集(security element suite)的认证功能可保证网络用户只有在身份得到满意确认后才能访问特定的网络。
根据最终用户或服务供应商对安全关心的程度不同,可要求多种不同级别的安全特性。一个共有特性就是语音有效负载自身的加密。另一安全级别则要求建立电话呼叫的信令消息必须加密。
IP 安全工具包与相关标准
加密/解密算法及其相关密钥是解决消息机密性的常用工具。加密算法有很多种,算法中还有各种模式,密钥实施类型也各不相同,这就使可能的实施配置数目繁多。先进的加密标准 AES 和三重数据加密标准(3DES)是两种常见的加密方案。消息摘译是使用密钥创建消息认证码(MAC)并提取预编码信息进行消息完整性及认证的算法。消息摘译5(MD5)和安全散列算法1(SHA-1)是两种用于认证的常见算法。公共密钥交换和密钥分配(如用于上述加密和认证方案)对整体安全系统至关重要。ITUx.509 标准定义了获得密钥数字签名的格式,这就为密钥认证提供了权限。
IETF 通过 IP 安全协议(IPsec)来解决互联网数据应用的安全性问题。该协议层的目的在于提供密码安全服务,可通过协议栈中立即运行于 IP 层之上的网络层安全性灵活地支持认证、完整性、访问控制和机密性的结合。IPSec 为传输控制协议(TCP)或Unigram数据协议(UDP)层及以上提供了安全性,它包括两个子协议:IPsec 封装安全有效负载(ESP)与IPsec认证报头(AH)。ESP 是上述二种协议中更常见的一个,它通过保证任何跟随在分组报头之后内容的安全性实现了认证、完整性、回放保护(replay protection)和机密性。AH 可实现认证、完整性和回放保护,但不具机密性。
除使用 UDP 之外,VoIP解决方案通常采用实时协议(RTP)传输电话有效负载,采用实时控制协议(RTCP)用于消息控制。安全RTP(SRTP)是当前IETF的一项草案,为 RTP 提供了安全配置文件(security profile),向数据包添加了机密性、消息认证及分组回放保护,专门解决了互联网上的电话技术应用问题。SRTP 的目的在于只保证 RTP 和 RTCP 流的安全性,而不提供完全的网络安全架构。SRTP 使用RTP/RTCP报头信息与 AES 算法,得到代数方法上适用于 RTP/RTCP 有效负载的密钥流。SRTP 可调用基于散列的消息认证码(HMAC)——将可 SHA1 算法用于认证功能。
|