部署STIR/SHAKEN加密技术目前存在的问题和挑战

电子说

1.3w人已加入

描述

最近几年,电话诈骗和骚扰电话一直困扰着我们每个人都生活,严重干扰了我们正常的工作和正常的通信往来。在日常生活中,我们几乎天天收到几个装修房子,金融贷款,卖房子等营销电话。有时,我们的老人经常收到莫名其妙的电话,谎称是孩子的亲戚朋友等帮助打钱。虽然国家相关部门每年进行整顿,但是效果好像也不是那么明显。目前,我们主要的办法只能通过手机APP对来电的标识来帮助用户鉴别是否是骚扰电话。个人认为,这不是一个真正解决问题的办法,解决骚扰电话的问题还是需要真正从源头抓起。

同样,因为基于互联网的VOIP市场的发展,国外也存在类似的问题。着名的美国运营商AT&T,Verizon等都使用多种很多办法来解决骚扰电话的问题。但是,效果也不是特别明显,手机端处理的办法还是不能彻底解决骚扰电话的源头问题。最近一年,美国很多运营商都积极采用STIR/SHAKEN加密技术来防止骚扰电话,FCC也不断呼吁,希望在最近一到两年把STIR/SHAKEN逐渐发展为一个规范,让运营商强制使用,同时着名通信设备厂家也逐渐支持了这个功能,以便从源头彻底解决骚扰电话拦截问题。

下面,我们针对STIR/SHAKEN的使用背景,具体的技术原理,结合SBC部署来拦截骚扰电话进行分析,并且对部署STIR/SHAKEN加密技术目前存在的问题和挑战进行讨论。

 1、国内国外骚扰电话存在现状

中国人可以非常快速接受很多新奇的事务。电话也一样。1876美国人贝尔发明了第一步电话,就在第二年一个中国人就已经使用了电话。

图片均来自网络

郭嵩焘是当时的驻英公使,一次视察英国的工厂时体验了电话的神奇。他在日记里写下使用电话的心得体会。

这是中国人第一次接触并使用电话。郭嵩焘在日记里写下使用电话的心得体会:“其语言多者亦多不能明,惟此数者分明。”

http://www.360doc.com/content/12/0529/10/5477831_214443366.shtml

谁能想到,他的后代把电话发挥到了极致。骚扰电话已经成为了一个公害。骚扰电话的主要类型分为诈骗电话和利用拨号软件实现和机器人实现的骚扰电话。如果读者搜索百度关键词”骚扰电话“的话,出现了大量官方媒体和其他媒体的关于骚扰电话的报道。

但是,骚扰电话的处理和拦截手段不多,很多用户抱怨运营商不作为,有利益绑定等等说法。很多部门好像也正在落实规定法规等。这些手段都是一些行政手段,究竟有多大的作用我们不得而知。

运营商的态度和行动

根据飞象网的一份关于骚扰电话的报道,我们可以看到,骚扰电话的几个特征:

SBC

另外,根据这篇报道的建议,作者建议使用手机APP,提高安全意识和控制管理运营商号码几个方面来进行处理。这些办法听起来非常官方,不能真正解决骚扰电话的问题。

同样,国外的手机用户也面临着类似的问题,通过自动外呼的呼叫中心软件批量呼叫用户,让很多用户非常反感这些骚扰电话。我们通过几个数据来介绍一下美国市场的情况。

根据YouMail的报道,仅2019年一月份,就产生了5.2 billion 机器人骚扰电话的呼叫,推广类型包括信用卡推销,金融产品销售,诈骗老人等方式。

SBC

根据NBS News的另外一个调查报告说明,从2016年的2 billion,逐年增加到可能2019年,每个月骚扰电话的6 billion。从发展趋势来看,美国的骚扰电话也是不断增加。

SBC

根据YouMail的调查数据,骚扰电话呼叫类型的分布可能和中国有一些不同,缺少了房地产,卖房子的(中国特色),主要分布在信用卡推广,学生贷款,商业贷款等业务。

SBC

因为骚扰电话的干扰,导致很多企业呼叫业务和正常的手机用户的通信受到了严重影响。根据NeuStar的调查报告,企业客户联系频率较低了8%到20%,75%的消费者漏接了重要电话,88%的消费者不愿意接听陌生人的来电。

 2、目前国内拦截骚扰电话的手段

在上面的讨论中,我们分别看到了国内和国外的骚扰电话的发布和业务构成。从这些数据来看,业务类型基本上都相同。但是,拦截处理骚扰电话的处理方式可能有所不同。笔者不是相关部门的管理人员,不对管理部门的做法发表评论。笔者仅从一般用户角度来看观察对骚扰电话的处理方式包括以下几种:

发动群众,自己解决。让用户自己安装手机APP 标记软件,如果接听后发现是骚扰电话,那么就做一个标记。同样电话号码呼叫到其他用户,其他用户就会提示标记属性。来电是骚扰电话还是其他,这个标记行为完全取决于用户自己的判断好恶。

相关部门运营商客户,下达文件整顿。通过运营商和相关部门对骚扰电话的整顿也可以立竿见影,骚扰电话马上消失了一段时间。但是,这恰恰说明,运营商明显部门知道如何处理骚扰电话。这也是比较可行的手段。

运营商拦截,最近几个运营商都提供了拦截服务,通过短信开通就可以。据说,这个办法可行,但是也有很多用户投诉产生了其他问题。

目前,笔者看到的是以上几种方式来处理骚扰电话。但是,这样处理的方式可能有几个方面的问题。用户标记的方式实际上也是骚扰,计费已经产生,另外标记的主观性很强,没有彻底解决骚扰电话这个问题。相关部门的其他整顿具有一定的时效性。一段时间后,骚扰电话又死灰复燃,每年3.15上提到这个问题,就说明根本没有彻底解决这个问题。所以,我们应该考虑如何从法律角度和技术手段上彻底减少骚扰电话或杜绝骚扰电话。当然,笔者水平有限,运营商肯定有完全有效的办法来杜绝骚扰电话的呼出。

 3、目前国外的现状和将要采取的措施

因为骚扰电话也涉及了运营商自己的利益,和国内骚扰电话的处理的态度一样,国外的运营商也有时对骚扰电话听之任之。因为很多用户的投诉和FCC的强力介入,美国运营商开始了大规模的通过相关法律并且使用技术手段来杜绝骚扰电话。

根据福布斯发布的新闻,美国着名运营商Verizon 发布了基于手机端的APP来防范骚扰电话。通过此APP可以判断出呼叫方号码是否是一个安全的,可信任的用户来电号码。

在2018年,美国几大电信运营商都相继发布使用STIR-SHAKEN加密技术来杜绝骚扰电话的技术方案和实现路线图。美国FCC CTO也非常头疼骚扰电话的问题,他经常收到用户关于骚扰电话的投诉,表示压力山大。

现在,美国/加拿大强烈要求运营商配合法律部门制定法律来彻底解决骚扰电话的问题。我们看一下他们具体的行动:

加拿大政府颁布法律要求运营商在2019年3月以前使用STIR/SHAKEN加密技术来解决骚扰电话问题

2018年4月份,ROBOCOP 计费模式启用,要求电话运营商验证电话号码是准确的。

美国FCC发布了使用SHAKEN的时间表,规定在2019年3月份之前使用SHAKEN加密证书方式。

Verizon 响应了FCC的要求,已经在2018年开始部署SHAKEN,大部分部署将在2019年完成。

T-Mobile 和 Comcast也宣布开始使用SHAKEN加密方式来拦截骚扰电话。

And to address the challenges presented by Caller ID spoofing, Verizon is committed to deploying the STIR/SHAKEN authentication standard in our networks

https://ecfsapi.fcc.gov/file/105072444807124/2018%2005%2007%20Verizon%20Robocall%20Ex%20Parte.pdf

 美国FCC要求运营商部署STIR/SHAKEN的时间:

  4、STIR/SHAKEN技术核心概念

从美国运营商对骚扰电话的态度和部署中,我们可以看到。大部分运营商准备使用STIR/SHAKEN的方式来解决骚扰电话的问题。首先,让我们来看看关于STIR/SHAKEN 的技术由来。

在美国,根据很多数据的统计,以前的传统PSTN和手机用户的骚扰电话的数量其实不多,毕竟传统PSTN网络的呼出环境是由运营商控制的,手机用户的呼叫也是由运营商控制的,呼出用户的身份非常容易确认(这里,中国运营商的除外)。最大的问题是来自于企业IPPBX用户,因为现在很多基于IP的开源电话系统非常发达,而且可以通过SIP或者其他线路接入到系统中,如果这样的呼叫通过企业PBX呼出以后,就会导致大量的骚扰电话和缺乏认证的号码。所以,STRI/SHAKEN协议真正解决的问题是针对企业IPPBX或者呼叫中心产生的呼叫。

SBC

通过以上的简单示例,我们可以知道,其实大部分运营商面对的骚扰电话的都是来自于网络。根据COMCAST的调查,50%的骚扰电话是来自于IP网络。因此,IP网络的管理是一个非常大的挑战。

另外,有效的呼入号码不是一定是可靠的号码。几个运营商呼入到本地电话以后,用户终端看起来是一个本地的正常的号码,但是本不能说明这个号码的可信度。很多骚扰电话本身就是一个正常的号码。因此,运营商必须通过一种机制来对号码进行标识,说明其用户号码的信誉度。

SBC

因此,控制网络呼叫才可以真正解决问题。SHAKEN就是针对互联网SIP电话的一种呼叫身份验证机制,通过和STRI认证机制结合来解决骚扰电话拦截问题。

那么,STIR/SHAKEN到底是一种什么协议呢? 简单来说,其实就是通过呼叫呼出时,对呼叫号码加认证,呼叫到被呼叫方前,目的地接听方首先确认这个呼叫的身份。如果是骚扰电话,则过滤。这里需要证书签发和验证两个部分来共同处理呼叫身份问题。这里仅做简单介绍,在后续章节我们会具体介绍整个呼叫流程的验证机制。

SBC

  STIR/SHAKEN需要注意的几个核心要素:

Secure Telephone Identity Revisited (STIR),参阅rfc8226

Signature-based Handling of Asserted information using toKENs (SHAKEN),参阅draft-ietf-stir-passport-shaken-08

Authenticated Identity Management in the Session Initiation Protocol (SIP),参阅rfc8224。它用来支持签发认证(Signs)和验证服务处理(verifies)。

呼叫号码信誉度分类(Attestation,attest):A,B,C级。对用户号码的信誉度进行分类,标识用户的可信度。

origid原始呼出地址标记,对原始呼出地址进行标记,方便跟踪呼叫来源。

现在,我们首先介绍一下STIR协议,它的目的是创建电子签名来支持被呼叫方的认证,可以支持在不同地址的签名创建和验证。STIR可以解决用户和用户呼叫之间的认证问题。但是,因为IP网络的发展,STIR已经不能满足这个要求,所以必须使用SHAKEN来解决运营商和运营商之间的认证问题。

SBC

SHAKEN通过STIR来配合运营商解决了安全问题和部署的协调。SHAKEN首先在原始呼叫发起时,创建一个电子证书 PASSporT,然后对呼出的号码标识一个信誉度分类(attest),最后添加一个origid原始呼叫地址。对端落地后,首先检测电子证书,然后识别号码的信誉度来决定是否继续对终端进行呼叫。

SBC

在原始运营商呼叫呼出之前,运营商需要对呼叫号码标识一个信誉度分类,根据ATIS(ATIS-1000074)的定义,目前的attest定义为A,B和C三个分类:

A-Full Attestation:A类信誉度必须满足其定义的三个条件和一些附加注意事项。具体的条件参阅ATIS的说明。

B-Partial Attestation:B类信誉度标识必须满足其定义的三个条件和一些附加注意事项。具体的条件参阅ATIS说明。这里的条件和A类条件的不同在于签发证书的和呼叫号码的验证关联关系。A类信誉度标识已经获得验证关联,B类信誉度标识没有获得验证关联。

C-Gateway Attestation:C类信誉度标识必须满足两种条件

SBC

汇总以上三个分类读者可以看出其信誉度标识的不同,当然,A分类是最高级别。

PASSporT提供了一种证书签发的架构,包括了令牌使用和其类型,payload数据。具体的详解,读者可以参阅draft-ietf-stir-passport-11。其头消息包括了type,alg算法和x5u头参数设置。另外,其payload包含了目的地地址,SIP账号信息,tn号码和初始呼叫地址,orig等参数。

SBC

在PASSporT的扩展中,attest应该设置为以上三种信誉度标识,并且是完全大写字母。扩展规范中增加了SHAKEN的其他参数的支持,包括rcd支持(AS和VS),对此有兴趣的读者可以参阅:

PASSporT Extension for Rich Call Data draft-ietf-stir-passport-rcd-03

https://tools.ietf.org/html/draft-ietf-stir-passport-rcd-03

其扩展到payload构成如下:

SBC

最后,我们介绍一下origid的使用目的。在上面的介绍中,我们已经说明,因为SHAKEN是针对IP网络中进行证书管理的,为了能够跟踪或运营商管理分析管理的要求,origid作为一个重要的参数添加在了PASSporT消息头中。这样做的目的在于在呼叫路径上的运营商可以非常方便跟踪呼叫来源和初始运营商的地址。IMS的CVT可以通过这些数据来分析此呼叫的信誉度标识,并且保存其相关记录,同时,运营商之间也可以通过origid加信誉度分类对某些运营商提出相应的报告。

SBC

 5、STIR/SHAKEN具体的工作流程

因为现在的主流网络是IMS的网络环境,很多网络电话也来自于IMS网络中。因此,我们通过比较典型的IMS网络架构来解释STIR/SHAKEN的实现过程。

SBC

这里,笔者简单介绍一下在3GPP网络中负责处理STIR/SHAKEN的几个核心功能模块:

STI-AS, 呼叫服务发起方运营商的认证服务和其他应用,负责处理SKS证书和创建PassporT签名功能和TLS加密传输。关于此规范草案说明,读者可以查阅:draft-ietf-stir-rfc4474bis。

SKS:负责保存Secure Key Store支持STI-AS访问。

STI-VS:落地运营商的认证验证服务器支持SIP应用服务器,结合公钥来验证呼叫号码的信誉度标识。关于此规范草案说明,读者可以查阅:draft-ietf-stir-rfc4474bis。

CVT:一个第三方可选的服务器,可以存储origid消息,帮助运营商跟踪原始呼叫方的地址和其他信息,它也可以用来支持对被呼叫方显示验证结果。

STI-CR:一个公钥服务器模块,通过对证书服务的访问。

现在,我们通过以上IMS网络中的STIR/SHAKEN工作原理来具体描述整个STIR/SHAKEN的工作流程。

SBC

根据ATIS的规范,其处理过程大概经过以下十四个过程:

呼叫方首先UA通过CSCF注册,对CSCF进行认证要求,然后创建一个INVITE并且携带本机的电话号码身份。

原始呼叫方的CSCF添加一个P-Asserted-Identity身份号码表示这个原始UA的呼叫号码。然后CSCF对STI-AS触发一个IVITE请求。

原始呼叫方运营商首先决定是否可以对这个INVITE请求进行服务合约判断,是否认定这个用户和运营商签定相关服务合同。通过运营商的认定以后,STI-AS对SKS请求一个专门针对此个INVITE的私钥。

SKS返回一个私钥,然后STI-AS签发一个INVITE,在头消息中使用caller id增加一个STIR值。

STI-AS返回这个INVITE到CSCF。

原始呼叫方运营商CSCF通过路由解析到IBCF设备

然后通过路由地址路由到落地端的IBCF,通过SIP对接。

落地运营商收到INVITE以后,然后路由到落地运营商的CSCF。

落地运营商的CSCF触发一个INVITE到STI-VS验证服务模块。

落地运营商的STI-VS使用身份头值中的info参数结合STIR的数值决定STI-CR的地址URL,并且对STI-CR发出HTTPS请求。

STI-VS验证这个证书,然后提取一个公共密钥。VS根据公共密钥重建STIR验证头消息中的签名,确认这个caller id是一个有效的caller id,并且是此原始运营商呼叫时的INVITE签发的。

STI-VS获得最终消息后,可以对CVT发送一个验证结果,运营商的CVT模块,落地运营商的CVT可以对接自己的业务服务器或者第三方的安全策略服务器对其呼叫进行双方确认,或者保存此结果,以便将来呼叫跟踪。这里,运营商的CVT服务可以根据运营商的呼叫规范或者相关法律等策略做进一步处理。

根据STI-VS的返回结果和信誉度分类,落地运营商的CSCF然后发送最终的INVITE到落地被呼叫用户。这里,落地用户手机也可以显示其信誉度分类。否则,这个呼叫可以被运营商提前拦截,不会在呼叫到用户终端,这样也就不会造成骚扰电话。

如果确认的号码是一个信誉度分类高的号码,落地用户接受这个INVITE请求,接听电话,然后返回200 OK消息,最后双方创建RTP语音流。

在以上的流程中,我们需要特别注意的是SIP INVITE中的Identity header,示例如下。此示例中包含一个JSON Web Token(JWT)和三个参数(info,alg和ppt)。这三个参数我们在前面有介绍,读者可以查阅前面内容。其中,JWT包括三个部分(header,payload和签名)。其中,header和payload是based64 URL JSON格式。

SBC

读者需要注意他们之间的区域(header,payload和签名),三个部分以逗号分开。

SBC

以下示例说明了header的加密和解密结果:

SBC

payload 经过加密解密处理以后的结果:

SBC

当然,最后一个部分是其签名在info参数之前:

S_vqkgCk88ee9rtk89P6a6ru0ncDfSrdb1GyK_mJj-10hsLW-dMF7eCjDYARLR7EZSZwiu0fd4H_QD_9Z5U2bg

 6、STIR/SHAKEN应用示例

在以上关于IMS网络中的STIR/SHEAKEN的介绍和STIR/SHAEKN的核心要素的介绍,我们基本上了解了此协议应用的原理和工作机制。先让我们看一个关于STIR/SHAKEN的演示视频。视频中介绍了如何通过STIR/SHAKEN结合着名边界会话控制器厂家的FreeSBC实现骚扰电话的拦截处理:

接下来,这个章节,我们结合一个具体的应用实例来进一步说明STIR/SHAKEN是如何应用在实际的工作环境的。首先,运营商之间和相关的通信部门需要一个安全的合作关系,互相之间可以保证证书的安全性:

SBC

在原始运营商呼叫方的SBC和落地运营商之间的SBC添加处理流程和证书签发验证机制。这里,ClearIP是一个基于云平台的证书签发验证服务,SBC通过和SHAKEN服务对接以后,获取到最终呼叫号码的结果。落地运营商最后可以根据信誉度分类结果对呼叫号码进行判断,然后把判断结果显示到客户终端。如果此号码属于一个信誉度较低级别的呼叫号码,落地运营商的SBC可以拒绝进一步处理,或者直接拦截,无需进一步让呼叫骚扰用户。

SBC

呼出运营商的SBC处理,在呼出运营商的SBC中添加呼叫方号码,被呼叫方号码,时间戳和attest(信誉度分类),和源呼叫运营商ID(Unique originating identifier/origid)。以上参数会结合落地运营商的验证来确认其呼叫号码的信誉度和用户是否接听的状态。

SBC

呼入运营商落地SBC的处理机制:

SBC

7、TDM/SIP接入设备STIR/SHAKEN解决方案

大家通过我们以上的解释,可能已经看到,STIR/SHAKEN不能支持传统的TDM网络,普通网关产品也不能支持STIR/SHAKEN,需要在网关设备添加一个SHAKEN服务机制来验证呼叫号码的属性。

SBC

SBC

8、关于STIR/SHAKEN面对的挑战

任何新技术的发展都会面对很多的问题,骚扰电话拦截的也是一样的。因为,这个业务本身就关系到了运营商自己的利益,可能一些运营商不会主动部署,因此这里涉及到了管理层面的问题。美国FCC已经非常明确要求运营商在最后期限内必须部署STIR/SHAKEN,同时发布了相关的法律强制要求运营商强制执行。在部署过程中,可能涉及了很多法律和技术层面的问题,我们这里进一步展开讨论。

首先,运营商之间需要互相配合,包括兼容性的测试,认证签发和验证。这需要政府管理层面的同一规定和协调。另外,国际运营商之间的SIP呼叫如何实现STIR/SHAKEN需要国际业务结算体系和证书验证的支持。

然后,因为涉及了STI-AS和STI-VS证书签发和验证的服务机制,SHAKEN服务必须是具有国家相关部门的权威性和其安全性。关于证书管理的内容,读者可以查阅以下报告:

Report on Selection of Governance Authority and Timely Deployment of SHAKEN/STIR

http://nanc-chair.org/docs/mtg_docs/May_18_Call_Authentication_Trust_Anchor_NANC_Final_Report.pdf

进一步来说,因为在呼出运营商SBC部署中,信誉度分类的规定又涉及了运营商的呼叫策略管理的问题,如何划分规定号码的信誉度分类也是一个运营商之间需要明确的内容。

还有关于IMS网络和其网络中协议的安全部署问题。网络技术问题涉及到了从底层基础设施的证书问题,SIP/RTP TLS加密的安全问题,证书签发和验证的token管理和安全问题,以及签发和验证服务的部署策略。这些问题都会影响STIR/SHAKEN的部署问题。STI-AS和STI-VS部署的时候还要考虑环境的信任度。这些部署模式也同样影响STIR/SHAKEN。

SBC

 网络传输的时延问题。大家知道,因为在呼叫中带了证书的相关消息,一般每个电话呼叫只有几分钟,因此传输验证签名和响应速度是一个非常大的挑战。如何保证证书签名的有效性,如何在大并发呼叫中管理证书和验证证书都是非常大的挑战。很多解决方案提供了catch的方式,在本地保存一些数据,保证访问证书的响应速度:

SBC

最后,当然必须谈钱的问题。如果通过STIR/SHAKEN方式实现骚扰电话拦截的话,SHAKEN服务的费用是一个应该考虑的因素,增加了SHAKEN服务,相应的花费可能需要提高,电话成本可能会增加。另外,是否对所有的电话都进行信誉度分类标识服务也是需要考虑的问题。

STIR/SHAKEN已经开始在美国运营商之间部署,目前美国运营商网络部分仍然是PSTN网络,部分是SIP的网络。根据Dr. Eric Burger的研究报告来看,

SBC

通过STIR/SHAKEN部署以后,国内SIP-SIP之间的呼叫的骚扰电话拦截效果非常好,PSTN-SIP的效果相对较差。但是,笔者相信,随着TDM生命周期结束越来越近,未来的通信都可能是IP化的,因此拦截效果会逐步提升。

 9、总结

在本文章中,我们从技术角度讨论了骚扰电话的拦截的部署方式-STIR/SHAKEN。此技术已经被广泛应用在了美国运营商的IP网络环境中,对骚扰电话拦截技术是一个非常大的突破。笔者讨论了STRI/SHAKEN的技术背景,IMS网络架构中的具体步骤,还提供一个部署STIR/SHAKEN结合SBC来进行电话拦截的案例。另外,笔者从法律层面,运营商业务层面和技术架构,基础设备,协议安全加密和证书签发验证,证书传输等方面讨论了需要面对的挑战。

最后,笔者提醒读者,因为此技术也是在不断发展的阶段,很多实现方式可能不是非常成熟,需要运营商之间逐步完善。在中国运营商市场和虚拟运营商的网络环境中也可以部署类似的服务。通过STIR/SHAKEN的技术结合SBC可以从源头极大降低骚扰电话的问题。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分