基于STRIDE威胁模型的教育云安全风险评估研究
2017-04-07皇甫大鹏
陈 平,双 锴,皇甫大鹏
(1.北京师范大学 信息网络中心,北京 100875;2.北京邮电大学 网络与交换技术国家重点实验室,北京100876)
基于STRIDE威胁模型的教育云安全风险评估研究
陈 平1,双 锴2,皇甫大鹏1
(1.北京师范大学 信息网络中心,北京 100875;2.北京邮电大学 网络与交换技术国家重点实验室,北京100876)
教育领域云计算平台是教育行业对云计算技术的应用,为教育行业提供IT,存储,应用等服务,在行业内部日常工作中占据重要地位。随着教育云的广泛应用,其安全性的问题也越来越突出。安全风险分析是教育云安全研究的重要的环节。通过对云平台各部分进行全面的风险分析和挖掘,可以对教育云安全体系的设计提供重要的数据支撑和安全策略。本文通过构建STRIDE安全威胁模型,对系统可能受到的风险通过分类、识别、量化等过程对系统威胁风险进行评价。本文基于风险分析结果,结合云计算安全技术的发展趋势,提出了教育云系统安全防护架构,为教育云计算安全问题提供数据支撑和安全策略的参考。
STRIDE威胁模型;教育云计算;云安全
一、引言
云计算主要是通过网络将IT服务、平台服务及应用服务交付给用户。一般云计算平台包含三个层次:基础实施即服务 (IaaS),平台即服务 (PaaS),应用即服务(SaaS)。[1]基础设施即服务主要通过虚拟化技术将包括服务器,存储设备,网络设备等物理资源抽象成虚拟主机和虚拟设备,并对外提供服务接口。平台即服务包括了操作系统,开发平台,数据库及可供应用开发的实验环境。应用即服务主要包括一系列应用软件及交互平台,通过网络的方式面相用户。
云计算平台是特殊的信息系统,相比传统信息系统有着相同的安全需求,面临着相同的安全风险。信息安全领域的发展已经多次证明,信息技术的重大变革将直接影响安全领域的发展进程。[2]随着云计算技术的发展,云计算平台不断引入新的技术,如软件定义网络(SDN),网络功能虚拟化(NFV)等新技术,这必将推动云计算技术更加普及和完善。同时随着新技术的引入,云计算也会面临着不同于传统信息系统新的安全风险和挑战。根据云安全联盟发布的统计数据,云计算面临的几大安全威胁分别是数据破坏、数据丢失、资源共享风险[3]、账户或业务流量被劫持、不安全的接口和API,拒绝服务、恶意的内部人员、云服务的滥用等。
教育云平台是对典型云计算平台的继承和发展。出于大规模教育管理和教育教学的要求,教育云具有规模大、并发性高、可靠性高等特点。同时由于各级各类教育机构庞大,分布广[4],这也使得教育云系统的种类和结构复杂[5]。教育行业同时又是作为国家重要的基础,信息系统的安全问题的重要性不言而喻,教育云平台面临的挑战也日益严峻。
二、教育云平台结构分析和数据流分析
本章将对教育云平台的体系结构进行介绍和分析,并归纳云平台主要过程的数据流。
1.教育云平台的体系结构(如图1所示)
图1 教育云体系结构
一般在教育领域,云平台云端由云基础设施、云平台组件组成。云基础设施包括基础硬件、虚拟化平台、云操作系统和负载均衡控制,主要提供计算、存储和网络通信能力以及对各种资源的封装和抽象,同时提供数据中心间的负载均衡,提高业务系统灾备能力。云平台组件提供计算服务,存储服务,镜像服务,和认证服务。其中计算服务是整个平台组件的计算控制器,用于完成云实例生命周期的各种动作。存储服务提供一种分布式对象存储,同时具备归档能力,可处理大数据集。镜像服务主要提供虚拟机镜像注册,检索,存储系统。认证服务是对云平台用户进行验证鉴权等操作。
2.教育云平台的数据流分析
由于云计算平台是相对很复杂的信息系统,为了方便之后的威胁分析,我们着重分析几个主要的数据流。
(1)认证
认证是用户访问云平台必须经历的过程,用户通过命令行或UI界面等客户端API登录云平台,会经过账户口令验证。登录云平台后在操作云平台组件或设备之前还要经过身份认证,鉴权等过程。
图2 认证流程
(2)存储服务
存储服务是提供给用户将文件对象存储在云端的一种存储容器。存储服务过程包括一部分认证的过程,经过认证后用户会对计算中心发送存储服务的请求,计算中心会发送请求消息给存储节点,最后返回用户请求的信息。这一部分数据流涉及到云端外和云端内的数据交互,收到安全的威胁更大。另外,用户信息安全也是云计算安全的重要研究问题。存储服务过程如图3所示。
图3 存储服务流程
(3)镜像服务
镜像安全涉及到系统安全,虚拟机镜像容易遭到恶意攻击者的篡改或非法获取。镜像过程包括用户鉴权,之后通过计算中心获取相应的镜像文件。
图4 镜像服务流程
(4)创建虚拟机实例
启动一个实例时操作云平台过程中最常发生的动作。虽然它包含之前的一些过程,不是原子操作,但在很多应用中都是频繁出现。首先是用户身份验证,鉴权。经过验证后,用户就可以与计算节点API和数据库建立通信,通过计算节点API请求创建虚拟资源消息,请求消息进入消息队列,之后消息进入鉴权,查找相应服务,检查合法性并请求镜像。之后查找相应镜像的位置信息,到存储节点查找镜像文件。访问存储容器之前同样要经过鉴权。获取镜像文件后,就可以返回给计算节点,计算节点分配用户要求的虚拟资源,并加载镜像。至此,启动实例的过程基本结束。这一过程数据从云端外流入,经过云端内大部分组件,同样受到大量的安全威胁。
图5 创建实例流程
(5)虚拟机之间的数据流
一般情况底层虚拟机之间的数据流是不可见的,但虚拟机安全同样是云平台安全的重要部分,这里加以讨论。
这种情况主要涉及虚拟机对其他虚拟机的监控问题。虚拟机可通过交换机或虚拟网络访问其他物理机上的虚拟机。入侵者攻破虚拟机后能够使用一些攻击技术来嗅探其它虚拟机,从而向其发送和接受数据包,进而监控甚至控制其它虚拟机。
一般情况下,一个虚拟机不能直接访问同一物理机上的其它虚拟机。同一物理机上的虚拟机互访安全问题主要是通过hypervisor。通过hypervisor漏洞访问其它虚拟机。同时还需防止非法登陆hypervisor后进入虚拟机。因此要考虑hypervisor和物理机的配置管理,操作和物理安全。同时还要考虑虚拟机后门,虚拟机和宿主机的因通道能够让入侵者执行潜在的危险操作。另一种情况,在虚拟机从一个物理机迁移至另一个物理机后,残留数据的安全问题,存储磁盘回收和再分配,数据擦洗等。
三、基于威胁模型的安全风险评估
威胁是攻击者针对系统的安全漏洞展开的潜在攻击风险[6]。威胁建模可以对最可能影像系统的威胁进行系统的识别和评价。云计算威胁建模是建立云安全统一防护体系过程中的重要部分。
STRIDE[7]是六种威胁类型英文字母的缩写:
(1)身份欺骗(Spoofing),非法使用其他用户的认证信息。
(2)篡改数据(Tampering),未经授权变更数据,恶意修改数据。
(3)否认(Repudiation),用户拒绝从事活动,并且没有任何办法可以证明他在拒绝履约。
(4)信息泄露(Information Disclosure),信息泄露给没有读取权限的个人。
(5)拒绝服务(Denial of Service),拒绝为正当权限的用户服务。
(6)提高权限(Elevation of Privilege),使非法使用者或用户获得高于自己权限的操作,从而危害系统安全。
利用STRIDE模型对系统进行威胁风险分析主要过程是:分析系统的体系结构及有关数据流,考虑上述类别的安全威胁是否会对数据流关联的节点造成危害,记录识别这些安全威胁,并对威胁发生的可能性及其对系统的危害严重程度进行量化,进而对系统的风险进行评估。为了遵循STRIDE威胁模型,需要将系统分解为相关的组件,并分析每个组件是否易受到威胁攻击,从而找到减轻威胁所带来的影响的方法。[8]
1.教育云平台安全风险分析
针对上一章描述的数据流过程,对数据流关联的节点可能受到的风险进行总结。
认证过程是客户端到云端的入口,涉及到跨越云端边界,是攻击者入侵的重要途径,也是安全威胁最多的部分。这部分的威胁主要包括客户端接口的安全性问题,账户泄露导致非法登录;身份欺骗;业务高峰时段导致的网络拥堵,甚至遭到DDoS攻击导致网络瘫痪。越权访问,越权操作;对服务器的Web应用入侵,上传木马等行为。
存储服务主要关系到数据安全。在虚拟环境中传文件数据被监听;云用户从虚拟机逃逸后获取其他用户隐私数据;物理灾难导致的数据不可用;数据安全隔离漏洞导致恶意用户访问其他用户数据。越权操作,对数据库入侵。数据密钥泄露,和数据密钥丢失后无法访问数据;窃取数据后的数据劫持。
镜像安全威胁类似数据安全,主要涉及越权获取,非法篡改。
操作虚拟机的过程包括前三个过程的一些步骤,除了上述的安全威胁外,还包括服务器、宿主机、虚拟机的操作系统和数据库暴力破解,补丁更新不及时导致的漏洞;单台虚拟机被入侵后对区域虚拟机的渗透攻击,并导致病毒和恶意行为在网络内传播。通过虚拟机漏洞逃逸到hypervisor,获得物理主机的控制,进而访问其他虚拟机;攻破虚拟系统后进行任意的破坏行为,对其他账户潜伏破解。
虚拟机之间交互时的安全问题更加重要,这部分底层的数据流量对上层不可见,同一宿主机上的虚拟机之间通信不会通过传统的防火墙,失去了对这部分流量的安全效果。共享剪切板技术提供了宿主机和虚拟机之间的数据交换方式,同时也给恶意程序提供了数据传输方法;虚拟机可通过ARP中毒的方式嗅探其它虚拟机发送或接收数据;虚拟机迁移过程后的数据清除;不同等级的数据混杂在一台宿主机中,平衡多租户的安全级别问题;虚拟机间可以通过硬件直接通信,这部分流量缺少防护,hypervisor也可能被入侵。虚拟机和宿主机之间的后门和隐通道能够让入侵者执行潜在的危险操作。虚拟机在动态变化扩容缩容过程中,错误的配置或操作可能导致安全漏洞,同时也可导致资源竞争和滥用。虚拟机迁移过程缺少安全审计和安全检测,虚拟机可能在不产生警告或审计跟踪的情况下被部署在另一个物理机上。
2.教育云系统存在的安全威胁(如表1所示)
3.威胁评估
通过之前的过程,对云平台的威胁已经有了分析和归纳,现在要做的是对威胁进行量化,对威胁造成的危险进行评价,这样在后续解决这些安全威胁时有所侧重。威胁量化公式是:威胁量化值(R)=威胁发生的概率(P)×威胁发生的严重程度(D),其中变量威胁发生概率P和变量威胁发生的严重程度D包含多种因素,下面分别说明其各自含义。
威胁可能性考虑的因素有威胁难易程度(Tq)的量化值和攻击因子(A)。计算公式为P=Tq×A。Tq是威胁重现性,威胁可发性,威胁可利用性的量化值之和。攻击因子A是攻击技术流行度,攻击技术难易程度及攻击后果三个量化值得平均值。[9]根据STRIDE模型量化评价方法,上述所有子因素的量化值取值范围是1~5。由于这部分数值表现的是威胁发生概率,故将最后计算数值做线性归一化处理,最终威胁发生概率公式为:
表1 威胁识别
图6 威胁风险量化值
威胁发生的严重程度是威胁损失量(E)和损失权重(v)的乘积。即D=E×v。这其中威胁损失量E是威胁潜在损失,影响用户数量和资产价值之和。同样的,所有子因素的量化值取值范围是1~5。损失权重v描述的是威胁在教育云系统中发生的位置严重程度的量化值,我们按安全等级从高到低将教育云平台分为多个个安全工作区,如实时控制区、非控制生产区、生产管理区、管理信息区。[10]根据STRIDE威胁量化方法,损失权重可以用等级0-10来衡量。由于损失权重数量级远大于威胁发生概率,使得概率对结果影响过小,在此对损失权重用sigmoid函数做归一化处理。此处使用sigmoid函数的原因是,sigmoid函数输入在-5~5之间近似映射到[0,1]区间,同时在sigmoid函数的S曲线在趋近于0和1的两端很平缓,符合我们描述的在教育云在核心区域重要性程度都很高的特点。因此此处最后威胁量化值得公式是:
表2 变量数据
我们通过对不同教育云系统的渗透测试数据对以上列举的主要威胁进行风险量化,量化结果如下图所示。各威胁的变量数据如表2所示。
四、教育云系统安全防护架构设计
针对以上安全威胁和隐患,教育云安全需要在传统信息系统安全措施的基础上,考虑云平台的特点,加入先进的安全技术,提高云平台的安全性。
本文提出的安全防护体系按云边界和物理边界划分为三层。根据之前的威胁分析,在应用接入层,平台组件层,基础设施层分别进行安全防护。同时设置安全管理主要负责对安全事件的处理策略以及安全日志的管理。如图7所示。
图7 教育云安全防护体系
1.基础设施层安全
基础设施层主要涉及物理设备安全,虚拟化安全以及网络安全。物理设备安全涉及的地理物理环境安全不再加以叙述。在网络安全方面,由于物理机安全直接关系到虚拟机的安全,因此需要用防火墙,IPS入侵防护系统等方式进行访问控制,同时部署入侵检测系统,以检测网络攻击并警报。对进出流量同样需要部署流量监测系统,防止受到DDoS攻击,也要防止大量资源被攻击者控制而发动的DDoS攻击。为防止物理机系统的入侵,需要部署恶意代码防护系统,保证物理机系统以及Hypervisor层的安全。在平台内虚拟机或物理机之间的通信同样需要流量监测及恶意代码防护,防止入侵的蔓延。虚拟化安全主要防护思路是,在防止通过物理机入侵虚拟机的同时,要防止虚拟机横向地攻击其他虚拟机,也要防止纵向地入侵操作系统,虚拟机硬件甚至物理机操作系统。
2.平台组件安全
云平台组件主要涉及的是云实例整个生命周期的各种操作和数据处理过程的安全问题。认证授权过程主要涉及加密算法的应用和密钥管理,可利用UUID和PKI的方式进行授权认证。存储服务涉及从数据的产生,传输,存储,使用,迁移,销毁,备份和恢复的整个生命周期。在生命周期的不同阶段对数据进行分类分级,标识,加密,审计,销毁等手段。
3.应用安全
首先需要身份认证鉴别,对访问者进行过滤,部署严格的访问控制策略,和权限管理策略,对安全域内外的通信进行有效监控。Web应用防火墙根据预设的安全规则检查流量,并对流量统计分析,实时监控云平台流量的地域分布,应用组成分布,变化趋势,并生成统计表[11]。建立异常流量检测分析系统,实现流量的分析和过滤。
4.安全管理
安全管理负责提供安全策略,保障业务的连续性。安全事件,安全日志的管理。管理云平台,云服务,云数据,云设备的生命周期,运行维护和检测,并进行安全评估。云平台的管理者可以配备专门的安全管理组织以及管理人员,保障系统的良好运转。
五、结束语
威胁建模能够帮助系统安全评估人员理解系统可能面临的安全威胁[12],本文希望通过威胁识别为建立统一的云计算安全防护体系提供数据支撑和安全策略的参考。
[1]黄高攀,张明明,宋浒.企业云平台架构研究[J].数字通信世界,2015(12).
[2]马军伟,罗红波,栗秀琴.云计算信息安全问题研究[C].中国电机工程学会电力通信专业委员会第九届学术会议论文集,中国电机学会,2014:840.
[3]张伟.企业云计算信息安全风险评估探讨[J].广东科技,2013(20):49.
[4]马铁牛.云计算在电力信息系统中的应用[J].网友世界-云教育,2014(19):82.
[5]杨旭昕,刘俊勇.电力系统云计算初探[J].四川电力技术,2010,33(3):72-73.
[6]姜莉.一种基于STRIDE模型的Web服务安全评估方法研究[D].湖南大学,2010.
[7]储颖,郝林.STRIDE威胁模型在认证中心CA设计中的应用[J].云南大学学报,2004(26增刊):54-57
[8]周延.改进的STRIDE威胁模型研究[D].华中科技大学,2015(17).
[9]何伟,谭曙光,陈平.一种基于STRIDE威胁模型的风险评估方法[J].信息安全与通信保密,2009(10):48-49.
[10]王利赛,杨明玉,孙月琴.电力云研究综述[J].电力信息化,2011,9(5):3.
[11]李国军,刘文懋.绿盟科技云安全解决方案[DB/ OL].2015.http://www.nsfocus.com.cn/content/details_62_ 2051.html.
[12]佟鑫,班晓芳.基于STRIDE威胁模型的网银安全威胁分析[C].第五届信息安全漏洞分析与风险评估大会论文集,上海,2014:604.
(编辑:王晓明)
TP393
A
1673-8454(2017)05-0015-05