VoIP的安全实施分析
2009-01-20李浩
李 浩
【摘 要】VoIP(Voice over IP)技术因低成本和更灵活的特性,由原来的一种互联网上的增值应用发展成为一种得到广泛使用的通信技术。但由于VoIP是基于普通的IP网络,因而也会遭遇到与IP网络相关的安全挑战。本文简要介绍了VoIP技术并指出其在安全性上存在的缺陷,最后重点讨论了目前和将来VoIP系统实施至关重要的攻击手段的相应对策。
【关键词】 VoIP安全;安全分析;安全策略
一、简述
VoIP(Voice over IP,IP电话)是建立在IP技术上的分组化、数字化传输技术,其基本原理是通过语音压缩算法对语音数据进行压缩编码处理,打包后经过IP网络传输到接收地,再对这些数据包进行解码解压缩处理,恢复成原来的语音信号。IP电话系统把普通电话的模拟信号转换成计算机可接入因特网传送的IP数据包,同时也将收到的IP数据包转换成声音的模拟电信号。
VoIP的基本结构由网关(GW)和网守(GK)两部分构成。网关的主要功能是信令处理、H. 323协议处理、语音编解码和路由协议处理等,对外分别提供与PSTN网连接的中继接口以及与IP网络连接的接口。网守的主要功能是用户认证、地址解析、带宽管理、路由管理、安全管理和区域管理。
VoIP的数据处理包含以下四个步骤:信令,编码,传输和网关控制。信令技术保证电话呼叫的顺利实现和话音质量,目前被广泛接受的VoIP控制信令体系包括ITU-T的H.323系列和IETF的SIP协议(Session Initiation Protocol,会话初始化协议)。话音压缩编码技术是IP电话技术的一个重要组成部分。目前,主要的编码技术有ITU-T定义的G.729、G.723(G.723.1)等。实时传输技术主要是采用RTP协议(Real-time Transport Protocol,实时传输协议)。RTP是提供端到端的包括音频在内的实时数据传送的协议。RTP包括数据和控制两部分,后者叫RTCP。RTP包的头字段中包含有供接收端正确地将包转换成语音信号的数据。封装好的数据包作为有效载荷通过UDP进行正常数据传输。IP网络本身必须保证通过电话系统传输的实时会话由网关转换成其它格式,即采用不同的基于IP的多媒体机制或PSTN标准的格式。
二、安全隐患
作为一种新兴传输协议(如SIP),它尚不完善,采用类似于FTP、电子邮件或者HTTP服务的形式来发起用户之间的连接,由于不是面向安全连接的协议,所以在将互联网作为语音数据载体的同时,VoIP不仅会遇到与电路交换网络相同的安全问题,如偷听和资费欺骗,同时也会遇到来自互联网的安全威胁。
1.常见攻击
(1)拒绝服务攻击
DoS的攻击方式有很多种,最基本的DoS攻击就是利用合理的服务请求来占用过多的服务资源,从而使合法用户无法得到服务,即无法呼叫或接收电话。该攻击可以是阻止所有电话的呼叫或阻止对某一电话号码的呼叫。
(2)数据流的监听
一个典型的VoIP呼叫需要信令和数据流这两个建立的步骤,用于VoIP在IP网络上传输等时话音信息的RTP和RTCP是开放的协议,由于协议本身是开放的,任何人可通过网络监听的方式监听VoIP通信建立过程的信令流,从而恶意用户可以进行对信令流的篡改并可造成会话劫持、中间人攻击、电话跟踪等后果。黑客可以使用伪装欺骗手段突破SIP和IP地址的限制而窃取到整个谈话过程,用户承受着敏感商业信息和个人隐私信息泄密的风险。
(3)身份和服务窃取
通常在IP话机首次登陆到系统时,系统会提示输入个人的分机号码和密码。利用SIP协议的安全漏洞,黑客可以攻破IP语音网关,不经过认证随意拨打IP电话,造成运营者的经济损失;或者攻击语音服务器窃取用户身份和密码信息,从而盗用合法用户的身份拨打IP电话,造成用户的话费损失。
(4)资费欺骗(Toll Fraud)
资费欺骗是指攻击者盗用(模仿)某个电话帐户,以免费拨打长途电话,而其产生的大量话费则转嫁给该帐户的真正所有者。
(5)呼叫转移(Redirection of Call)
攻击者将受害者的呼叫转移至其指定的号码,而将打给受害者的电话重定向到攻击者的电话来模仿受害者。
(6)垃圾信息(SPAM)
攻击者建立一组具有VoIP电话地址列表的服务器,通过服务器向这些地址传送大量消息给受害者或者塞满受害者的语音邮箱。
2.基于VoIP的协议攻击
SIP是一个应用层协议,它可以实现IP网上的信令控制,包括建立、管理和终止由多方参与的语音会话进程。SIP协议在设计之初充分考虑了协议的易用性和灵活性,但没有将安全性作为重点,使其在安全性方面存在一定缺陷。此外,由于SIP消息通过Internet传输,同样面临着IP网络常见的安全威胁。
(1)SIP注册攻击
在SIP和其它VoIP协议中,用户代理UA及IP电话必须向SIP代理服务器注册,这样可以通过代理服务器将来电传给电话。当攻击者模仿一个真实的UA向SIP代理服务器注册,并使用其地址代替真正的注册时时即产生注册攻击。该攻击会使所有传向UA的来电被转移到恶意UA(rogue UA)。注册攻击会造成被攻击UA的来电丢失,通常发生在个人用户,用户组或大通信量的资源服务,如媒体网关或语音邮件系统。
(2)SIP消息篡改
SIP消息没有内置的完整性机制,通过中间人攻击(IP欺骗,MAC欺骗,SIP注册),攻击者可以截获并修改SIP消息,并改变部分或全部的消息。
(3)SIP Cancel/Bye攻击
攻击者生成一个带有Cancel或Bye命令的消息并发送到电话终端,结束正在进行的会话。如果攻击者持续发送这样的消息包给某个电话终端,则该终端将不能处理或接收呼叫。
(4)SIP畸形命令
SIP使用的是一种类似HTML的命令格式,这使得SIP协议很灵活并方便扩展实现VoIP的特性,但这也使SIP解析器很难使用各种可能的输入进行测试。攻击者会利用其发现的这一弱点,使用畸形命令并发送给脆弱节点,使该节点降级或瘫痪,进而使部分或整个VoIP系统无法使用。由互联网浏览器所遇到的缺陷可以看到,对各种可能发送的信息是很难进行测试的。
(5)SIP重定向
SIP采用一个服务器应用程序接收来自电话或代理服务器的请求,并返回一个重定向响应指明该请求应到何处重试。攻击者通过攻击重定向服务器,并命令将受害者的呼叫转移至指定的号码,攻击者就可以得到其想要的受害者呼叫。攻击者也可以重定向所有用户的电话号码到一个不存在的设备上,使整个网络瘫痪。
(6)RTP载荷攻击
RTP(Real-Time Transport Protocol,实时传输协议)承载着呼叫双方的编码语音信息。它是UDP协议加上顺序信息的简单扩展。使用中间人攻击,攻击者可以检查或修改两个节点间的RTP媒体流。此时,检查即演变为窃听,修改方式可以是插入噪音或攻击者自己的消息。
(7)RTP篡改
攻击者通过修改RTP包头字段中的顺序号和时间戳,使数据包的顺序或被打乱甚至不可用。在这种攻击下,通信双方的会话变得莫名其妙,或协议栈被破坏(破坏了节点接收的数据包),最终导致节点的掉线直至软件重启动。
三、安全机制
针对上述攻击行为,下面提出的一些安全机制将会有效地进行防御。
1.身份认证
身份认证用于确定终端用户的身份,是H.323安全体制中最为重要的环节,如果没有它,任何一个用户都可以冒充合法用户进入网络。首先是确定终端用户的身份,防止用户假冒,它是整个安全体系的基础,因为只有当来自一个节点的H.323呼叫首先被确认身份之后,才能够提供进一步的安全保证。其次是用于证实机制,防止某些用户否认他们曾参与某一个H.323呼叫。并且H.235的其他安全措施只有当来自一个节点的H.323呼叫首先被确认身份之后,才能够提供进一步的安全保证。
2.隔离VoIP和数据传输
隔离传输可以防止大量将PC和工作站作为侵入VoIP网络的入口的攻击。出于成本上的考虑,这种方法是通过VLAN来实施的。实施VLAN时,网络交换机仅允许按照网络管理者配置的同一VLAN上的设备间的路由。
数据和语音LAN之间需要保持一些连接。语音邮件服务器通常放置在网络的数据网络段。VoIP呼叫控制服务器被控
制连接到语音邮件服务器。
3.信令认证
当一个VoIP电话注册到SIP服务器时,电话需要提供其身份标识,该身份标识包括电话的MAC和IP地址。虽然相关的地址保护可以减少攻击者使用这些地址进行欺诈,但并不能完全消除威胁。利用IPsec协议提供的认证和加密机制,可以在VoIP电话和呼叫管理服务器之间使用IPsec协议提供了一种强认证机制。
针对SIP的攻击,通常采用认证的防御方法,如注册时使用UDP和TCP在UA和控制节点间传递注册信息,采用TLS建立认证安全连接来代替开放连接将会避免SIP注册攻击的发生。为避免Cancel/Bye攻击,可以在UA和控制节点间引入强认证机制,UA验证接收到的Cancel或Bye命令是否来自一个使用基于认证证书的可信节点。强认证同样可避免攻击者发送畸形命令到节点。
4.媒体加密
保护语音会话不被偷听是VoIP实施时主要考虑的问题。使用SRTP(Secure RTP, 安全RTP)则可避免载荷数据被侦听和篡改,发送方加密RTP数据包后在网络中传输,最后由接收方解密。SRTP避免了窃听和在数据包传输过程中添加新的信息。SRTP协议使得接收节点能够检测到RTP数据包头部被修改后,在处理之前就丢弃掉,这将避免应用软件受到不正常行为的干扰。还可以将VoIP传输限定在LAN/VLAN内,与非VoIP传输隔离,增加了攻击者获取VoIP内容的难度,则避免这种类型的攻击的发生。
四、结束语
本文给出了一种隔离VoIP和数据传输的安全实施策略,并结合端口认证,信令认证及媒体加密等方法,可以更好地提供VoIP实施过程的安全保证。考虑到所面临的恶意攻击,必须注意到VoIP实施仍然面临巨大挑战来消除这些威胁。今后的研究工作一方面需要加强安全机制和服务方面的研究,以支持不同系统级别的VoIP;另一方面,将安全标准和VoIP产品标准的紧密结合,将有助于更好地保护用户数据安全。
参考文献
[1]Chong Hui Min,Matthews H S.Comparative Analysis of Traditional Telephone and Voice-over-Internet Protocol(VoIP)Systems[J].IEEE,May 2004:106-111.
[2] Rosenberg J, Schulzrinne H, Camarillo G. SIP: Session Initiation Protocol. RFC 3261[S],2002.
[3] 刘伟明,鲜继清,陈伟凌. VoIP安全——基于 SIP协议的深入剖析和解决策略[J]. 计算机应用, 2006, 26(6):167-170.
[4]刘志军,王凤著,张孟辉.软交换技术协议SIP及其在VoIP中应用[J].微计算机信息,2006,27(9):169-172.
[5] 俞志春,方滨兴,张兆心. SIP协议的安全性研究[J]. 计算机应用, 2006, 26(9):2124-2126.