甚至许多IT专业人士都没有听说过会话发起协议(SIP),所以几乎可以肯定您的用户没有。但是,除非你使用的是完全专有的ip电话(VoIP)系统,那么SIP就是你生活的一部分。这是因为SIP是在大多数版本的VoIP中进行和完成电话通话的协议,无论这些通话是通过您的办公电话系统、智能手机,还是通过苹果Facetime或Facebook Messenger等应用程序进行的。
当您拨打电话时,是SIP与接收设备联系,商定通话的性质,并进行连接。在此之后,另一个协议(有几个)携带调用的内容。当呼叫结束,双方断开连接时,SIP又是终止呼叫的协议。这听起来可能不太像一个安全问题,但事实上,它是。
这是因为SIP最初的设计并不安全,这意味着它很容易被黑客攻击。甚至大多数IT专业人员都不知道的是,SIP是一种非常类似的基于文本的协议超文本标记语言(HTML),它的地址与你在典型的电子邮件中遇到的类似简单邮件传输协议(SMTP)。标头包含有关调用方设备的信息、调用方请求的调用的性质以及使调用工作所需的其他详细信息。接收设备(可以是移动电话或网络电话,或可能是一个私人分行交换或者PBX),检查请求,并决定它是否可以容纳它,或者它是否只能处理一个子集。
然后,接收设备向发送方发送一个代码,以指示呼叫是否被接受。有些代码可能表明呼叫无法完成,就像当网页不在您请求的地址时,您看到的恼人的404错误一样。除非请求加密连接,否则所有这些都以纯文本的形式进行,可以在开放的internet或您的办公室网络上传输。甚至有现成的工具可以让你监听使用Wi-Fi的未加密电话。
保护SIP呼叫
当人们听说底层协议不安全时,他们通常会放弃它。但是在这里您不必这样做,因为保护SIP调用是可能的。当设备想要连接到另一个SIP设备时,它使用一个看起来很像电子邮件地址的地址,以SIP开头,以@yourdomainname扩展名结束。使用这样的地址将允许SIP连接建立一个电话,但它不会被加密。要创建加密呼叫,您的设备需要在地址开头添加SIP而不是SIP。“SIPS”表示到下一个正在使用的设备的加密连接传输层安全(TLS)。
即使是安全版本的SIP也存在这样的问题:当设备将呼叫从开始路由到结束时,设备之间存在加密隧道,但在呼叫通过设备时却不一定存在。事实证明,这对各地的执法机构和情报机构都是一件好事,因为它使得监听可能被加密的VoIP电话成为可能。
值得注意的是,可以单独加密SIP调用的内容,这样即使调用被拦截,内容也不容易理解。实现这一点的一种简单方法是通过虚拟专用网(VPN)。但是,为了业务目的,您需要对此进行测试,以确保您的VPN提供商在隧道中为您提供足够的带宽,以避免调用降级。不幸的是,SIP信息本身不能加密,这意味着可以使用SIP信息通过劫持或欺骗SIP呼叫来获得对VoIP服务器或电话系统的访问,但这将需要相当复杂和有针对性的攻击。
建立虚拟局域网
当然,如果所涉及的VoIP电话与您的公司有关,那么您可以建立一个虚拟局域网(VLAN)只适用于VoIP,如果您使用VPN连接到远程办公室,那么VLAN也可以通过该连接传输。VLAN,正如在我们的故事中描述的VoIP安全的优点是有效地为语音通信提供一个单独的网络,这在许多原因中都很重要,包括安全性,因为您可以以各种方式控制对VLAN的访问。
问题是,你不能计划一个来自你公司内部的VoIP电话,你也不能计划一个来自电话公司的中央办公室交换机的VoIP电话,如果你连上了其中一个的话。如果您有一个电话网关,它可以接受来自外部的SIP呼叫,那么您将需要有一个支持SIP的防火墙,它可以检查消息内容恶意软件以及各种类型的欺骗。这样的防火墙应该阻止非sip通信,还应该配置为会话边界控制器。
防止恶意软件入侵
与HTML一样,SIP消息也可以将恶意软件引入你的手机系统;这可以有多种形式。例如,坏人可以向你发送类似物联网(IoT)的攻击,在手机上植入恶意软件,然后用来向命令控制服务器发送信息或传递其他网络信息。或者这种恶意软件可以传播到其他手机,然后用来关闭你的手机系统。
也可以使用感染的SIP消息攻击计算机上的软电话,从而感染计算机。这种情况已经发生在苹果Macintosh的Skype客户端上,而且很可能也会发生在其他任何软电话客户端上。这种可能性越来越大,因为我们看到越来越多的软电话从多个VoIP和协作供应商涌现出来,包括Dialpad,RingCentral办公室(RingCentral网站19.99美元),Vonage业务云等等。
防止此类攻击的唯一方法是,像对待数据网络一样对待组织的VoIP系统的安全问题。这在某种程度上是一个更大的挑战,因为不是所有的安全产品都支持SIP,而且SIP不仅仅用于语音应用程序——文本和视频会议这只是另外两个例子。同样,不是所有的VoIP网络提供商都能检测到虚假的SIP呼叫。这些都是你在与每个供应商接触之前需要解决的问题。
但是,您可以采取步骤配置您的端点设备,以便它们需要SIP身份验证。这包括要求有效的统一资源标识符(URI)(类似于您常用的URL)、可以进行身份验证的用户名和安全的密码.因为SIP依赖于密码,这意味着您必须对SIP设备而不仅仅是计算机强制执行强密码策略。最后,当然,你需要确保你的入侵检测和防御系统,无论它们发生在你的网络上,也理解你的VoIP网络。
所有这些听起来很复杂,在某种程度上确实如此,但实际上只是将VoIP对话添加到与网络监控或it安全供应商的任何购买对话中。随着SIP在许多业务组织中发展到几乎无处不在的状态,IT管理产品的供应商将越来越重视它,这意味着只要IT购买者将其作为优先事项,情况就会改善。