APP下载

视频监控设备身份认证机制的设计与实现*

2021-07-28魏艺杉杨宗宇

电讯技术 2021年7期
关键词:公钥信令证书

魏艺杉,曾 浩,杨宗宇

(重庆邮电大学 通信与信息工程学院,重庆 400065)

0 引 言

近年来,随着视频监控系统在全国大量普及,平安城市和天网工程等重大安防项目应运而生。视频监控面临着更大规模的联网应用,亟需加强系统安全防护,提升安全性能,而视频监控系统的首道安全防线就是合理的身份认证机制。

2016年,公安部科技信息化局提出了视频监控互联国家标准,规定了信息传输交换的技术规范并指定会话初始协议(Session Initiation Protocol,SIP)为标准信令控制协议[1]。SIP是一种简单的应用层协议,用于在IP网络上控制多媒体通信[2]。研究发现,SIP在实际应用中存在一定的安全风险。文献[3]提出,虽然SIP灵活且易于扩展,但以文本形式表示消息极易受到网络攻击。SIP标准文档建议通过扩展已有的安全机制实现SIP认证与安全防护,针对SIP注册过程,推荐使用超文本传输协议(Hyper Text Transfer Protocol,HTTP)摘要认证方式对会话双方进行身份认证。文献[4]指出,HTTP摘要认证方式存在终端伪装、重放攻击、离线密码猜测等风险,可以结合密码算法强化认证。为抵御上述风险,文献[5]设计了预置公钥列表方案,通信双方通过查表并计算信息摘要进行身份认证,但公钥列表数据庞大导致系统负荷较重。文献[6]使用无证书签密技术,通信双方在密钥协商的过程中完成认证,计算和通信开销较低,但没有测试仿真证明方案的可行性。文献[7]和文献[8]均提出使用椭圆曲线密码动态生成会话密钥以维护前向机密性和认证模型安全,并通过测试证明模型性能稳定。

本文将结合SIP注册认证与视频监控系统应用场景,引入公钥基础设施数字证书认证体系(Public Key Infrastructure/Certificate Authority,PKI/CA)强化HTTP摘要访问认证的安全性,提出一种针对SIP注册过程的安全机制,实现安全系数较高的双向身份认证。

1 SIP研究

1.1 SIP注册认证分析

RFC2617提出超文本传输协议摘要访问认证方案(HTTP Digest Access Authentication Scheme),基于挑战/应答机制实现身份认证。SIP与HTTP均为基于文本的应用层协议,因此SIP可以借鉴该方案,进行适当扩展后应用于SIP注册认证,保障SIP实体间的通信安全[9]。基于HTTP摘要访问认证方案的SIP标准注册认证如图1所示。

图1 SIP标准注册认证

过程描述如下:

(1)客户端发送注册请求。

(2)服务器返回401 Unauthorized响应,WWW-Authenticate头域包括realm(域名)、nonce(随机数)、domain(uri列表)、algorithm(默认MD5)、qop(保护等级,设定为auth)、opaque(固定字符串)、stale(标识客户端请求因nonce过期被拒绝)、auth-param(可扩展项)。

(3)客户端接受质询,根据realm选择相关的username(用户名)和对应的password(口令),将username、realm、password通过摘要算法Hash计算出A1;再将Method(请求方法)和uri(由Authorization头域指定)通过同一算法计算出A2;最后将A1、nonce、nonce-count(重放检测)、cnonce(客户端生成的随机数)、qop、A2通过同一算法计算出response,随第二次注册请求发出。

(4)服务器解析请求,提取相同参数并以上述同种摘要算法计算response′,对比接收的response,相同则通过认证。

1.2 基于SIP的视频监控系统

本文在GB/T28181-2016规定的SIP监控域互联结构的基础上部署了一种更全面的系统,系统模型如图2所示。该模型设定前端设备为网络摄像机(Internet Protocol Camera,IPC),同时将信令路由网关和中心信令控制服务器部署在安全管理平台上,作为负责SIP信令转发控制与应用处理的核心SIP服务器。

图2 基于SIP互联结构的视频监控系统

IPC在接入系统前需向安全管理平台上的SIP服务器发送注册请求,服务器会校验设备信息并要求设备进行认证。通过注册认证后,安管平台将接入的IPC标识为合法设备,允许IPC开始采集视频流并传输到存储服务器或监控客户端。

2 身份认证机制设计

2.1 PKI/CA体系

本文设计的认证机制基于PKI/CA体系,CA作为权威机构向用户颁发承载公钥和身份信息的数字证书,并保障证书和公钥的真实性。PKI/CA体系可以为视频监控系统提供包括身份识别、数据机密与完整性、不可否认性及时间戳等服务[10]。在PKI认证机制下,IPC和安管平台无需预共享密钥或传输私密口令,通过解析对方公钥并加密或者使用己方私钥签名即可保护信息,实现安全性较高的身份认证,适用于视频监控系统等对数据敏感的通信过程。

在PKI/CA认证系统中,IPC需要先向CA申领证书,再向安管平台上的SIP服务器发送注册请求,SIP服务器向轻型目录访问协议(Lightweight Directory Access Protocol,LDAP)服务器查验IPC证书是否可信,后续的认证过程将在2.2节中介绍。图2中监控中心区设置的PKI/CA认证系统提供了本节所述的数字证书类相关服务。

本机制主要涉及到图3所示的PKI/CA认证系统中的证书申请和查验,证书申请仅针对待接入的IPC,因为SIP服务器已预先获取证书并被部署在系统内部。IPC通过PKI应用接口发送包含身份信息与公钥的申请消息至注册中心(Registration Authority,RA),RA核实IPC身份信息后向CA提交制证请求,CA审核请求后签发由身份信息、设备公钥、数字签名和有效期等信息构成的证书,RA获取证书并发布到LDAP服务器以提供证书查询、浏览、下载等服务。IPC或SIP服务器可通过访问LDAP服务器来查验对方证书,从而获取对方公钥。

图3 PKI/CA认证系统中的证书申请和查验

2.2 基于SIP的双向身份认证

本文设计的机制基于PKI/CA体系与数字证书进行预认证,再对SIP消息进行扩展,增加实现安全身份认证所需的参数与伪随机数序列,并组合利用异或密码及公钥加密对前端设备和安全管理平台进行双向身份认证。改进方案相对于原HTTP 摘要访问认证的优点为:不需要预生成与域名对应的用户名/口令组合;基于原会话机制进行扩展,在不会增加SIP信令交互过程的前提下,IPC和SIP服务器可互相鉴别对方身份;SIP协议栈中不需要增加新的事件,协议栈状态机不会改变。扩展后的认证过程如图4所示。

图4 改进的双向身份认证

(1)网络摄像机IPC上线后,首先由PKI/CA认证系统为其颁发数字证书,随后IPC向安管平台上布置的SIP服务器发送注册请求REGISTER1,同时携带数字证书相关信息以及自身的安全能力。

(2)SIP服务器解析请求,向PKI/CA认证系统中的LDAP服务器查询该设备的数字证书,以证实证书的有效性和合法性。证书预认证通过后,SIP服务器再解析证书并提取出承载的IPC公钥PUIPC,若证书预认证未通过,SIP服务器将拒绝连接,结束会话。

(3)安管平台利用伪随机数生成器产生随机数nonce以及认证序号Seq并传给SIP服务器,SIP服务器返回挑战响应401 Unauthorized要求对IPC进行身份认证。401消息同时携带了参数Message和algorithm。其中,需要计算序列S1=H(PUIPC‖nonce)并储存在服务器的数据库中,再计算S2=Seq⨁S1,并对S2、Seq、nonce签名得到Message=PRS[S2‖Seq‖nonce]。PRS为SIP服务器私钥,algorithm为服务器在IPC提供的安全能力中选择的数字摘要算法Hash。

(4)IPC接收质询信息,向PKI/CA认证系统中的LDAP服务器查询SIP服务器的数字证书,解析证书提取其公钥PUS并对Message验签,验签成功则获取S2、Seq、nonce,并丢弃Message中存储的值。IPC对解析出的nonce和自己的公钥PUIPC做摘要运算得到S1′=H(PUIPC‖nonce),再利用解析出的S2计算Seq′=S2⨁S1′,对比Seq′与之前解析出的Seq,相同则证明SIP服务器及安管平台身份可信,否则直接结束会话。

(5)IPC重新向SIP服务器发送REGISTER请求,并携带参数response=PRIPC[PUS[Message]],需要对Message重新赋值为H(S1′‖nonce)。

(6)SIP服务器解析请求,使用IPC公钥PUIPC对response验签,验签成功则获取PUS[Message],再使用服务器私钥PRS解密该字符串获得Message。最后取出储存在本地的S1,计算Message′=H(S1‖nonce),对比之前解密获取的Message,相同则证明IPC可信,完成了双向身份认证。

3 身份认证机制分析

3.1 抓包测试

测试环境由内置密码模块的IPC、SIP服务器、PKI/CA认证系统组成,通过交换机构成一个小型视频监控系统,SIP服务器端使用eXosip协议栈搭建。IPC向SIP 服务器发送注册请求,通过2.2节提出的认证方案接入系统。使用WireShark对上述SIP信令进行抓包分析,可知在SIP基本注册过程中通过扩展信令实现了改进的双向身份认证。

(1)注册抓包

在Filter 栏输入指令sip and ip.addr eq 192.168.99.26,即可显示与IPC注册有关的信令包。

如图5所示,SIP 完成了“REGISTER1-401-REGISTE 2-200 OK”标准会话,IPC与服务器认证成功。后文将分析改进的401和REGISTER2信令。

图5 注册认证的信令

(2)改进的401 Unauthorized

如图6所示,改进后401消息的WWW-Authenticate头域中显示认证信息Message,并根据REGISTER1中IPC提供的安全能力,将摘要算法设定为MD5并写入algorithm参数。

图6 改进的401 Unauthorized

(3)改进的REGISTER2

如图7所示,改进后IPC发送的注册请求REGISTER2中,Authorization头域携带认证消息response、algorithm参数也说明了在计算response时使用的摘要算法为MD5。

图7 改进的REGISTER2

3.2 性能分析

为了验证方案的执行效率和可行性,本节对改进的身份认证机制和原始的摘要接入认证机制分别进行吞吐量测试。摘要算法Hash使用MD5,公钥加密算法使用RSA。在测试中使用4台IPC向SIP服务器连续发送认证请求,分别控制每台IPC每次发送100个请求,共发送10组,计算这10组的平均时间t,t/100再取倒数即可得到单位时间内单台IPC与SIP服务器完成双向身份认证的次数。测试结果如表1所示。

表1 改进前后吞吐量对比

由测试结果可知,当1台、2台、3台、4台IPC连续发送认证请求时,改进方案的效率约为原来的78.8%、78.7%、78.4%、78.7%。实际上,改进机制减少了三次摘要计算,由于又增添了公钥加密、私钥解密和异或运算,总体计算量有所增加。认证过程中还涉及到通信双方对信令的接收与发送、生成与解析,并且信令在端到端的传输中占用的时间远超过计算时长。下文将分析改进机制的安全性,证明安全性较改进前有较大提升,因此效率方面适当的损失是值得的。

3.3 安全性分析

在SIP注册认证中,通信双方以数字摘要形式进行信息交互。虽然信息不以明文传输可以防止注册劫持并且保证了一定程度的机密性,但仍存在一些安全风险。下面针对改进后的机制进行安全风险分析。

(1)终端伪装攻击

前端设备和SIP服务器向系统内可信LDAP服务器查验证书获取对方公钥,确保公钥真实性。除正在会话中的设备以外,其他未接入系统的设备无证书查询权限,无法获取公钥。通信双方分别解密认证序列并校验Seq和Message,验证对方身份可信,从而抵御了非法设备或服务器伪装攻击。

(2)重放攻击

在本方案中,SIP服务器发出401质询消息前,监控安全管理平台产生并传递随机数nonce以及认证序号Seq给SIP服务器用于构造认证字符串,由于伪随机数生成器输出的值具有不可重现及不可预测性,每次通信时nonce的值都会发生变化,Seq也会逐次递增。因此,nonce和Seq不断更新能够抵御重放攻击。

(3)离线密码猜测

在摘要访问认证方案中,客户端根据realm选择相应的username和password,并计算A1=H(username||realm||password)],生成response时需要A1再次参与摘要计算,即password参与两次摘要计算,因此攻击者较难通过线下穷举法计算摘要的自变量来获取password。改进方案在认证过程中直接取消了password,着重于认证序列的安全性设计,这样无需password参与也可充分保障认证的安全性,彻底免除了遭遇离线密码猜测的风险。

(4)中间人攻击

攻击者可能通过监听会话或截获认证数据冒充通信的某一方威胁认证安全,因此本方案首先引入PKI/CA体系,让通信双方基于可信数字证书获取对方公钥。通过公钥加密和私钥签名的方法保护认证数据的传输安全,同时组合利用摘要算法和异或密码构造认证序列,有效保护其机密性,即便认证序列被攻击者截获也难以破解。

(5)摘要算法单一且固定

在本方案中,前端设备发送REGISTER1请求,同时携带了algorithm参数来表明自身安全能力并指明了支持的摘要算法,SIP服务器可以从中选择某种摘要算法Hash进行计算。

(6)不可否认性

在本方案中,前端设备和SIP服务器均使用己方私钥对参与认证的序列和参数签名后再随消息发出,不仅保证了一定的机密性,而且确保签名数据只有通过查询数字证书获取相应公钥的对方才能验签。私钥不参与传输不会泄露,只有持该证书的唯一用户才能产生签名,因此具有不可否认性。

由分析可知,改进后的双向身份认证机制安全性有较大提升,能够规避上述常见风险,保证合法的IPC安全接入到可信平台上。

4 结束语

本机制结合SIP注册认证和HTTP摘要访问认证的特点,通过扩展eXosip协议栈使得前端设备发送第一条REGISTER消息时携带自身支持的密码算法,根据SIP服务器发出的401信令中指定的摘要算法对认证参数进行计算和校验,第二条REGISTER携带更新的认证参数再次向服务器发起注册请求,增加了认证过程的灵活性。同时基于PKI/CA体系为通信双方提供密钥对,与传统方案相比,无需预生成和预共享密钥即可加密保护交互的关键认证信息,实现前端设备和监控安管平台之间的双向身份认证。改进的身份认证机制性能稳定且安全性较高,提升了认证过程中信令交互的机密性和完整性,应用于视频监控系统中可有效保证合法设备能够安全接入,保障视频数据来源可信,具有实际应用价值。后续可针对SIP信令跨监控域传输的安全问题进行研究,进一步加固前端设备与监控系统之间的通信安全。

猜你喜欢

公钥信令证书
WJCI 收录证书
CSCD收录证书
收录证书
收录证书
SLS字段在七号信令中的运用
移动信令在交通大数据分析中的应用探索
一种基于混沌的公钥加密方案
基于信令分析的TD-LTE无线网络应用研究
HES:一种更小公钥的同态加密算法
LTE网络信令采集数据的分析及探讨