Copyright (c) 2009 Czy Invicta <Hack01@Live!cn> All rights reserved.
前言 ~~~~~~~~ 本文所讨论的是众所周知的VoIP,我对目标VoIP部署了两次攻击。第一次攻击演示了劫持用户的VoIP注册签名信息和随后的通信。第二次攻击演示了窃听VoIP通讯信息。虽然VoIP是使用不同的信号协议,然而我将着重于SIP攻击,这是一种“IETF标准”相关的攻击。在这两个部署中,其中包含了拒绝服务攻击。
快速介绍SIP ~~~~~~~~~~~~~~ SIP(IETF RFC 3261)是在VoIP通信中使用安装和拆除电话广泛实施的技术标准。下图描述了(高层)SIP将通过电话交换信息。简要说明请看下面。
SIP的呼叫建立和拆除
在上图的步骤1中,用户设备与域名注册着谁负责维护各自区域中所有用户登记记录的数据库。用户在VoIP登记是必须的,因为它能提供远程联系人。当用户Bob想连接到用户Alice,他将向代理服务器发起一个INVITE请求。代理服务器负责路由SIP消息并定位用户。当代理服务器接收到INVITE请求,它试图执行一系列措施,如DNS查询和路由SIP消息等。下面即将看到的是注册劫持。
注册劫持 ~~~~~~~~~~ 下图展示了有效的SIP注册信息,它用于通报用户的联络点。这表明用户的设备将要接受呼叫。
注册请求
该“REGISTER”请求包含了“Contact:”首标,这表明了用户设备的IP地址(无论是VoIP软/硬电话)。当代理收到了一个发来的呼叫请求(一个INVITE),它会执行查找,找出各自用户的联系点。在这种情况下,此用户电话201-853-0102可以发送到192.168.94.70。代理将INVITE请求转交到该IP地址。你可能会注意到端口是5061。其实它违反了RFC 3261。
下图显示了注册请求,事实上,它是由攻击者发送修改后的版本。
一个注册请求修改版本
在一个被用来生成此请求的工具SiVus,下图所示。
使用SiVus生成欺骗注册信息
劫持攻击工作列举如下: 1. 禁用合法的用户注册。可以这样做: ·履行对用户的设备进行拒绝服务攻击 ·撤销注册用户(另一个攻击不包括这个) ·生成一个注册的竞争条件,其中攻击者在较短的时间内发送多次注册请求(如每隔15秒),以推翻合法用户的注册请求 2. 发送一个攻击者IP地址(而不是合法用户)的注册请求
下图演示了攻击的方法:
攻击方法和步骤
第一次VoIP的攻击部署的尾声 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 能够产生这种攻击的原因如下: 1. 该消息是以明文方式发送的,这使黑客能够收集、修改和重播它们; 2. 该消息的SIP信号不支持信息内容的完整性,从而修改和重播攻击无法检测到。
最后,如有疑问请写信件并发送至我的Email(Hack01[at]Live.cn)
# AUTHOR: HACKER NETSPY [CZY]
|