SIP协议攻击

SIP协议攻击

来源 https://mp.weixin.qq.com/s/zJT-qW4GRL_adyiYZPJiog

 

中午接到某司应急排查工单,现象是某视频平台疑似大量外联,要求我们应急排查下看是否遭到入侵有无数据泄露。

处理流程:接单-->进客户现场询问情况-->排查安全设备流量安全日志-->定位目标内网服务器-->登录服务器进行排查-->给出测试报告

现象截图,涉及隐私只截取部分:

image

image

image

经过排查,发现此次攻击属于sip协议的暴力破解,疑似ddos,确实在短时间流量比较大,并无数据泄露
安全加固的建议:黑名单加黑ip,采用防火墙白名单,sip协议在视频平台侧开启安全模式。

下面我们学习一下SIP协议和常见的安全问题和解决方案:

SIP(Session Initiation Protocol,会话发起协议)是现代 VoIP(网络电话)和统一通信(UC)系统的核心控制协议。由于 SIP 协议早期设计偏向开放与易用性,且默认使用明文传输(UDP/TCP 5060 端口),在实际应用中面临多种安全威胁。

一SIP 协议常见的安全问题及实例

1.窃听与隐私泄露(Eavesdropping & Information Disclosure)

  • 原理:SIP 信令与 RTP 媒体流默认未经加密(明文)。攻击者在同一局域网或传输路径上进行抓包,即可解析出呼叫双方的号码、IP 地址,甚至还原通话语音。
  • 实例:攻击者利用 Wireshark 在公司 Wi-Fi 中抓包,过滤 sip 协议,直接提取 INVITE 请求中的 From/To 字段,并通过内置的 VoIP 通话还原功能直接播放录音。

2.分机爆破与国际盗打(Toll Fraud & Brute Force)

  • 原理:攻击者向 SIP 服务器(PBX)批量发送 REGISTER 或 INVITE 请求,猜测弱口令分机。一旦成功注册,攻击者会利用该分机拨打高额付费电话或国际长途,将巨额账单转嫁给企业。
  • 实例:黑客扫描到企业暴露在公网的 5060 端口,使用工具对 1001-1050 分机进行字典攻击。成功破译 1008 分机(密码为 1008)后,通过该账号以每分钟数美元的价格向海外高费率号码持续拨号。

3.注册劫持(Registration Hijacking)

  • 原理:SIP REGISTER 消息用于将用户 URI 绑定到具体的 IP 地址(Contact Header)。攻击者通过伪造或重放 REGISTER 报文,将合法用户的 Contact 地址修改为攻击者的 IP。
  • 实例:员工 A 的电话原本绑定在 192.168.1.50。攻击者向 PBX 发送伪造的 REGISTER 报文,将 A 的 Contact 修改为攻击者控制的 192.168.1.99。此后所有打给 A 的电话都会被路由至攻击者处被监听或伪接。

4.身份伪造与主叫号码 spoofing(Caller ID Spoofing)

  • 原理:SIP 消息头部(如 From、P-Asserted-Identity)非常容易被篡改,且如果 PBX 未校验入站 Trunk 的合法性,攻击者可以伪造任意号码向内网用户发起呼叫。
  • 实例:攻击者向企业员工拨打电话,将 SIP From 头部篡改为 From: "IT Dept" <sip:8000@company.com>,发起社工诈骗,诱骗员工提供内部账号。

5.拒绝服务攻击(DoS / DDoS & SIP Flood)

  • 原理:利用 SIP 解析器的消耗性特点或缺乏速率限制的漏洞,短时间内向目标发送海量的 INVITE、REGISTER 或畸形数据包,造成 PBX CPU 100% 或内存耗尽。
  • 实例:攻击者通过僵尸网络发送大量未认证的 INVITE 请求(INVITE Flood),PBX 忙于处理 401/407 认证回应,导致正常员工无法拨打和接听电话。

二安全测试与评估工具及使用示例

1.SIPVicious(SIP 扫描与爆破套件)

  • 简介:最经典的 SIP 安全测试开源工具包,包含 svmap(服务扫描)、svwar(分机枚举)、svcrack(密码爆破)等工具。

  • 使用方法与例子:

    • 步骤 1:扫描目标网段中的 SIP 服务

      Bash

      ●●●CODE
      svmap 192.168.1.0/24 -p 5060
    • 步骤 2:枚举存在的分机号(如 1000 到 1050)

      Bash

      ●●●CODE
      svwar -e 1000-1050 192.168.1.200
    • 步骤 3:对发现的分机 1002 进行密码字典爆破

      Bash

      ●●●CODE
      svcrack -u 1002 -d passwords.txt 192.168.1.200

2.Wireshark(流量抓包与 VoIP 还原)

  • 简介:强大的网络协议分析工具,内置专门针对 VoIP/SIP/RTP 的图形化分析功能。
  • 使用方法与例子:
    1. 使用过滤规则捕获 SIP 流量:sip || rtp
    2. 菜单栏选择 Telephony -> VoIP Calls,Wireshark 会自动识别出捕获到的所有通话。
    3. 选中某个通话,点击 Play Streams,即可直接监听未加密的通话音频;或点击 Flow Sequence 查看完整信令交互图。

3.Sipsak(SIP 诊断与压力测试工具)

  • 简介:命令行工具,用于向 SIP 服务器发送自定义 SIP 请求,可测试 OPTIONS 响应或进行简单的 Flood 攻击测试。

  • 使用方法与例子:

    • 向目标发送 OPTIONS 测试存活及返回头(Banner 收集):

      Bash

      ●●●CODE
      sipsak -v -s sip:192.168.1.200
    • 发起洪泛测试(评估服务器抗 DoS 能力):

      Bash

      ●●●CODE
      sipsak --flood -s sip:1001@192.168.1.200

三企业级 SIP 安全解决方案

针对上述问题,企业需要构建包含协议加密、访问控制、边界防护与行为审计的纵深防御体系:

1.强制协议加密(TLS + SRTP)

  • 信令加密(SIP-TLS):将默认的 UDP/TCP 5060 端口切换至 TCP 5061 (SIP-TLS),使用 TLS 证书加密信令传输,防止中继劫持与明文窃听。
  • 媒体流加密(SRTP):开启 SRTP (Secure Real-time Transport Protocol) 对语音/视频数据流加密,使得即使 RTP 包被抓取也无法还原音频。

2.部署会话边界控制器(SBC, Session Border Controller)

  • SBC 是 VoIP 网络的“应用层防火墙”,应部署在企业网络出口:
    • 拓扑隐藏(Topology Hiding):隐藏企业内网 PBX 的 IP 地址和结构。
    • 流量整形与限速(Rate Limiting):防范 SIP Flood / DoS 攻击。
    • 深度包检测(DPI):拦截基于 User-Agent 特征(如匹配 friendly-scanner 或 sipvicious)的恶意扫描报文。

3.严格的身份认证与访问控制

  • 强密码策略:强制分机使用长度 16 位以上、无规律的强 SIP Password,禁止使用分机号作为密码。
  • 网络隔离与 IP 白名单:
    • 将 VoIP 设备隔离在独立的 Voice VLAN 中,与办公数据网段剥离。
    • 拒绝公网直连 PBX 的 5060 端口。若存在远程办公员工,强制要求通过 VPN 或开启 SBC 的 TLS 远端注册。
  • 禁用匿名/游客呼叫:在 PBX(如 Asterisk、FreeSWITCH)配置中设置 allowguest=no,禁止未认证的 SIP 匿名路由。

4.实时风控与盗打防护(Toll Fraud Protection)

  • 呼叫限制与上限预警:在 PBX 和运营商侧设置呼叫限制,默认禁用所有国际长途或高费率区号(仅对有业务需要的账号单独开放),设置单日/单月话费上限。

  • 部署入侵防御与联动锁 IP 工具(如 Fail2ban):

    配置 Fail2ban 监控 PBX 认证日志,当同一 IP 出现多次(如 1 分钟内 5 次)401 Unauthorized 失败响应时,通过 iptables 自动封禁该 IP 24 小时。

 

======== End

 

posted @ 2026-10-04 21:59  lsgxeva  阅读(6)  评论(0)    收藏  举报