可信云平台服务运行管理模式初探
2014-11-05陈鹏刘军娥李倩张莉
陈鹏 刘军娥 李倩 张莉
摘 要
随着云计算的推进和发展,云平台的建设由基础设施向高端的软件服务延伸,作为一种平台,云平台允许开发者们或是将写好的服务放在“云”里运行,或是使用“云”里提供的服务,或二者皆是。与此同时,云平台的可信性问题越来越引起业界及用户的关注,构建可信性平台变得越来越重要。云平台除了证明平台自身的可信性之外,还必须保证由第三方提供的、运行在云平台上的服务在云平台运行过程中,不会给云平台引入新的风险和隐患,保证云平台上的服务不会影响云平台的可信性。本文结合与上海证券交易所合作的“证券业云平台研发与运营”课题 ,对可信云平台的服务运行管理模式进行了探讨,结合ITIL规范和本单位参与制订的《可信计算平台可信性度量》系列标准,提出一种对云平台服务在运行阶段的可信性管理的机制。
【关键词】可信 云平台 ITIL 威胁模型 防御模型 配置管理 服务部署
1 前言
云平台允许第三方服务提供商提供的服务放在“云”里运行。云计算的灵魂在于服务,服务的灵魂在于安全可靠,如何打造可信、安全的云平台是云服务商和用户关心的问题。由于云平台对于第三方服务的开放性,打造可信的云平台需要满足:(1)云平台自身具有可信保证机制;(2)云平台上的第三方服务在运行中是可靠的。
本文假定云平台是已被证明是可信的,作为本文研究的可信根。云平台提供一套可信服务管理框架,以保证运行在云平台上的服务是可信的。信任云平台的用户可以安全地使用云平台上的。该框架能够实现:(1)防止服务提供商在服务运行过程中篡改程序代码,获取用户数据进行恶意操作;(2)防止服务因其程序依赖的其他程序包和部署环境发现的漏洞而受到攻击。
2 威胁模型
本节介绍在用户在使用第三方服务的过程中可能遇到的威胁模型,及在可信云平台中通过计算手段克服这些威胁的解决方案,使得信任云平台的用户能够使用可信的服务。在本文中,云服务提供商担任可信根。
2.1 来自服务提供商的威胁
部署在云平台上的第三方服务在运行过程中主要受到两种来源的威胁,分别来自服务提供商和黑客等外部群体。本节对服务提供商在服务运行过程中篡改服务源码的威胁及防御措施进行介绍。
2.1.1 威胁模型
图2-1展示了一个用户在使用第三方提供的服务时存在的威胁模型。服务提供商提供了一个恶意服务程序,部署在服务提供商的服务器上,服务提供商对服务进行运行和控制。一个信任这个服务提供商的用户发现了这个服务并访问该服务。该服务能够获取到用户的数据,并有可能不正确地使用用户数据,或在用户未知的情况下,将用户数据泄露给其他的恶意服务。但在此模型中,用户想要使用该服务,只能相信服务提供商,此外并无其他选择。
2.1.2 防御模型
图2-2展示了针对威胁模型1的防御模型。云平台提供商作为中立的第三方可信平台,对发布在云平台上的服务进行严格的验证,并对服务实例进行封装,防止实例被篡改。验证主要包括服务是否存在漏洞,是否存在恶意代码等进行全方面的检查。封装即保证一旦实例运行起来后就不能被修改。在云平台,云服务提供商将服务封装在虚拟机镜像中,以实例的方式运行服务,使得实例被隔离并防止服务提供商对实例的修改。这样,在云服务提供商将服务部署到云平台之后,服务提供商无法在其中增加恶意代码,也无法获取用户数据。
通过上述措施,信任云平台的用户可以放心的使用云平台中部署的第三方服务。
2.2 来自外部的攻击
除了前文介绍的来自服务提供商的威胁,服务还可能因其程序依赖的程序包或者部署环境存在漏洞而受到黑客等外部群体的攻击。本节对该类威胁模型和针对该类威胁的防御模型进行介绍。
2.2.1 威胁模型
图2-3展示了服务在运行过程中存在的漏洞威胁模型。2013年7月17日的Struts2高危漏洞事件造成了大规模的信息泄露。利用漏洞,黑客能够发起远程攻击,轻则窃取网站数据信息,严重的可取得网站服务器控制权,构成信息泄露和运行安全威胁,无数的网民受其影响。7.17事件只是我们的漏洞威胁模型中的一个案例。服务实例在运行过程中,可能会因为程序依赖的包(如Struts2的Jar包)或部署环境(如操作系统、数据库等)存在的漏洞而受到攻击,在这种情况下,用户的信息可能会泄露而造成损失。
2.2.2 防御模型
图2-4描述了针对漏洞威胁模型的防御模型,云平台构建漏洞预防机制。云平台通过爬虫实时获得互联网上公布的漏洞信息,对安全信息库进行不断更新。可心服务检测引擎监测安全信息库中的漏洞,并发现漏洞可能影响的运行在云平台中的服务实例,并将发现的潜在风险通知云平台提供商,以采取预防措施,防止服务受到攻击,也防止第三方服务将风险引入云平台。
3 解决方案
为了提高云平台服务管理的标准化程度及规范性,在云平台对第三方服务的管理中引入了ITIL规范。ITIL(信息技术基础架构库)于上世纪八十年代被提出,用于指导IT组织提供更加经济高效的IT服务,是一套与产品和行业无关的国际最佳实践。ITIL运维服务支持五大流程,即事件、问题、配置、变更、发布管理流程。本文基于ITIL规范及本单位参与制订的《可信计算平台可信性度量》系列标准,提出一种对云平台服务可信性管理的机制。本节对与第二章威胁模型相关的流程进行介绍。
3.1 服务发布管理
对于第三方服务提供商提交给云平台的服务,云平台依据图3-1的发布管理流程对服务的发布进行严格管理,以预防服务提供商在服务发布到云平台之后,对于服务源代码的恶意篡改行为。
在上述流程中,服务提供商只负责向云平台提交服务,在服务部署到云平台之后,不再具有对服务的控制权,无法对运行中的服务进行代码修改等操作,有效预防威胁模型1中描述的威胁。
服务验证包括云平台服务管理员对服务提供商的资质、信用,对服务的漏洞扫描等操作,保证初始的服务是安全的。
服务封装指云平台将服务封装在KVM虚拟机镜像中,通过运行虚拟机实例的方式运行服务,而虚拟机对服务提供商而言是不可见也不可控制的,从而保证服务实例的安全性。云平台采用Eucalyptus云计算软件作为底层的管理软件,利用Eucalyptus的管理能力能够实现对服务实例的隔离并防止服务提供商对服务实例的修改,使服务提供商无法以root身份登陆去修改软件代码和设置信息。具体过程为:
(1)云平台管理员制作KVM镜像,镜像中包含服务提供商上传的服务包及运行依赖的环境;
(2)将制作的镜像相关文件上传到云平台CLC机器,Eucalyptus对镜像进行管理;非云平台管理员无法获取镜像和修改镜像;
(3)用镜像启动虚拟机,服务可对外访问。可通过SSH协议远程登陆虚拟机,SSL私钥保持机密,服务提供商不能通过自己的私钥来访问虚拟机。
3.2 服务配置管理
按照图3-2展示的服务配置管理,云平台对第三方服务商提供的服务进行规范的配置管理,规范化的服务配置信息存储在配置信息库中。
配置信息由服务提供商在提交服务的同时,提交给云平台。配置信息主要包括两类信息:
(1)服务依赖的运行环境配置,包括Web服务器、数据库等。
(2)服务程序中依赖的第三方程序包,如Struts Jar包等,本文采用类似Maven的配置文件pom.xml格式的XML文件提交服务依赖程序包信息,服务提供商如果使用Maven管理项目则可以直接提交项目的pom.xml文件,否则需按照云平台提供的类似pom.xml的文件填写。
提交之后,云平台会对配置项信息的完整性进行检查,并将完整的配置项信息提交到配置信息库,此后如果发现配置项信息变化则进行变更配置项的操作。
3.3 服务漏洞监测
在服务提供商将服务及服务配置信息提交给云平台,并且云平台对服务进行检验、封装并运行之后,运平台的可信服务监测引擎则不断监测服务可能存在的漏洞,并触发风险预警,如图3-3所示。
云平台执行网络爬虫程序,实时从互联网上的多个权威的漏洞和安全信息页面爬取漏洞和安全信息,并存储在采集库中,采集库中的信息经过清洗、提取等处理形成不断更新的安全信息库,包括漏洞、补丁、安全事件等信息。可信服务监测引擎实时监测安全信息库中的信息,并根据这些漏洞、补丁影响的软件、程序包等信息以及云平台服务的配置项信息,判断可能会受到影响的服务,从而生成风险预警信息,并进入事件管理流程。
通过该系统,云平台能够实现对漏洞、补丁相关威胁的预先防范和及时发现,降低服务和云平台的风险。
3.4 事件管理
对于可信服务监测系统发现的漏洞风险进行规范的事件管理。首先云平台管理员接收全部风险预警信息,并进行判别,对误报的风险直接关闭。对于服务真正存在的潜在风险进行分类和在线支持,对于能够直接处理的问题直接进行解决,否则派发给云平台运维工程师进行调查、诊断和解决。
4 总结
本文基于ITIL服务管理及《可信计算平台可信性度量》系列标准,制定了可信云平台服务管理方案。云平台作为可信根,对部属在云平台上的服务进行规范管理,避免了两种安全威胁:(1)防止服务提供商在服务运行过程中篡改程序代码,获取用户数据进行恶意操作;(2)防止服务因其程序依赖的其他程序包和部署环境发现的漏洞而受到攻击。从而使得信任云平台的用户能够安全使用云平台上部署的第三方服务提供上提供的服务。
参考文献
[1]翰纬ITIL Version 3白皮书[Z].翰纬IT管理研究咨询中心,2007(O7).
[2]Web安全:技术与危机并进[Z].信息安全与通信保密,2010.
[3]可信云平台服务技术研究,http://www.doc88.com/p-296946252314.html[Z].2012(06).
作者简介
陈鹏(1979-),男,博士学位,现为北京中科院软件中心有限公司总经理助理。
刘军娥(1986-),女,硕士学位,现为北京中科院软件中心有限公司软件工程师。主要研究方向为云计算、大数据。
李倩(1987-),女,硕士学位,现为北京中科院软件中心有限公司软件工程师。主要研究方向为云计算、大数据。
张莉(1969-),女,硕士学位,北京中科院软件中心有限公司IT服务部副总经理、技术总监,中国科学院大学硕士生导师。主要研究方向为软件架构、数据挖掘、产品数据管理、云计算。
作者单位
北京中科院软件中心有限公司 北京市 100190
服务验证包括云平台服务管理员对服务提供商的资质、信用,对服务的漏洞扫描等操作,保证初始的服务是安全的。
服务封装指云平台将服务封装在KVM虚拟机镜像中,通过运行虚拟机实例的方式运行服务,而虚拟机对服务提供商而言是不可见也不可控制的,从而保证服务实例的安全性。云平台采用Eucalyptus云计算软件作为底层的管理软件,利用Eucalyptus的管理能力能够实现对服务实例的隔离并防止服务提供商对服务实例的修改,使服务提供商无法以root身份登陆去修改软件代码和设置信息。具体过程为:
(1)云平台管理员制作KVM镜像,镜像中包含服务提供商上传的服务包及运行依赖的环境;
(2)将制作的镜像相关文件上传到云平台CLC机器,Eucalyptus对镜像进行管理;非云平台管理员无法获取镜像和修改镜像;
(3)用镜像启动虚拟机,服务可对外访问。可通过SSH协议远程登陆虚拟机,SSL私钥保持机密,服务提供商不能通过自己的私钥来访问虚拟机。
3.2 服务配置管理
按照图3-2展示的服务配置管理,云平台对第三方服务商提供的服务进行规范的配置管理,规范化的服务配置信息存储在配置信息库中。
配置信息由服务提供商在提交服务的同时,提交给云平台。配置信息主要包括两类信息:
(1)服务依赖的运行环境配置,包括Web服务器、数据库等。
(2)服务程序中依赖的第三方程序包,如Struts Jar包等,本文采用类似Maven的配置文件pom.xml格式的XML文件提交服务依赖程序包信息,服务提供商如果使用Maven管理项目则可以直接提交项目的pom.xml文件,否则需按照云平台提供的类似pom.xml的文件填写。
提交之后,云平台会对配置项信息的完整性进行检查,并将完整的配置项信息提交到配置信息库,此后如果发现配置项信息变化则进行变更配置项的操作。
3.3 服务漏洞监测
在服务提供商将服务及服务配置信息提交给云平台,并且云平台对服务进行检验、封装并运行之后,运平台的可信服务监测引擎则不断监测服务可能存在的漏洞,并触发风险预警,如图3-3所示。
云平台执行网络爬虫程序,实时从互联网上的多个权威的漏洞和安全信息页面爬取漏洞和安全信息,并存储在采集库中,采集库中的信息经过清洗、提取等处理形成不断更新的安全信息库,包括漏洞、补丁、安全事件等信息。可信服务监测引擎实时监测安全信息库中的信息,并根据这些漏洞、补丁影响的软件、程序包等信息以及云平台服务的配置项信息,判断可能会受到影响的服务,从而生成风险预警信息,并进入事件管理流程。
通过该系统,云平台能够实现对漏洞、补丁相关威胁的预先防范和及时发现,降低服务和云平台的风险。
3.4 事件管理
对于可信服务监测系统发现的漏洞风险进行规范的事件管理。首先云平台管理员接收全部风险预警信息,并进行判别,对误报的风险直接关闭。对于服务真正存在的潜在风险进行分类和在线支持,对于能够直接处理的问题直接进行解决,否则派发给云平台运维工程师进行调查、诊断和解决。
4 总结
本文基于ITIL服务管理及《可信计算平台可信性度量》系列标准,制定了可信云平台服务管理方案。云平台作为可信根,对部属在云平台上的服务进行规范管理,避免了两种安全威胁:(1)防止服务提供商在服务运行过程中篡改程序代码,获取用户数据进行恶意操作;(2)防止服务因其程序依赖的其他程序包和部署环境发现的漏洞而受到攻击。从而使得信任云平台的用户能够安全使用云平台上部署的第三方服务提供上提供的服务。
参考文献
[1]翰纬ITIL Version 3白皮书[Z].翰纬IT管理研究咨询中心,2007(O7).
[2]Web安全:技术与危机并进[Z].信息安全与通信保密,2010.
[3]可信云平台服务技术研究,http://www.doc88.com/p-296946252314.html[Z].2012(06).
作者简介
陈鹏(1979-),男,博士学位,现为北京中科院软件中心有限公司总经理助理。
刘军娥(1986-),女,硕士学位,现为北京中科院软件中心有限公司软件工程师。主要研究方向为云计算、大数据。
李倩(1987-),女,硕士学位,现为北京中科院软件中心有限公司软件工程师。主要研究方向为云计算、大数据。
张莉(1969-),女,硕士学位,北京中科院软件中心有限公司IT服务部副总经理、技术总监,中国科学院大学硕士生导师。主要研究方向为软件架构、数据挖掘、产品数据管理、云计算。
作者单位
北京中科院软件中心有限公司 北京市 100190
服务验证包括云平台服务管理员对服务提供商的资质、信用,对服务的漏洞扫描等操作,保证初始的服务是安全的。
服务封装指云平台将服务封装在KVM虚拟机镜像中,通过运行虚拟机实例的方式运行服务,而虚拟机对服务提供商而言是不可见也不可控制的,从而保证服务实例的安全性。云平台采用Eucalyptus云计算软件作为底层的管理软件,利用Eucalyptus的管理能力能够实现对服务实例的隔离并防止服务提供商对服务实例的修改,使服务提供商无法以root身份登陆去修改软件代码和设置信息。具体过程为:
(1)云平台管理员制作KVM镜像,镜像中包含服务提供商上传的服务包及运行依赖的环境;
(2)将制作的镜像相关文件上传到云平台CLC机器,Eucalyptus对镜像进行管理;非云平台管理员无法获取镜像和修改镜像;
(3)用镜像启动虚拟机,服务可对外访问。可通过SSH协议远程登陆虚拟机,SSL私钥保持机密,服务提供商不能通过自己的私钥来访问虚拟机。
3.2 服务配置管理
按照图3-2展示的服务配置管理,云平台对第三方服务商提供的服务进行规范的配置管理,规范化的服务配置信息存储在配置信息库中。
配置信息由服务提供商在提交服务的同时,提交给云平台。配置信息主要包括两类信息:
(1)服务依赖的运行环境配置,包括Web服务器、数据库等。
(2)服务程序中依赖的第三方程序包,如Struts Jar包等,本文采用类似Maven的配置文件pom.xml格式的XML文件提交服务依赖程序包信息,服务提供商如果使用Maven管理项目则可以直接提交项目的pom.xml文件,否则需按照云平台提供的类似pom.xml的文件填写。
提交之后,云平台会对配置项信息的完整性进行检查,并将完整的配置项信息提交到配置信息库,此后如果发现配置项信息变化则进行变更配置项的操作。
3.3 服务漏洞监测
在服务提供商将服务及服务配置信息提交给云平台,并且云平台对服务进行检验、封装并运行之后,运平台的可信服务监测引擎则不断监测服务可能存在的漏洞,并触发风险预警,如图3-3所示。
云平台执行网络爬虫程序,实时从互联网上的多个权威的漏洞和安全信息页面爬取漏洞和安全信息,并存储在采集库中,采集库中的信息经过清洗、提取等处理形成不断更新的安全信息库,包括漏洞、补丁、安全事件等信息。可信服务监测引擎实时监测安全信息库中的信息,并根据这些漏洞、补丁影响的软件、程序包等信息以及云平台服务的配置项信息,判断可能会受到影响的服务,从而生成风险预警信息,并进入事件管理流程。
通过该系统,云平台能够实现对漏洞、补丁相关威胁的预先防范和及时发现,降低服务和云平台的风险。
3.4 事件管理
对于可信服务监测系统发现的漏洞风险进行规范的事件管理。首先云平台管理员接收全部风险预警信息,并进行判别,对误报的风险直接关闭。对于服务真正存在的潜在风险进行分类和在线支持,对于能够直接处理的问题直接进行解决,否则派发给云平台运维工程师进行调查、诊断和解决。
4 总结
本文基于ITIL服务管理及《可信计算平台可信性度量》系列标准,制定了可信云平台服务管理方案。云平台作为可信根,对部属在云平台上的服务进行规范管理,避免了两种安全威胁:(1)防止服务提供商在服务运行过程中篡改程序代码,获取用户数据进行恶意操作;(2)防止服务因其程序依赖的其他程序包和部署环境发现的漏洞而受到攻击。从而使得信任云平台的用户能够安全使用云平台上部署的第三方服务提供上提供的服务。
参考文献
[1]翰纬ITIL Version 3白皮书[Z].翰纬IT管理研究咨询中心,2007(O7).
[2]Web安全:技术与危机并进[Z].信息安全与通信保密,2010.
[3]可信云平台服务技术研究,http://www.doc88.com/p-296946252314.html[Z].2012(06).
作者简介
陈鹏(1979-),男,博士学位,现为北京中科院软件中心有限公司总经理助理。
刘军娥(1986-),女,硕士学位,现为北京中科院软件中心有限公司软件工程师。主要研究方向为云计算、大数据。
李倩(1987-),女,硕士学位,现为北京中科院软件中心有限公司软件工程师。主要研究方向为云计算、大数据。
张莉(1969-),女,硕士学位,北京中科院软件中心有限公司IT服务部副总经理、技术总监,中国科学院大学硕士生导师。主要研究方向为软件架构、数据挖掘、产品数据管理、云计算。
作者单位
北京中科院软件中心有限公司 北京市 100190