2014/05/08 Tang
1 概述
VoIP(Voice over Internet Protocol)即我们通常所说的IP是一种将模拟声音信号进行数字化,并组装成IP分组在分组交换网上做实时传递的技术。VolP能实现普通电话与普通电话、PC与PC、PC与普通电话之间语音通讯。该技术最大的优势是利用了Internet作为传输平台,与传统的电话业务相比,用成本,并且能提供比传统业务更多、更好的服务。例如,除了语音的传输之外,VoIP的应用还延伸到企业网中实现分支机构的语音通信。多种通讯方式如语音留言、E—mail和传真等统一到电子信箱中;还可作为免费的视频会议、电子商务基础平台,建立呼叫中心,为企业的业务发展提供服务。VoIP的传输过程简单地说要经过语音信号到数字信号的转换,数字信号的IP封包,IP封包在Internet上的传输,IP封包的解包解码,数字语音信号到模拟语音信号的转换过程。然而,正是由于VolP本身的技术特点,其语音信号是以IP数据报形式在开放的互联网上传递,因此互联网所出现的安全威胁,如病毒的入侵、DoS拒绝服务攻击、信息漏露和窃取等,也会出现在VoIP系统中。
2 VOIP中的标准协议
VoIP使用IP网络传输语音信号,在通话连接的建立、信号的传输到连接的拆除过程中必须借助一定的标准协议才能实现。目前,被大家所接收的标准协议有国际电信联盟(ITU)提出的H.323、IETF提出的会话初始协议SIP(Session Initiation Protocol)。两者的信令功能基本相同,都是工作在应用层的协议,利用实时传输协议RRP(Real-time-Transport Protocol)进行媒体传输。
2.1 H.323协议。H.323协议由ITU国际电联提出的,沿用传统的电话信令模式和设计思想,进行集中、层次控制,只是在传输方式上用分组交换替换了传统的电路交换。H.323便于与传统的电话网相连,但实现比较复杂。H.323协议是一个协议族,其中又
包括许多相关的子协议,如H.2 225.0负责呼叫控制,H.245用于媒体控制,主要实现媒体流通信道的建立、维护和释放。RTCP是媒体流实时传输控制协议,RTP是媒体流实时传输协议。媒体流安全传输将使用H.245信道中给出的算法与密钥进行编码。
2.2 SIP协议。会话发起协议SIP(Session Initiation Protocol)互联网工程任务组于1999年提出的。类似于互联网的其他协议如HTYP、SMTP,采用文本的编码方式,在基于IP网络环境中实现实时通讯应用的一种信令协议。它可用来创建、修改以及终结多个参与者参加的多媒体会话进程。参与会话的成员可以通过组播方式、单播连网或者两者结合的形式进行通信。SIP实体主要由四部分组成:用户代理(User Agent,UA)、代理服务器(Proxy Sever)、重定向服务器(Redirect Sever)和注册服务器(Register)。
一个基本的SIP代理服务器呼叫过程如图1所示。
用户A使用INVITE消息发起呼叫,代理服务器接收呼叫并前向转发INVITE请求。当被叫用户B接收到请求后,给出响应,代理服务器转发响应到用户A。从SIP的工作过程可以看到,SIP只提供原语不提供应用业务,SIP必须和其他协议一起使用,最典型的使用就是和RTP协议一起来实现流媒体的实时传输。
2.3 H.323和SIP协议的比较。H.323协议由删提出,出自通信领域,是将IP电话作为传统电话业务来处理,沿用传统通信的模式和设计思想,比较成熟,便于与传统电话网相连接。但是H.323是一个相当复杂的体系,它是一个许多不同的协议组成,采用基于ASN.I和压缩编码规则的二进制方式来表示消息,需要特定的代码产生器进行解析。SIP协议由IETF提出,借鉴了其它因特网标准和协议简练、开放、兼容的设计思想,将IP电话作为因特网上的一个应用,采用文本编码格式,易于解析和调试,较易实现。 SIP已经被3GPP工作组定义为第3代移动通信系统的信令协议,比H.323更符合未来的发展和需要。
3 VoIP的安全威胁
VoIP以IP数据报的形式在互联网上传输,由于TCP/IP协议本身的安全缺陷,利用协议分析软件很容易对IP包进行截获和分析,因而也不可避免容易受到攻击。且VoIP的设备是基于服务器的,服务器操作系统自身的安全漏洞也直接影响VoIP数据包的传递安全。 VoIP的安全威胁主要来自以下两个方面:一方面,VoIP产品本身存在安全漏洞。目前VoIP设备提供商都有独立的设备来进行登陆注册、关守和信令接续,这些产品大多采用Windows操作系统,也有基于Linux或VxWorks的。这些开放的操作系统本身都存在安全漏洞,并且许多厂商的产品在出厂之前都已安装了相关的软件,无法保证这些产品是否已经弥补了安全漏洞或是能进行补丁升级,也说是说VolP产品平台自己就存在安全漏洞。另一方面,协议本身的安全漏洞。由于VolP所采用的协议H.323及SIP协议都是开放式协议,允许数据分组在开放的互联网上传输,因此所有数据网会受到的安全威胁也会出现在VoIP网络中,主要的安全威胁有以下几种:
3.1 DoS攻击问题。拒绝服务攻击DoS(Denial of Service)是指向某个特定网络实体的接口发送大量的信息而使该网络实体破坏或暂时不可用。VolP系统采用了很多端口分别用于业务传输或呼叫建立以及系统管理,如H.323会话可能使用7个~11个端口号,SIP至少使用三个端口号。这些开放的端口就为DoS攻击提供了目标,攻击者要想攻击网络中的某台主机,可以通过伪造一条看似来自这台主机的SIP消息,然后将这条消息发往大量的 SIP服务器,通过SIP服务器,向要攻击的目的主机发送大量的SIP应答消息,从而使目的主机遭受拒绝服务攻击。
3.2 监听。在传统的公共交换电话网中,监听者只能是警察、特定的授权用户、运营商、极少数的高级黑客。而在IP网中任何人都能够容易地进行监听。由于 VolP数据在数据网络上传输,通过网络中常用的协议分析工具,如 ETHEREAL、SNIFFER等对数据的侦听就有可能得到语音通信的内容。如果有人在数据网络上通过窃听记录所有信息,并通过软件加以重放,将严重影响通信内容的安全,造成用户私密和敏感信息泄漏。
3.3 伪造攻击。攻击者截获SIP的关键信息,通过改变消息的头域和消息体,模仿消息发出者的身份欺骗合法的接收者,如果没有加密和用户身份认证的安全措施,很容易遭受此类攻击。这种对SIP请求的攻击主要分为三种:1)Invite请求伪造。一般地说,攻击者伪造From.Via.Subject冒充合法用户。2)Bye请求伪造。攻击的目的是终止合法使用者之间的正常通话。为了发起攻击,攻击者首先需得知先前呼叫的控制请求From. To.Call-ID.Cseq等参数,通过这些捕获的参数构造自己的Bye消息,终止目标的通话。3)Cancel请求伪造。攻击的目的是通过发送伪造的Cancel请求给被叫方,取消合法的Invite请求。这样一个合法的请求就变成无效了。
3.4 恶意篡改。通过跟踪并锁定通过H.323或SIP建立呼叫的双方,恶意篡改消息内容甚至会话密钥,使得发送方和接收方的消息不一致,从而导致双方沟通的完全误解,达到恶意的目的。
4 VoIP安全防护解决方案
针对以上系统所出现的安全威胁,本文提出了分别从VoIP平台本身的运行安全及相关安全协议人手来解决VoIP所存在的安全问题。如表1所示,此方案与以往的方案相比,不仅对VoIP的协议安全作了规划,同时也将VoIP设备平台安全纳入了整个安全体系里来。
4.1 对于VoIP平台本身的防御措施。加强对VoIP网络自身的安全防护主要可以从以下几个方面入手:(1)要求VoIP的设备提供商对设备进行安全强化,尽量减少系统的安全缺陷;管理员密切注意跟踪相关的安全漏洞信息发布,及时为VoIP系统打好补丁。(2)为系统配备防火墙,阻挡外界的非法入侵,尽可能少地将端口暴露在外网上,限制端口的异常流量,减少攻击影响。(3)利用虚拟专用网VPN的隧道技术,通过加密、认证、封装,以及密钥交换技术在公网上开辟一条安全隧道,在不安全的公共网络上构建一个安全通道,用来传输敏感的语音信息。保证合法用户之间的安全通信。(4)使用VLAN从逻辑上隔离语音和数据网,从而起到隔离病毒和网路攻击的作用。
4.2 相关安全协议。在VoIP网路中,为了保证传输数据的机密性及完整性,对本身身份的识别和认证,以及提供通信实体的不可否认性,就需要在VoIP中引入相关的安全协议。如采用HTYP认证,S/MIME(安全/多用途Internet,TLS(传输层安全协议)、IPSec(IP安全性)等安全协议。
4.2.1 S/MIME(安全/多用途Interact邮件扩展)。S/MIME协议除了支持原来的MIME格式之外,提供了基于公钥的X.509数字证书,能解决身份认证、信息完整性及发送方不可否认性等安全问题。S/MIME中用到的加密算法有以下几种:用于数字签名的数字签名标准DSS算法、用于加密会话密钥的Difie~Hellman算法和RSA算法。用于创建数字签名的散列函数有160位的SHA— l和128位的MD5。当UAS接到含有S/MIME的请求时,首先对其数字签名进行验证,验证通过后将X.509签名证书加入本地证书列表中进行保存。
4.2.2 HTTP摘要认证。HTTP摘要认证为SIP实体提供身份认证,是SIP协议的基本认证方式。它基于一种挑战/响应(challenge/response)模式,在SIP网络中,HTTP摘要认证方式可以被用于用户到用户(User to User)的认证和代理服务器到用户(Proxy to User)的认证。图2是SIP注册用户鉴权过程。用户到用户的认证是指UAS、注册服务器或重定向服务器对于UAC的认证,使用401响应状态码,代理服务器到用户的认证是指代理服务器对于UAC的认证,使用407响应状态码。
4.2.3 TLS协议。传输层安全协议TLS(Transport Layer Seeuri.ty)是基于TCP连接的工作在传输层的安全协议,TLS在数据加密中使用的算法有DES、RC5、IDEA,在用户认证上用到的公钥算法有RSA,用到DH算法作密钥交换,在数字签名上用到的摘要算法有SHA一1、MD5。该协议分为两层:TLS握手协议和TLS记录协议。前者用于协商安全机制,后者具体执行该安全机制。
4.2.4 IPSec(IP安全性)协议。Interact安全协议IPSee(InteractProtocol Security)是工作在网络层的安全协议。IPSec比较复杂,它组合了多种安全技术,由多个协议组成,运行在它上面的所有网络通道都是加密的。它通过在不信任的网络上创建安全隧道来传输敏感信息。IPSee也是我们前面所提到的虚拟专用网VPN最常使用到的协议。通过加密的VPN隧道传输,有效地防止窃听和其他攻击。IPSec机制提供了认证报头(AH)用于保证数据的完整性和认证服务,而封装有效载荷报头(ESP)既可用于保证数据的完整性和认证,又可提供数据的保密性,加强了IP数据报的安全,从而使得基于SIP的VolP在网络层的安全得到了保证,进而提高了整个应用的安全性。IPSee的体系结构如图3所示:
5 结束语
随着网络视频、音频信息传输需求的日益增长,VoIP的应用领域也将不断地扩展,系统安全性将是影响该产品未来市场前景的关键因素。本文从VoIP的结构谈起,分析了目前该系统存在的安全风险及相关的安全技术,并提出从产品本身及协议安全两个方面来提高系统的安全保障。就VoIP目前的应用来说,虽然已经有了一些相关的安全措施和技术,但是还是存在许多不完善的地方,例如在安全认证过程中往往只是单向认证,可能会由此产生漏洞,在SIP协议中还存在许多需要加强安全保障的地方,这也是作者下一步的研究方向。
40088 411661033743080@qq.com
中国广东省深圳市南山区西丽九祥岭工业区10栋3楼