一、实现VoIP的安全是提供IP通信业务的前提
基于IP网络的话音传输(VoIP)技术目前已经发展成为一种专门的通信技术,而不再是两年前地方贝尔公司首席技术官所谓的科学项目(science project)或原来意义上简单的Internet应用。作为一种新的通信方式,为了和原来的称谓有所区别,有人建议将目前的VoIP改称为IP通信(IP communication)。VoIP的话音质量和可靠性已得到大幅度改进,并在企业网和公共网络中广泛应用,它融合话音和数据网络,具有节省成本、通信灵活、支持新的特征功能、能提高生产率等优势,这为那些试图基于数据网提供传统电话业务的业务提供商增加了获得新收入的机会。随着VoIP在最近几个月的火爆发展,主流媒体已宣布2004年为VoIP年。但我们注意到,随着VoIP应用承载的话音通信业务越来越多,其安全问题也逐渐暴露出来。由于IP网络本身的开放性以及话音业务带来的新要求,如何解决VoIP安全问题、提供运营商级的业务,已成为业务提供商面临的一个难题。
二、VoIP安全脆弱性分析
1.IP分组网本身的脆弱性
VoIP安全的重要性和迫切性不容忽视,因为在分组网中更容易刺探话音信息,这比电路交换网的物理探测要容易得多。所以,虽然VoIP本身并不存在更多的、新的脆弱性,但是由于话音应用于IP网络,从而导致其安全问题更加突出。在传统的模拟环境中,交换机和配线室的物理接入通常需要截取双方的通信,而如今,数据网的分组话音传输使得话音通信的接入和截取非常容易,尤其是在Inter net上可以很容易地发现大量恶意的工具集。
IP分组通信固有的安全脆弱性包括:
•嗅探数据包的话音监听(tapping);
•网络身份欺骗(falsification of network ID);
•数据包操纵终止业务;
•用户账号和设备欺骗,这与接入网络的数据库和IP地址有关;
•破坏网络的完整性,修改数据库或复制设备而使得话音网络拥堵或被控制。
其他安全威胁还包括终端用户隐私权的泄漏等。新的安全挑战包括截取、修改呼叫控制(如SIP)数据包,乃至改变数据包的目的地址和呼叫连接等。
IP分组网络的性能无法达到电路交换网的水平,IP网络安全脆弱性的存在加大了安全管理的风险。因为从风险管理的角度看,如果运营VoIP业务的数据网络遭受灾难,公司将面临同时丧失话音和数据通信能力的风险,这样对数据网业务的安全威胁就被延伸到两个系统,而原来相互分离的系统,其风险相对来讲要低一些。面对IP网上如此众多的安全威胁,当运营商推出VoIP业务时,业务提供商必须适时实施针对威胁的安全和防护措施,以保证服务和相应收益得到保障。
2.VoIP安全威胁
许多已知的安全脆弱性会相应地影响话音通信,因此需要预防。VoIP环境中特别需要注意的安全威胁包括:
•拒绝服务(DoS)攻击:如IP电话、VoIP网关(SIP代理)等端点可能会受到SYN或ICMP数据包的攻击,以致通信中断,无法正常提供业务;
•呼叫截取(call interception):指话音或实时传输协议(RTP)数据包受到非授权的跟踪;
•信令协议篡改(signal protocol tampering):与呼叫截取一样,恶意用户可以监控和篡改建立呼叫后传输的数据包,修改数据流中的域,使VoIP呼叫不能使用VoIP话机,或者进行费率更高的呼叫(如国际电话),使IP-PBX认为呼叫来自另一个用户;
•状态窃取(presence theft):假冒合法用户收发数据;
•资费欺骗(toll fraud):恶意用户或入侵者拨打欺骗性电话;
•呼叫处理操作系统(call handling OS):许多IP-PBX系统的呼叫处理软件都是基于操作系统或操作系统组件,它们可能是不安全的,例如使用Microsoft IIS作为IP-PBX的Web配置工具就会在VoIP环境中引入显著的安全脆弱性。
现有的安全威胁并不意味着运营商建设VoIP网络和提供服务会遇到阻碍,通过实施各种安全措施可以解决这些问题。在IP网络上实施VoIP应用,运营商需要提供不同层次的安全功能,如认证、加密、防火墙等。IETF RFC 2401定义的安全性IP(IPSec)是常用的安全协议,它提供了加密和认证功能。为了加解密,终端用户点之间必须建立安全关联(SA)并交换密钥。简单来讲,可以通过以下措施来减少安全威胁:
①在技术上尽量降低网络暴露以减少DoS攻击;
②对于信令协议被篡改,可基于执行状态进行判决,作为DoS进行处理;
③加密VoIP流量可以防止VoIP呼叫受到监听,这在过去不太容易实现,但是随着数字信号处理技术,以及两个主要VoIP协议――SIP和H.323的迅速发展,未来VoIP可以实现端到端的加密;
④对于状态窃取所造成的安全威胁,最好的防范措施是采用强认证,如二元认证(two-factor authentication),IP端点的强认证虽然是一种新技术,但可以很快实施;
⑤最后也是最重要的,就是呼叫处理软件的运行平台,如Microsoft或Linux操作系统,应该确保操作系统没有运行任何非必需的软件,并且已经安装了必要的安全补丁。此外,服务器、路由器的各种端口,除非必要,一般不要打开。
在上述各种措施的配合下,VoIP系统的安全性就可以大大加强,但是要实现运营商级的网络安全,还须建立安全的网络架构,在架构中综合利用各种因素,尽量提高安全性。
三、VOIP安全的网络架构
在VoIP网络中,应该识别三类数据包:话音、信令和数据分组数据包。在有些情况下,视频数据包也通过Internet传输。信令数据包用于在两个基于非面向连接的IP网络端点之间建立虚拟连接,如两个IP话机,信令数据包在IP话机和呼叫服务器或代理服务器之间传输。虚拟连接一旦建立,就可以在两部IP话机之间基于不同的路径传输话音数据包。与话音数据包一样,分组数据包可以来自同一个装置或与之关联的另一个装置(如连接IP话机的PC),但是经由的路径有可能不同。
1.减少因安全关联/密钥交换引起的延迟
因信令数据包、话音数据包和数据分组数据包分别经由不同的路径,所以会各自建立不同类型的SA,每次建立SA必须交换安全密钥信息,从而大大增加了延迟(通常是几秒)。这在话音通信中是不可忍受的,延迟严重影响了呼叫的建立和话音质量。
对于实时的话音处理,如果在PSTN中建立(调整)信令数据包的延迟超过300ms,呼叫将被抛弃;如果建立(调整)话音数据包的延迟超过300ms,用户会听到长的静音,呼叫过程中话音也会产生鸣响。因此应该尽量最小化建立信令和话音数据包间SA的延迟。
每部IP话机都有一个主要呼叫服务器(primary call server),理想情况是一次就建立呼叫发起IP话机和主要呼叫服务器间的SA,然而SA的生命周期很短,因此每次呼叫都要建立SA。如果SA在一次呼叫过程中过期,呼叫会被终止,需要重建连接,这时用户将听到静音。
解决上述问题的方法是延长话音应用SA的生命周期。对于较长的呼叫,如果SA过期,主要有两种解决方法:第一种方法是释放呼叫、重新建立SA,用户将被警告连接已经断开,但这种方法并不十分理想;第二种方法是保持通话、重建SA,尽管这不符合呼叫处理流程,但对话音质量影响小,不失为解决话音质量问题的较好方案。
此外,数据应该能够与另一个端点建立SA,多数场合独立于信令和话音应用。数据包有时仅能在已经建立虚拟连接的两个端点间传输。
2.减少因加密操作引起的延迟
实现安全传输最可能和可行的方法是利用虚拟专用网(VPN)或其他方法完成加密。因为一般的加密处理会增加话音数据包的延迟乃至降低整个网络的VoIP性能,尤其是在多个加密点进行加密处理时。但如果采用合适的网络运行结构或加密方法,就可以将延迟的影响等减弱,例如采用VPN就会使得用来加密的数据处理负荷几乎不会影响VoIP系统的性能。此外,采用硬件加密可以将影响话音质量的风险降至最低。
高级加密标准(AES)加密协议要求与数据分组一样的处理时间,这意味着延迟将加倍;运用数据加密标准(DES)加密时,延迟更大;三重数据加密标准(3DES)中,延迟时间大约是一重DES的三倍,话音加密使得延迟变得无法接受。许多话音应用选用安全的实时传输协议(SRTP),该协议采用AES标准,而不是IPSec。
3.合理选择VPN和加密
VPN在端点和VPN服务器之间建立虚拟连接,运营商可以将IP电话作为VPN服务的一部分来提供。这时IPSec成为通用的VPN安全协议,在各种VPN模式中都可以使用。
(1)多VPN隧道模式(Multiple-VPN Pipe Model)
在这种模式中,每种形式的数据包均建立一个VPN,IPSec用于信令和数据的加密。话音数据包使用SRTP或IPSec加密以降低加密带来的延迟。但这需要建立多个VPN和IP地址,而且在一次呼叫中不同VPN间需要关注同步问题,从而增加了复杂性。
(2)加密的VPN模式(VPN Model with Encryption)
在这种模式中,所有数据包都使用一个加密的VPN。VPN终止IPSec,VPN服务器在公司或ISP网络中不再有安全保障。因此,一般使用SRTP加密话音,以提供端到端的安全。这意味着话音是用IPSec和SRTP这两种方式进行加解密的。尽管这会增加延迟,但话机和VPN间的连接只需在开始时建立一次,从而降低了延迟的增加。这种模式的优点在于:最小化IP地址的数目和呼叫处理同步所需的工作,是一种较好的方法。
(3)没有加密的VPN模式(VPN Model without Encryption)
在这种模式中,所有数据包流经没有加密的VPN,在VPN隧道之外进行加密。在进入VPN隧道之前,信令和数据分组可以用IPSec加密,话音可以用