您当前的位置是:  首页 > 资讯 > 国内 >
 首页 > 资讯 > 国内 >

基于SIP的VoIP网络攻击工具以及安全测试讨论

2019-08-12 14:12:19   作者:james.zhu   来源:CTI论坛   评论:0  点击:


  网络安全是互联网发展中最为关键的问题。在基于VoIP/SIP协议部署的融合通信呼叫中心的环境中,安全问题是部署过程中首先考虑的问题。不幸的是,很多用户缺乏安全意识,认为设置了一个比较安全的密码就解决了IP网络的问题。事实上,SIP环境中的网络安全不仅仅局限于密码安全问题,涉及了很多其他方面的防护。任何一个漏洞都会导致SIP网络环境被破坏。另外,今天越来越多的企业用户把通信平台部署到了云端,如果不注意安全设置,公网IP暴露就可能导致用户系统的安全问题,容易被攻击者发动攻击,可能用户的通信系统瘫痪,影响使用。
  笔者今天针对VoIP网络环境的安全管理,攻击工具,VoLTE带来的安全问题,渗透测试工具和开源安全测试流程等相关话题进行逐一讨论。希望读者通过对此文章的学习对网络安全以及相关的专业工具有比较深入和全面的理解。
  以下所有图片来自互联网
  讨论具体的安全问题之前,首先我们简单讨论一下关于安全最顶层的概念。目前,市场上主要使用的安全模式有以下三种:
  • Bell-LaPadula 模式:这种模式是基于对象安全来定义的。
  • Biba 模式:这种安全模式是一个层级的系统,它所针对的是安全对象的集成。
  • Clark-Wilson 模式:这种模式仅关注权限用户对数据的安全集成。
  从目前来看,我们一般的企业网络安全方面大部分从几个方面来控制系统的安全:操作控制,物理控制和管理控制。
  以上三种安全控制的方式分别对网络环境的各个层级进行管理:
  • Management security controls: 管理安全控制主要是从管理角度,系统管理人员通过使用一些管理工具来降低安全风险,主要的风险分析包括: 漏洞分析,渗透分析和风险分析本身
  • Technical security controls: 这里,也称之为 operational security controls。通过技术手段和安全意识来增加系统安全性。主要的技术手段包括:防火墙,加密处理,防病毒软件,员工安全技术培训。
  • Physical security controls: 物理安全控制通过物理设备对安全进行控制,包括:摄像头,门禁管理,生物技术,脸部识别语音识别,传感器等。
  以上各个方面的内容过于庞杂,我们没有精力完整论述所有的话题。今天,我们这里仅讨论从管理控制和安全控制方面针对我们的VOIP网络环境做安全分析和讨论。以下示例简单说明了我们比较感兴趣的一些测试手段,攻击工具等内容。
  我们通过具象思维具体到实际环境来说,我们以目前部署量最大的SIP开源媒体服务器Asterisk平台举例说明。以下是研究人员Ubaid Ur Rehman讨论SIP漏洞时对Asterisk安全分析时所列举的工具和针对的功能。
  Ubaid Ur Rehman列出的漏洞类别:
  笔者专门针对SIP地址公网暴露专门发布过一篇文章,希望读者能够对安全问题引起注意,读者查阅:谁的SIP软交换呼叫中心终端摄像头正在公网裸奔
  从目前各种技术评价和专业人士的建议来看,部署SBC是目前最有效的手段,建议用户在部署呼叫中心,融合通信系统时,首先考虑部署SBC。读者查阅:如何搭建一个完整免费的边界会话控制器(SBC)测试场景
  除了部署SBC以外,安全预防是首先需要考虑到。笔者为读者提供了一系列关于SIP网络安全中经常使用的工具,帮助读者能够了解这些安全问题,检查安全漏洞,及时发现用户平台的问题,起到预防的作用。因为SIP网络的安全类别不同,这些工具所支持的功能也完全不同,它们包括:扫描工具,DDos攻击工具,监听工具,洪水攻击工具,渗透测试工具,干扰服务工具,数据解析工具等。
  关注知识星球SIP攻击工具下载
  关于SIP网络的应用场景很多,部署环境都有各自的特点,技术层面当然也有各种对安全的考虑。目前,比较多的是呼叫中心,云平台,融合通信/IPPBX,企业内外,校园等场景,接入的方式也相对比较多,例如SIP trunk, PSTN等。因此,系统在各个层面都有可能被攻击的风险。
  在介绍具体的技术工具之前,笔者针对工具使用做几点声明。请读者仔细阅读。
  声明:
  笔者列举的以下所有工具不能保证用户系统可以完全正常运行,笔者仅使用过部分工具,其余的是一些研究人员推荐或使用过。读者需要自己亲自编译测试。
  可能一些链接因为网络原因或者其他原因不能访问,请读者自行解决。
  笔者仅分享所有工具的功能说明。如果使用了任何安全工具出现其他安全问题或者引起其他安全问题和法律纠纷,笔者一概不负责。
  本文章中列举的大部分工具都是免费开源的工具,读者可以从很多网络资源获得其安装使用方式。
  为了读者阅读方便和方便了解工具用途,笔者所列出的工具划分类别不一定非常准确,很多工具功能相互交叉。
  安全攻击执行之前,攻击人首先需要对网络架构和具体的网络本身有比较完整的了解,他们可能通过Footprinting,Scan和枚举来获得网络的资源信息,发现安全漏洞。他们然后通过各种工具手段对特定的节点进行攻击,例如网络设施的攻击,网络监听和网络应用解析。具体的步骤如下:
  网络环境侦察,获得网络资源:Footprinting,Scanning,Enumeration
  通过暴露的VOIP网络对网络进行拒绝服务攻击,网络监听和网络敏感数据的解析盗取。
  对VoIP会话安全进行攻击,对应用程序漏洞进行攻击,包括Fuzzing VoIP,干扰服务,对信令进行攻击,修改媒体等方式。
  1、网络扫描
  攻击者通过扫描攻击发现网络部署和各种应用服务的端口信息。开源多种工具支持网络扫描。
  • fping: 类似于ping命令的使用方式,此工具可以对目的地地址发送ICMP echo消息。
  • Nessus:漏洞扫描工具,功能相当强大,支持了商业版本。
  • nmap:功能丰富的网络安全工具,而且支持了更多的互联网安全工具,资料丰富,文档齐全。很多系统安全人员,管理人员使用其工具。
  Zenmap- Nmap界面管理程序,方便用户快速扫描测试。
  Hping2 : TCP/IP的命令行工具,帮助分析数据包的工具,使用方便,简单。如果学习TCP/IP的话,是非常好的学习工具。
  1. snmpwalk:支持SNMP协议的基本工具,可以检测各种支持SNMP的网络终端设备。snmpwalk 可以获取到设备的snmp参数设置。
  2. SNSscan:和snmpwalk一样,支持window环境,可以扫描支持SNMP协议的设备。
  3. SuperScan:免费Windows扫描工具,不开源。
  4. SigPloit:可以测试SS7和SIP等信令的工具,笔者使用它测试过asterisk/SS7集成环境。
  5. VLANping:网络ping工具,可以支持VLAN标签检测。此工具需要源代码编译安装。
  6. metasploit-framework:专业的渗透测试工具,包括了SIP渗透测试的模块,漏洞测试,其功能非常强大,支持GUI和报表功能。
  7. SIPPTS:此工具包括一系列SIP渗透测试套件,包括扫描,密码破解,请求响应收发,漏洞测试等工具。
  8. Mr.SIP: 基于SIP的监控和DDos 攻击工具, 支持网络扫描,网络枚举,DDOS仿真,密码破解,信令修改等子模块。
  RuaaSIP, 支持Windows操作系统的扫描工具,扫描服务器地址和端口,需要联系开发人员获取安装包。
  2、网络枚举
  通过扫描工具枚举网络设备,基本功能和扫描一样,但是可以列出网络环境相关设备终端。
  • netcat: 此工具可以通过UDP/TCP获取用户的网络资源,同时可以和脚本语言集成来测试系统的其他资源信息。
  • SiVuS:此工具是一个内网的SIP扫描工具,可以扫描内网的相关SIP终端。
  • sipsak:此工具是一个SIP扫描,压力测试工具,开发人员和系统管理员可以使用此工具对目的地地址发送option消息,发送洪水攻击消息,解析响应消息等功能。通过使用,笔者认为,它是一个比较实用功能相对比较丰富的关于SIP测试的工具。
  • SIPSCAN:通过名字就可以猜出来其作用。此工具是专门用来扫描SIP网络的工具,适用于比较大型的网络用户环境中,可以扫描IPPBX,呼叫中心和SIP终端设备。当然,结合其相关开发的工具,可以实现认证的检测,监听,INVITE消息发送,分机扫描等强大的功能。
  • smap:扫描枚举网络设备的工具,可以检测到比较完整的网络设备状态,当然也包括了SIP终端和服务器端的设备状态。其工具分为管理员端和终端两种。
  3、拒绝服务攻击
  网络设备的拒绝攻击是攻击者常用的手段之一,攻击者使用的工具也很多。现在我们主要罗列一些常用的工具。
  • DNS Auditing tool:查询DNS服务消息,获取服务器的地址。
  • Internetwork Routing Protocol Attack Suite:一组渗透测试工具,检测网络环境的各种数据,包括protos,icmp工具等。
  • UDP Flooder:对UDP端口发送洪水工具的工具,用户需要联系开发人员下载。
  • UDP Flooder w/VLAN support:通过TAR文件下载,用户自己编译,通过命令行设置对VLAN的攻击设置。
  • Wireshark (formerly Ethereal):非常着名的免费网络工具,用户可以用来排查和分析网络数据,包括SIP,RTP,DTMF等。
  • SIPp:着名的SIP压力测试工具,可以对服务器端发送INVITE消息和语音流等功能。
  • Inviteflood:Linux命令行工具,可以对UDP/IP的SIP网络发送INVITE请求,形成洪水攻击数据环境。其工具也可以用来进行简单的压力测试,安装方便。
  • VulnVoIP:针对比较旧的AsteriskNOW版本创建的漏洞攻击工具,模拟漏洞攻击环境。通过此工具没有模拟一个漏洞攻击的安全环境。
  4、语音数据监听
  VOIP网络中,攻击者也可以使用工具对语音进行监听,盗取用户的SIP消息中的安全数据等攻击手段。比较常见的是获取用户的DTMF按键输入信息。
  • Angst:是一款基于libpcap和libnet开发的侦测工具,可以通过指定端口提取所有的TCP数据包payload。它也可以对所有网络的MAC地址发送数据消息。
  • Cain and Abel:此工具支持多种攻击和密码还原功能,也可以实现对端口的侦听。此工具可能已不能在官方网站下载,用户需要从第三方平台下载。
  • DTMF Decoder:此工具可以用来解析DTMF tone的数据包。是VOIP学习者了解DTMF的比较好的学习工具。一般情况下,攻击者可以对系统的DTMF录音,然后通过此工具解析出用户的按键音。如果攻击者登录系统以后,用户通过语音IVR输入的DTMF,可以通过系统录音提取出来,然后,攻击者可以通过此工具非常方便解析出系统用户的输入数字,例如银行账号密码,身份证等信息。
  • dsniff:此工具是一组工具集,可以实现多种方式的侦测,包括邮箱,网页,SSH等方面的攻击。
  • NetStumbler:针对WLAN检测到工具,可以侦测内网的WLAN终端设备。
  • Oreka:开源SIP录音工具,支持多种录音格式,包括G711/G722,,G729, Opus 等。
  • VoIPong:RTP侦测工具,可以提取SIP等其他协议的语音流,保存格式为WAV。
  • vomit:针对思科SIP电话的录音转换工具,文件转换后可以支持普通播放器播放。此工具好像也不再更新。
  5、网络和应用解析
  工具者通过一些攻击工具对某些设备进行攻击,从其设备相关接口也会反映出来。使用一些互联网解析侦测工具检查其状态也能够大概获知是否受攻击。
  • arpwatch:此工具可以对ARP进行检查,IP和MAC地址修改的检查。
  • ettercap:此工具是一款使用中间人攻击的套件工具。它通过DNS,ARP,DHCP等欺骗手段获取用户信息,并且支持界面和命令操作方式,使用比较方便。
  • fragrouter:一款渗透测试工具,它可以检测系统入侵,并且具有路由功能,能够转发攻击流量数据。
  • siprogue:此工具支持对SIP进行侦查的工具,包括SIP数据响应等监控。它也可以创建RTP流对媒体进行修改解析。攻击人员可以通过其工具进行对SIP实现调度转发,Proxy等功能。
  • XArp:高级入侵检测工具,支持windows和linux环境。
  6、黑盒测试-Fuzzing
  很多情况下,厂家,特别是一些中小型网络产品厂家不可能完全进行所有的安全测试。如果测试的话,厂家测试部门可能也仅限于内部测试部门的测试,所以安全测试可能不是非常完善。如果设备发现安全问题,可能一般用户也只能听从一些大牌公司的建议来进行升级。一些第三方用户可能使用黑盒测试的方法,通过第三方的渗透工具对某些功能进行测试。以下示例说明了一个基本的测试框架。
  Fuzzing就是其中一种方式。使用Fuzzing测试工具对某些网络产品进行渗透测试也可以发现其安全问题。攻击者也同样会使用这些工具来攻击某些系统漏洞。
  • ohrwurm RTP fuzzer:  此工具获取SIP消息以后,获悉了RTP端口以后,从工具可针对SIP电话进行RTP数据流的攻击,发送大量RTP数据流。
  • PROTOS SIP fuzzing suite:对SIP相关模块进行安全测试的套件,可以支持完整的SIP相关测试流程。
  • TCPView:基于Windows的工具,针对网络中的TCP/UDP终端进行扫描,查看其终端状态。
  Kif-此工具支持实现SIP以及相关产品的渗透测试,发现其漏洞。可以实现完整的渗透测试流程。虽然是好久以前的工具,但是它仍然具有参考性。
  SNOOZE-此工具是一个黑盒测试工具,可以对设备进行渗透测试,支持比较复杂的SIP流程和各种复杂场景。
  • Viproy:此工具是渗透测试的工具,可以支持Skinny,SIP 和 MSRP,支持的测试模块包括SIP methods和思科,Poly终端测试模块。
  7、服务干扰
  前面我们介绍的是Fuzzing的渗透测试工具,主要针对SIP终端,代理发送干扰信息造成系统异常。这里,我们针对完整Proxy和SIP终端环境进行洪水攻击测试进行说明。通过洪水攻击的工具发送数据包,可能干扰SIP服务器或者终端的工作状态,严重的当然可以导致SIP服务器重启或者停止工作。通常环境下,我们的融合通信IPPBX需要通过注册的形式支持一些SIP终端注册,如果洪水攻击的终端对服务器或者个别终端发送攻击数据时,就会导致IPPBX或者终端工作异常,注册设备,语音质量不好等问题。
  例如,通过UDP flooder 对某些IP地址发送洪水攻击的数据包( 1,000,000),IP地址可以是IPPBX地址或者SIP终端地址:
  以下几个工具可以分别对IPPBX,UC系统或者SIP终端发送相关的请求消息,达到对目的地进行洪水攻击的目的。如果用户需要对某些特别的请求进行测试时,也可以通过大量发送请求数据来测试其稳定性。
  • INVITE Flooder: 此工具通过发送INVITE请求消息对目的地地址进行攻击,支持UCP/TCP 端口,支持发送数据包大小调整。用户可以通过服务器端或者SIP终端的响应消息来判断服务器被攻击后的状态。
  • RTP Flooder:此工具对RTP端口发送洪水攻击的数据包。当然,用户必须了解RTP的端口,SSID,时间戳等相关消息。
  UDP Flooder: 此工具主要针对一些网关设备进行攻击,一般可靠性,攻击者首先使用UDP Flooder 获得其端口信息,然后使用RTP flooder 或者INVITE工具进行攻击。
  • crcxflood:此工具可以支持对MGCP网关的测试,通过网关的IP地址对MGCP网关发送数据。
  • UDP Flooder w/VLAN support:UDP 测试工具,支持VLAN输入设置。
  • byeflood:发送SIP BYE 请求消息。
  • optionsflood:发送大量的SIP OPTIONS请求。
  • regflood:发送大量的SIP REGISTER注册消息 。
  • subflood:发送大量的SIP SUBSCRIBE 请求。
  8、信令和媒体篡改
  网络攻击的方式方法很多,前面我们讨论了关于洪水攻击和渗透测试的方法。这里,我们介绍一些关于通过控制信令或修改媒体信息来对SIP服务器进行攻击的方式和工具。
  • AuthTool:此工具用来测试SIP账号安全认证方式,破解SIP用户密码。
  • BYE Teardown:此工具对某些特定的SIP设备发生BYE消息,执行拆线。
  • Check Sync Phone Rebooter:对SIP终端发送NOTIFY消息,重新启动SIP终端。
  • RedirectPoison: 此工具可以对某些特定的SIP终端发送INVIET到301响应消息转接此终端到第三方指定的SIP IP地址或者服务器。这种工具具有一定的隐蔽性,它可以对对攻击的目标多种服务进行攻击,例如语音邮箱等。
  • Registration Hijacker:此工具针对SIP注册攻击进行处理。如果攻击成功的话,以前的正常的绑定的URL会从定位服务系统异常,替代的是攻击者留下的地址URL。事实上,这些终端根本不存在。
  • Registration Eraser:此工具支持此注册的系统中删除注册状态。
  • Registration Adder:此工具对目标注册系统添加注册用户,工具可以添加一个指定的contact信息。
  • RTP InsertSound v2.0:此工具可以对RTP语音流插入自定义的语音。
  • RTP InsertSound v3.0 :此工具可以对RTP语音流插入自定义语音流,同时可以自动检测RTP会话终端和端口。
  • RTP MixSound v2.0:此工具可以支持对实时语音混合自定义的语音流,完成对媒体的修改。
  • RTP MixSound v3.0 : 此工具可以支持对实时语音混合自定义的语音流,完成对媒体的修改, 同时可以自动检测RTP会话终端和端口。
  9、新技术带来的安全风险
  首先,笔者不是网络安全控制的专家,仅根据自己的一点经历,结合VOIP网络对用户系统提出一些基本的比较宽泛建议。互联网,5G技术的发展,带动了很多相关技术的发展,一些相对比较新的技术也慢慢进入了商业化的环境中,例如Docker,IoT,SDN, ASR/TTS,开源Asterisk/FreeSWITCH和VoLTE。这些新技术融合必然带来大量的安全隐患。例如,一些攻击者完全可以利用开源Asterisk/FreeSWITCH对某些特定的SIP业务服务器发送大量的呼叫信息,这样就可能导致系统安全风险加大,例如,“呼死你”等类似的外呼呼叫器软件。这种情况现在已经不多,毕竟攻击者也需要非常比较大的成本。但是,最新的IMS网络或3GPP网络正在出现更多的安全问题。Priya Chalakkal发表的一些技术和工具说明了在VoLTE网络环境下如何设置安全的网络环境。他使用不同的工具对IMS网络,SIM卡用户,SIP呼叫进行了仿真测试,为读者提供了非常好的安全环境配置参考。
  具体破解VoLTE的测试方式,读者可以阅读论文:
  https://deepsec.net/docs/Slides/2017/How_secure_are_your_VoLTE_and_VoWiFi_Calls_Sreepriya_Chalakkal.pdf
  10、系统性的安全测试
  我们前面所讨论的基本上都是一些零散的针对某些特别功能的工具,没有进行完整的系统的安全测试标准。安全测试是一个非常专业和庞大的讨论话题,笔者自认为没有那个能力来完整解释全部的内容。因此,笔者给读者推荐一些相对比较专业,在成本可控的范围内能够实现的安全措施手段。为了保证系统的安全性,系统用户不仅需要一定的设备软件来防止降低出现安全漏洞,安全管理人员应当需要了解一定的专业的安全测试流程和指导说明。现在,笔者重点介绍两个比较重要的关于安全测试的要点内容。除了我们前面讨论的渗透测试工具metasploit-framework以外,读者也可以参考开源安全测试手段的手册-OSSTMM(Open Source Security Testing Methodology Manual),这个手册比较完整地介绍了关于安全测试的所有相关问题和要点,可以作为测试人员的参考手册。在OSSTMM的第十章中,重点对涉及通信的测试做了详细说明,包括其测试的相关应用方面的测试,例如PBX,语音邮箱,传真,远端访问测试,ISDN测试,X.25 网络测试等。
  11、总结
  VoIP安全的问题是比较敏感的话题,很多用户因为安全设置不当导致系统出现电话盗打,系统故障等问题,严重影响了通话的正常进行。在本文章中,首先对安全的定义做了简单介绍,然后介绍了安全控制的几个方面的内容。我们通过一系列的工具工具为读者提供了攻击者针对不同的场景进行攻击。在攻击测试中,渗透测试工具,信令修改工具,语音媒体修改是经常遇到的问题。因此,笔者介绍了目前市场上大部分的攻击工具,帮助用户快速全面了解这些工具的使用方式。最后,因为新技术的不断出现,笔者分享了关于VoLTE破解的讨论,帮助读者提高新技术的风险意识。当然,如果需要完整了解安全测试,读者需要一定的专业测试工具,和完善的流程,需要读者根据笔者最后的建议,学习开源安全测试手册和渗透测试技术,在自己的测试环境中对系统安全进行完整的测试。
  因为本人水平有限和篇幅的关系,没有讨论专业的商业测试工具,也没有讨论目前出现的比较大的开源软交换,开源SIP协议栈,媒体服务器的功能,这些呼叫功能其实也存在非常大的安全隐患,例如呼叫日志泄漏。其实,这些软件都可以用来作为非常安全的测试工具。更多关于VOIP网络安全的内容读者可以下载相关的开源服务器终端来进行进一步学习。
  参考资料:
  https://www.ee.oulu.fi/research/ouspg/PROTOS_Test-Suite_c07-sip
  https://www.ee.oulu.fi/roles/ouspg/Protos
  http://testlab.ics.uci.edu/interstate/
  http://www.isecom.org/mirror/OSSTMM.3.pdf
  https://github.com/fozavci/viproy-voipkit
  http://www.hackingvoip.com/sec_tools.html
  https://tools.kali.org/stress-testing/rtpflood
  https://github.com/foreni-packages/siparmyknife/blob/master/siparmyknife.pl
  https://www.darknet.org.uk/2008/08/sipcrack-sip-login-dumper-hashpassword-cracker/
 
   
  SIPlab@知识星球学习SIP语音相关技术
  asterisk@知识星球免费获取关于Asterisk的完整知识资料
  关注微信公众号:asterisk-cn,获得有价值的Asterisk行业分享
  Asterisk freepbx,FreeSBC技术文档: www.freepbx.org.cn
  融合通信商业解决方案,协同解决方案首选产品:www.hiastar.com
  Asterisk/FreePBX中国合作伙伴,官方qq技术分享群(3000人):589995817

 

【免责声明】本文仅代表作者本人观点,与CTI论坛无关。CTI论坛对文中陈述、观点判断保持中立,不对所包含内容的准确性、可靠性或完整性提供任何明示或暗示的保证。请读者仅作参考,并请自行承担全部责任。

专题

CTI论坛会员企业