The RTP bleed Bug(RTP协议中的心脏出血漏洞) - APT防御产品

The RTP bleed Bug(RTP协议中的心脏出血漏洞)

RTP流量错误是许多RTP代理中的严重漏洞。这个漏洞使得恶意用户能够注入和接收正在进行的呼叫的RTP流,而不需要被定位为中间人。这可能导致窃听音频电话,冒充,并可能通过重定向正在进行的呼叫造成远程欺骗。

漏洞如何工作?
RTP代理尝试通过代理两个或多个方之间的RTP流来解决影响RTC系统的NAT限制。当NAT到位时,RTP代理软件通常不会依赖通过信令(例如SIP)检索的RTP IP和端口信息。因此,一些RTP代理已经实现了一种自动学习这样的IP和端口元组的机制。这通常通过检查传入的RTP流量并将源IP和端口标记为应该响应的任何传入RTP流量来完成。这种机制,可能被称为“学习模式”,不会使用任何类型的身份验证。因此,攻击者可以将RTP流量发送到RTP代理,并且接收意图用于正在进行的RTP流的呼叫者或被呼叫者的代理RTP流量。我们称这个漏洞为RTP Bleed,因为它允许攻击者接收意图发送给合法用户的RTP媒体流。

RTP代理和RTP堆栈的另一个有趣的行为是有时即使不易受到RTP Bleed的影响,它们将接受,转发或处理来自任何源的RTP数据包。因此攻击者可以发送RTP数据包,这可能允许他们注入其媒体,而不是合法的媒体。我们称这种攻击为RTP注入,因为它允许将非法的RTP数据包注入到现有的RTP流中。这个漏洞可能在RTP代理和端点都可以找到。

两种攻击都需要将RTP数据包发送到由RTP代理分配的用于合法RTP会话的端口。然而,在RTP Bleed的情况下,这导致攻击者接收正在被代理的RTP数据包。因此,这可能导致机密媒体的泄露,媒体插入错误和拒绝服务。攻击者在成功利用时可将RTP流转换为媒体等同物,例如,窃听音频电话或将音频保存到磁盘。

 什么软件易受到影响?
以下软件经过测试,发现易受攻击:

Asterisk 14.4.0

RTPproxy (tested 1.2.1-2ubuntu1 and RTPproxy 2.2.alpha.20160822 (git))

我可以检测出有人是否利用了该漏洞呢?
利用这个bug通常会留下清晰的痕迹,包括电话静音和不稳定的音频。

 推荐的解决方案是什么?
建议使用SRTP来避免此漏洞的机密性和完整性影响。理想情况下,认证的STUN可以帮助向RTP引入某种形式的身份验证。

 参考链接:https://www.rtpbleed.com/


转载请注明出处 APT防御产品 » The RTP bleed Bug(RTP协议中的心脏出血漏洞)

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址