本文详细介绍浅析:WLAN中VoIP的安全隐患
还可以使用CANCEL的方法来中断呼叫,利用Pythonscript来实施攻击,在控制模式下的无线接口建立一个端口。这个软件可以捕获SIP的呼叫建立,特别是其中的INVITE消息。当攻击者截获了INVITE消息,自己建立了一个Ad hoc SIP CANCEL消息,其中包含的Call-ID与INVITE请求消息中的标签是完全一样的。
伪造的CANCEL消息被插入到了无线信道里去。插入的数据包中包含的目的地址和源地址,无论从IP层或MAC层来看,都是和INVITE请求消息一样的。
6 建立错误呼叫
攻击者能创建一条SIP INVITE 消息,分别发给呼叫双方的用户代理,在他们之间建立一次错误的呼叫,这时被攻击者根本无法察觉到有任何的异常。INVITE消息中包含了相同的Call-ID ,Cseq以及带宽参数,但是两条消息中的源地址和目的地址是被抹去了的。由于SDP协议的要求,INVITE消息中必须包含相同的关于语音编码的要求信息,一个简单的对RTP业务流的分析就能获得相关的UDP端口值等信息。
在发送了两份INVITE消息之后,被攻击的设备开始振铃和发送SIP 180 Ringing消息给发送出INVITE request请求的对端,由于这次是一次非法的呼叫,设备不能识别,所以选择了丢弃。当用户选择了应答呼叫,软件电话发送SIP 200 OK的消息给它认为是发送INVITE request的那一方,同样的,这个消息也被丢弃。
当攻击者成功的捕获了关于错误呼叫(建立在有正确Call-ID的基础上)的200 OK的消息,就会对同样的源地址和目的地址发送自己的INVITE请求。大部分的SIP软件电话能至少同时处理三个呼叫,因此攻击者也能在同一个WLAN同时对三个呼叫发起攻击,至少能使一个呼叫失败。这是因为,RTP的数据包将会发送到目的地,但是不会送到发起呼叫的一方,并且这个消息会被丢弃。这种攻击会造成在网络中同时存在多个SIP呼叫。即使持续时间很短,这些呼叫仍然会造成网络的拥塞,如果情况一直持续,所有的在配置好路由表中的终端都会无法呼叫。[Page]
来源:豆豆网转载 作者:全球IP通信联盟 责编:豆豆技术应用