《电子技术应用》
您所在的位置:首页 > 通信与网络 > 设计应用 > 基于角色访问控制的HSS数据库越权访问防护
基于角色访问控制的HSS数据库越权访问防护
来源:电子技术应用2011年第4期
杨 静,季新生,刘彩霞
信息工程大学 国家数字交换系统工程技术研究中心, 河南 郑州 450002
摘要: 针对HSS数据库中合法用户的非法越权访问问题,提出一种基于角色访问控制的越权访问防护方法。该方法将基于角色的访问控制策略应用到HSS数据库访问控制中,给出新的访问控制模型并设计出相应的HSS数据库。最后以S-CSCF为例,给出了S-CSCF越权访问流程,分析了访问控制模型对防护越权访问行为的效果,仿真验证了其有效性。
中图分类号: TP393.08
文献标识码: A
文章编号: 0258-7998(2011)04-0145-04
HSS database defending the actions of exceeding authority based on RBAC
Yang Jing, Ji Xinsheng, Liu Caixia
National Digital Switching System Engineering and Technological R&D Center, Information Engineering University, Zhengzhou 450002, China
Abstract: An HSS database defend method is proposed to avoid the actions of exceeding authority of legal users. This method is based on role-based access control, then present a novel access control model and HSS database. As a example of S-CSCF, this paper analyses the process of the actions of exceeding authority and the effect of access control model to defend it. Simulation results demonstrate the validity of this new algorithm.
Key words : RBAC; HSS; action of exceeding authority


    3GPP在R5版本中提出了IP多媒体子系统IMS(IP Multimedia Subsystem)的概念。IMS作为一个实际运营的网络,充分考虑了身份认证,安全计费等能力,为基于全IP网络多媒体应用提供了一个通用的业务职能平台,也为网络发展过程中的网络融合提供了技术基础,是未来网络的发展方向之一。在IMS中,归属用户服务器HSS(Home Subscriber Server)作为用户签约业务数据库,存储着用户的安全数据和业务数据,I-CSCF(Interconnection-Call Session Control Function)与S-CSCF(Serving-CSCF)通过Diameter协议与HSS进行信息交互[1]。由于HSS与I/S-CSCF之间缺乏身份认证机制,且攻击者是以合法身份接入网络,I/S-CSCF可以进行越权访问HSS,非法获取或修改用户的信息,因此需要建立新的HSS数据库的访问控制模型,对 I/S-CSCF的非法行为进行防护。由美国George Mason大学的Ravi Sandu教授提出的基于角色的访问控制模型RBAC(Role-Based Access Control)[2-4],提供了解决大量用户、数据客体和访问权限系统中的授权管理问题,是一种方便、安全、高效的访问控制机制,适用于HSS数据库访问控制。
    本文在HSS数据库访问控制中应用基于角色访问控制策略,并添加其约束模块,建立I-CSCF—S-CSCF的关联表,最后给出越权访问行为防护的分析和仿真。
1 S-CSCF越权访问行为分析
    HSS是IMS网络中存储用户信息的主要数据库。存储在HSS的IMS相关数据主要包括:IMS用户标识、号码和地址信息以及用户安全信息等。IMS网络中的呼叫会话控制服务器I/S-CSCF和应用服务器AS通过访问HSS,获取用户注册和业务逻辑执行所需的用户数据。
    P-CSCF通过DNS域名解析获得I-CSCF的地址,I-CSCF根据UAA信息,选择合适的S-CSCF[1],没有机制通知HSS该S-CSCF地址。由于攻击者是合法接入网络,I/S-CSCF与HSS之间可以通过相互认证,攻击者可以通过篡改数据包,实现越权访问。
    由于I-CSCF数据库越权访问不涉及用户核心信息,攻击方式与S-CSCF相似,故本文重点分析S-CSCF越权访问行为。其越权访问流程如图1所示。

    (1)在HSS侧,攻击者截获S-CSCF发送的MAR(1)/SAR(1)请求,将AVP Session id、AVP Origin Host等和攻击目标有关的字段改为自己的字段,将在数据包中S-CSCF的路由信息删除,仅保留攻击者的地址,如:
 AVP SessionId1/1=scscf(attacker)-stdn.imsgrp-000.ims.ctc.com;237404472;237404472:00
 AVP OriginHost 1/1 =scscf(attacker)-stdn.imsgrp-000.ims.ctc.com
 Route-Record=scscf(attacker)@ims.ctc.com
 攻击者将修改后的MAR(2)/SAR(2)命令发送到HSS,由于攻击者是合法S-CSCF,所以可以通过HSS的认证,使HSS认为是攻击者发出的合法的请求MAR(2)/SAR(2),发送响应MAA(2)/SAA(2)给攻击者。
   (2)攻击者收到MAA(2)/SAA(2)后,由于S-CSCF知道HSS的地址,所以目的域地址仍置为HSS的地址,将AVP SessionId与AVP OriginHost等字段在MAR(2)/SAR(2)中修改过的字段改为原MAR(1)/SAR(1)的字段。将修改好的数据包MAA(1)/SAA(1)发送到S-CSCF。由于数据包中所有的信息均已修改,而S-CSCF并不溯源数据包的来源,所以会认为是HSS发送的响应消息。
    通过以上两个步骤,攻击者可以越权访问到S-CSCF存储在HSS上的数据信息,从而实现了HSS数据库的越权访问。
2 基于角色的访问控制模型
    基于角色的访问控制模型RBAC引入了角色的概念,目的是为了隔离主体与权限,其模型如图2所示。RBAC模型的基本概念:

    用户(User):可以独立访问计算机系统中的数据或其他系统资源的主体。用户可以是人,也可以扩展为机器、设备、进程等,在此为I/S-CSCF。
    角色(Role):角色指一个组织或任务中的工作或位置,它代表一种资格、权利和责任。
    权限(Permission):权限描述一个角色对一个访问对象可以执行某种操作的能力,它反映的是授权的结果。如查询角色对资源B只有读的权限,I-CSCF赋予查询角色时,对资源B只能进行读取。
    用户角色分配(User-Role Assignment):建立用户与角色的多对多关系。
    角色权限分配(Permission-Role Assignment):建立角色与访问权限的多对多关系。
    会话(Session):会话对应于一个用户和一组激活的角色,表示用户进行角色激活的过程。如I-CSCF发送UAR命令查询用户注册状态的流程[2-4]。
3 HSS数据库访问控制模型
    IMS通信流程中,I/S-CSCF与HSS之间通过Diameter协议进行信息交互。当前IMS网络缺乏在信令处理过程中对网络实体的身份、权限的判断,导致某些被非法利用的网络实体针对用户位置,状态等重要信息发起各种攻击行为。在IMS网络中,网络实体通过信令消息触发消息处理机制来实现对用户数据的访问和操作,网络实体担任的角色及角色与权限的映射关系随信令流程的改变而动态变化。所以需要对基于角色的呼叫控制模型进行一定的改进。模型设计的核心思想就是在通信过程中,通过约束模块,对角色、权限分配过程进行控制,控制模型如图3所示。

    基于角色的HSS访问控制模型定义如下:
     主体(User):可以访问HSS数据库的网络实体,即I/S-CSCF;
     客体(Objects):存储在HSS数据库中的数据,如S-CSCF能力集,用户认证消息等;
     角色(Roles):I/S-CSCF所承担的职责;
     权限(Permissions):可以对客体信息进行的操作,如查询,修改;
     约束(Constrain):在角色划分,权限分配中需要满足的限定性条件;
     会话(Session):用户进行激活的过程,如I-CSCF发送UAR信令到HSS。
     访问过程中形成的映射关系:

3.1 约束模块设计
    在约束模块添加关联表,通过修改关联表,对模型中的分配起到限制作用。在IMS网络中,存在多个I-CSCF与S-CSCF,,它们之间是一对多映射的关系,如图4所示。在HSS中建立I-CSCF—S-CSCF关联表,如图5所示。

3.1.1 约束模块操作流程
    在初始时,HSS将关联表中I-CSCF能够选择的S-CSCF的属性值全部置为1。
    (1)当I-CSCF选定一个S-CSCF后,向HSS数据库发送一个消息,将此信令消息命名为IER(I-CSCF-Elect-Require),告知HSS其选定的S-CSCF。
     消息格式为:<I-CSCF-Elect-Request>:=
    <DiamterHeader:30x,REQ,PXY,16777216>
    <Session-Id>
    {Origin-Host}
    { Origin-Realm}
    {User-Name}
     {Server-Name}
     {Server-ID}
     *[Proxy-Info]
     *[Route-Record]
     (2)HSS收到IER消息后,提取Session-id, User-Name, Server-Name字段,发送响应消息IEA(I-CSCF-Elect-Answer)消息给I-CSCF。
       (3)HSS修改关联表,将对应的I/S-CSCF值设为Session-id,其他的值设为0,实现绑定约束,在后续为S-CSCF分配角色等操作时,只有被绑定的S-CSCF才能进行相应的用户数据下载、更新等操作。
       (4)当会话结束后,将关联表信息改为初始值,释放各资源。
3.1.2 访问控制模型应用流程
    (1)HSS根据I/S-CSCF的能力,建立用户表;根据I/S-CSCF进行的操作,进行角色分类,建立角色表;根据I/S-CSCF的能力,在特定会话的条件下进行的操作,为I/S-CSCF分配角色,更新用户-角色表;根据存储在数据库中的信息的性质,及对其进行的操作,建立权限表;根据角色在特定会话条件下对客体进行的操作,建立角色-权限表;建立I-CSCF&mdash;S-CSCF关联表。
    (2)当I/S-CSCF发起会话时,HSS首先查找用户表,判断用户身份是否合法。
    (3)根据会话发起的信令,查找对应的角色表,确定此次会话中主体所担任的角色。
    (4)根据主体及角色,为用户分配角色,更新用户-角色表。
    (5)根据会话信令,查找角色-权限表,确定此次会话I/S-CSCF所能访问的数据资源及其进行的操作。
    (6)当会话建立时,启动约束模块,HSS修改关联表,绑定此次会话,只有发起会话的主体才能对数据库进行访问。
3.2 数据库设计
 根据整个流程,HSS数据库访问控制系统被分为不同的功能模块,主体分为不同的权限访问不同的客体。根据模型设计方法,用户及权限信息均被保存在HSS数据库中,建立用户表、角色表、权限表、约束表、用户与角色表、角色与权限表的6个表格,各表详细设计及关系如图6所示。

4 HSS数据库访问控制模型效果
    在HSS访问控制方式及数据库的设计中,约束模块对用户角色表、角色权限表都有着制约作用,从而能够比较有效地进行数据库访问控制。效果分析如图7所示。

    I-CSCF选定S-CSCF后,与HSS进行IER/IEA信令交互后,启动约束模块,HSS数据库修改关联表,进行绑定操作。当攻击者篡改MAR/SAR消息时,HSS查找关联表,由于I-CSCF&mdash;S-CSCF关联表中,攻击者的属性值本不存在或被置为0,HSS拒绝攻击者的请求,从而实现了HSS数据库越权访问的防护。
    Open SAR由C语言实现,是一个成熟且灵活的开源SIP服务器栈软件。可以用作注册服务器、位置服务器、代理服务器等多种SIP服务器。通过对Open SAR进行设置,可以实现IMS中各个CSCF的功能。依据课题的研究内容,要求SIP终端具有可配置性。因此,选取SIP攻击软件SiVus用于SIP终端功能的实现。在仿真过程中将HSS数据库设置为一般的数据库,攻击者截获数据包并伪装就可以立刻下载用户的认证信息。而在使用本文方法后,能够有效地防护HSS数据库越权访问行为。
    HSS数据库防护在基于角色的访问控制模型的基础上添加了约束模块,在其中设置了I-CSCF&mdash;S-CSCF关联表。通过理论分析和仿真结果验证,该模型能够较好地对HSS数据库越权访问行为进行防护,同时该模型也可直接在系统中添加相应模块,实现简单、通用性强。
参考文献
[1] POIKSELKA M,MAYER G,KHARTABII H,et al.移动领域的IP多媒体概念和服务[M].北京:机械工业出版社,2005.
[2] RAVIS E J, COYNE K. Role-based access control models[J].IEEE Computer,1996,29(2):38-47.
[3] FERRAIOLO D F. Proposed NIST standard for role-based access control[J]. ACM Transactions on Information and  System Security,1001,4(3):224-225.
[4] SANDHU R S.COYNE E J,FEINSTEIN H L, et al. Rolebased access control models[J].IEEE Computer,1996,29(3):38-39.
[5] 周颖杰.移动通信网位置信息安全防护关键技术研究[D].河南:解放军信息工程大学,2008:45-54.
[6] LINA B R. The application of security policy to rolebased access control and common data security architecture [J].Computer Communications,2000,23(17):1584-1593.
[7] 邢汉发.基于角色和用户组的扩展访问控制模型[J].计算机应用研究,2009,26(3):1098-1100.

此内容为AET网站原创,未经授权禁止转载。