摘 要:由于云环境资源高度整合且边界不清晰,因此存在安全风险,此外目前缺乏对云平台安全状态的全面认知,阻碍了云平台进一步的应用和发展。根据云计算应用典型系统架构特点,全面梳理云计算环境所面临的各种安全威胁,并针对云计算环境分层体系架构特点,结合现有的云安全标准和规范,研究了云计算的安全防护体系,提出了基于统一安全的策略,设计和构建了云安全监管体系。 云计算技术自从被提出,就是计算机领域广泛关注的技术热点之一,其发展应用给社会生活各个领域带来了显著的影响和变化[1]。云计算技术的广泛应用改变了传统的技术体系架构,带来了虚拟化、动态可扩展、按需部署、灵活性高、可靠性高、性价比高和可扩展性等技术优点。随着相应产品的应用,云计算技术也改变了信息领域的组织管理模式。然而,云计算技术也带来了新的安全问题,如伪造身份、恶意软件、隐私泄露、数据窃取、有组织的网络攻击等。但是,目前该领域尤其缺乏对云计算技术安全的认知和鉴别手段,也缺乏对云计算安全的统一监管,无法消除用户使用云计算技术的安全顾虑,这一问题成为影响云计算技术进一步推广的最大障碍。由于云计算技术具有体系架构复杂、虚拟资源与物理资源相结合、多租户使用和共享等特点,导致部署于网络边界的安全防护传统手段已经无法有效应对云环境的安全风险。解决云计算安全问题,需要突破原有的安全理论界限,从顶层技术的角度出发,结合安全保密现代化的需求,并根据云计算应用典型系统架构特点,全面梳理云计算各个层次所面对的多种安全威胁和存在的安全问题。本文针对所面临的安全威胁,根据云计算环境分层体系架构特点,结合现有的云安全标准和规范,研究云计算的安全防护模型,提出基于统一安全的策略,进而设计和构建云安全监管体系。由于云环境中采用了虚拟化共享技术,使得不同应用之间的资源能够充分共享,但应用软件结构更加复杂,应用业务逻辑层次增加,导致攻击者可利用的攻击面增加,可使用的攻击路径和攻击手段也大大增加。此外,云平台不同架构层次上,也有着不同的安全风险。 云基础设施包括服务器、交换机、存储等硬件设备。这些设备可以分类为网络传输设备和计算存储设备,由于其不同的运行特点两者存在不同的安全风险。在云计算环境中,计算存储设备是云最基本的基础设施,是进行计算和存储数据的主要设备,其硬件形式为机架式服务器。在该环境中,计算存储设备也面临着传统服务器面临的风险,如存在系统漏洞、非法复制、非法使用权限、数据窃取、数据丢失、硬件后门等方面的安全风险。云平台的物理传输网络存在外来网络非法入侵、网络窃取、数据泄露等安全风险,以及网络设备自身安全性方面的风险,如网络设备被非法控制、网络路由被非法劫持等。另外,云平台传输网络应采取密码技术保证数据传输的机密性和完整性,防止数据被监听泄密。虚拟化是云计算特有的技术。引入虚拟化技术的同时,也带来了传统系统中未有过的安全风险和威胁。基础设施服务(Infrastructure as a Service,IaaS)层主要包括虚拟机、云数据存储和传输、虚拟化监视器、网络虚拟化和虚拟化管理几个部分。基础设施服务层为云平台提供基础的运行服务,基础设施的安全是云平台安全的基础。除了传统的安全威胁以外,虚拟资源的管理和分享也导致了新的安全威胁。虚拟机面临传统主机系统的所有安全风险。具体面临的安全威胁如下:操作系统和数据库被暴力破解,造成非法访问;服务器的Web应用被入侵,遭遇上传木马、上传webshell等攻击行为;补丁更新不及时导致的漏洞被利用;不安全的配置和非必要端口的开放导致的非法访问和入侵。在云计算环境中,由于存储虚拟化的引入,物理存储资源共用和复用,虚拟机的数据(磁盘内容)以文件的形式存储在物理的存储介质上,并通过网络方式访问,因此面临着以下风险:(3)虚拟机的内存和存储空间被释放或再分配后被恶意攻击者窃取;(4)逻辑卷被多个虚拟机挂载导致逻辑卷上的敏感信息泄露;(5)云用户从虚拟机逃逸后获取镜像文件或其他用户的隐私数据;(7)数据安全隔离不严格导致恶意用户可以访问其他用户数据;在云计算环境中,资源是通过虚拟化监视器(Hypervisor)等方式对资源进行逻辑切分,其中存在以下安全风险:(1)Hypervisor管理器缺乏身份鉴别,导致非法登录Hypervisor后进入虚拟机;(2)控制单台虚拟机后,通过虚拟机漏洞逃逸到Hypervisor,获得物理主机的控制权限;(3)控制单台虚拟机后,通过Hypervisor漏洞访问其他虚拟机;(4)缺乏服务质量(Quality of Service,QoS)保证机制,虚拟机因异常原因产生的资源占用过高而导致宿主机或宿主机下的其他虚拟机的资源不足,导致正常业务异常或不可用;(5)缺乏针对虚拟机的“监、控、防”机制,不能及时发现攻击行为,攻击者攻破虚拟系统后,可以进行任意破坏行为、网络行为,还可以猜解其他账户,并能长期潜伏;(6)虚拟机可能因运行环境异常或硬件设备异常等原因出错而影响其他虚拟机;(7)Hypervisor等核心组件缺乏完整性检测,存在被破坏和篡改的风险;(8)抗毁能力不足,核心组件缺乏快速恢复机制,在遭到破坏后,无法快速地恢复。在云计算模式下,随着网络虚拟化的引入、物理网络资源的共享和传统边界的消失会带来以下安全风险:(1)传统的防火墙、入侵检测系统(Intrusion Detection System,IDS)、入侵防御系统(Intrusion Prevention System,IPS)等网络安全设备只能部署在物理网络的边界,无法对虚拟机之间的通信进行细粒度访问控制;(2)网络资源虚拟化后,导致传统网络边界的消失,无法有效地对云环境流量进行审计、监控和管控;(3)黑客通过虚拟机向整个虚拟网络进行渗透攻击,并在虚拟网络内传播病毒木马等恶意软件,威胁到整个虚拟网络甚至计算平台的安全运行;(4)机之间进行的地址解析协议(Address Resolution Protocol,ARP)攻击、嗅探;(5)虚拟系统在热迁移过程中数据被非法嗅探和读取;(7)重要的网段、服务器被非法访问、端口扫描、入侵攻击;(8)内部用户或内部网络的非法外联行为无法检测和阻断;(9)内部用户之间或者虚拟机之间的端口扫描、暴力破解、入侵攻击等。利用虚拟化管理软件自身存在安全漏洞,入侵管理平面,对云平台进行破坏;缺乏统一的、高安全性的认证和鉴权体系,导致云平台管理员账号被非法冒用、暴力破解等带来的安全威胁;管理员权限集中,缺乏审计和回溯机制,导致管理平面的安全风险;管理平面缺乏安全设计,导致对服务器、宿主机、虚拟机等进行操作管理时存在被窃听和重放的风险;Hypervisor、虚拟系统、云平台不及时更新或系统漏洞导致的攻击入侵。平台服务(Platform as a Service,PaaS)层向应用提供开发、部署、运行需要的数据库服务、Web服务平台、消息中间件等云平台服务,这些平台服务的安全性和服务数据的安全性直接相关,并直接影响云的安全。云平台服务提供的数据库服务、Web服务平台、消息中间件等云平台服务基于统一的模板创建,如果云平台服务存在安全漏洞,攻击者就可以利用这个安全漏洞,对云平台服务开展广泛攻击。云平台服务安全面临以下风险:注入攻击、跨站脚本、可扩展标记语言(eXtensible Markup Language,XML)外部实体漏洞、失效的身份认证、失效的访问控制、安全配置错误、使用含有已知漏洞的组件、不充分的日志和监控等安全风险。通过云平台接口实现对云平台服务的操作和管理,如果接口的安全保护不到位或者接口的传输协议有安全问题就会产生安全风险。云平台接口安全面临以下风险:未经授权的用户,进行非法访问;接口受到分布式拒绝服务攻击(Distributed Denial Of Service attack,DDOS)攻击,接口可用性遭到破坏;传输协议未加密或加密不充分,导致授权用户被窃听,因此发生数据泄密;传输协议对数据完整性保护不足,存在传输数据被篡改风险,完整性被破坏。由于应用的数据集中存储在云平台中,一旦存在安全风险会影响到所有的应用,将造成特别重大的损失,因此要格外注意云平台的数据安全保护。云平台数据服务的安全风险主要有数据泄露和数据丢失两方面,数据泄露安全风险包括:数据库未授权访问、数据库相关账户劫持、不完善的身份验证逻辑、用户错误配置、不安全的应用程序接口(Application Programming Interface,API)接口(爬虫爬取)等;数据丢失安全风险包括:内部人员窃取、密码泄漏、意外删除文件、恶意软件破坏、硬件设备故障、非法入侵等。云平台的软件服务(Software as a Service,SaaS)层向应用提供软件服务,这些软件服务的安全性直接影响云平台的安全。云平台软件服务安全面临以下风险:软件服务本身存在安全漏洞,导致受到恶意攻击,如结构化查询语言(Structured Query Language,SQL)注入、跨站脚本攻击等;云平台软件服务是基于Web的网络管理软件,Web应用面临拒绝服务攻击、中间人攻击、恶意软件注入攻击等安全风险。云平台软件服务在多租户应用模式下,不同用户共享统一的计算、网络、存储资源,应该实现完全隔离。但如果不能对各个用户的软件服务进行隔离,恶意用户就能直接访问他人的软件服务,并且可以改变软件服务设置,即非授权用户可能突破隔离屏障,访问、窃取、篡改其他用户的数据。云平台软件服务隔离的主要安全风险有:计算资源未隔离、网络资源未隔离、存储资源未隔离。云平台软件服务在很多方面都需要进行身份和访问管理,因此将身份和访问管理集成到云平台,能为云平台软件服务提供统一的管理服务。但身份和访问管理一方面需要接受传统攻击方法的考验,另一方面也在云平台环境下面对着新的考验。身份和访问管理面临账户攻击和内部威胁两个方面的安全风险。账户攻击是指攻击者通过某些途径获取账户信息,这些途径包括:网络钓鱼、软件漏洞利用、撞库、密码猜解、密码泄露等,然后进行一些恶意的操作或者未授权的活动。内部威胁是指内部具有访问权限的内部人员也有可能因安全意识缺失、错误的软件/服务配置或者不规范的软件使用等原因造成的内部安全威胁。云计算的安全问题已成为阻碍其发展的重要因素。为了促进云计算的发展,规范提高云平台的安全性,因此需要提供统一的云计算安全标准。各国政府机构和国际标准化组织制定了许多云计算安全的标准,这些标准规范成为了评判云平台安全性的重要依据。 针对云计算标准,美国国家标准技术研究院(National Institute of Standards and Technology,NIST)发布了《SP500-291 云计算标准路线图》和《SP 500-292 云计算参考架构》,给出了云计算定义模型,如图1所示。云计算定义模型定义了云计算的3种基本服务模式(PaaS、SaaS、IaaS)、4种部署模式(私有云、社区云、公有云和混合云),以及5个基本特征(按需自服务、广泛的网络接入、资源池化、快速伸缩、服务可度量)。2013年5月NIST发布了《SP 500-299 NIST 云计算安全参考框架(NCC-SRA)》,指导构建安全云环境[2],安全参考模型如图2所示。云安全联盟(Cloud Security Aliance,CSA)发布的云安全指南为云计算的安全防护构建提供了指导。CSA的主要成果有:《云计算关键领域安全指南》《云计算的主要安全威胁报告》《云安全联盟的云控制矩阵》《身份管理和访问控制指南》等[3]。其中,《云计算关键领域安全指南v4.0》共14个域(章节),第1域描述了云计算概念和体系,指南的其他13个领域着重介绍了云计算安全的关注领域,以解决云计算环境中战略和战术安全的“痛点”,从而可应用于各种云服务和部署模式的组合[4]。这些域分成了两大类:治理(governance)和运行(operations)。其中治理域中,要求对云平台进行合规化和审计管理。随着云计算安全问题凸显,云平台的安全性问题已经上升到事关国家安全和民生稳定的高度,我国政府也制定了一系列相关法律法规来规范和指导云服务商为云平台应增加相应的安全防护能力。相继颁布的GB/T 22239—2019《信息安全技术 网络安全等级保护基本要求》、GB/T 31167—2014《信息安全技术 云计算服务安全指南》和GB/T 31168—2014《信息安全技术 云计算服务安全能力要求》为云安全标准的基础。2014年9月首批发布的云计算服务安全方面的国家标准:GB/T 31168—2014《信息安全技术 云计算服务安全能力要求》和GB/T 31167—2014《信息安全技术 云计算服务安全指南》,是审查云计算服务网络安全能力的重要标准。《云计算服务安全指南》指导政府部门在云计算服务的生命周期采取相应的安全技术和管理措施,保障数据和业务的安全,安全地使用云计算服务[5]。《云计算服务安全指南》确定了在云计算服务的使用过程中要注重运行监管,即采用云计算服务后,为了确保服务中的数据和业务的运行安全,需要对数据和业务及其采用的云计算计算平台进行持续监管[5]。《云计算服务安全指南》在标准中指出:云计算环境安全需要进行安全监管。安全监管即要求第三方测评机构在使用前对云计算环境的安全能力和安全云计算服务网络进行审查和测评。在服务运行时也要对云服务和云形态实施安全监管。为了适应新技术、新应用情况下信息安全等级保护工作的开展,国家安标委组织进行修订,发布了GB/T 22239—2019《信息安全技术 网络安全等级保护基本要求》。该标准也被称为等保2.0。该标准针对云计算、大数据、移动互联、物联网工业控制等新技术新应用领域提出等保扩展安全要求[6]。等保2.0标准中将安全技术要求重新划分为4个层面:物理和环境安全、网络和通信安全、设备和计算安全、应用和数据安全[7]。在网络和通信安全方面要求安全审计。云服务方和云租户分别收集各自的审计数据,并根据职责划分提供审计接口,实现集中审计。在设备和计算安全方面,云服务方负责基础设置的安全审计,云租户提供计算服务中的安全审计,审计要求提供数据接口实现集中审计。在应用和数据安全方面,和上面的类似,要求根据职责划分,提供各自的审计接口实现集中审计。可见等保2.0标准对于安全审计在各个层面都进行了要求,云的安全数据需要集中收集和审计,从而对云安全进行监管。前面从云的分层架构角度对云上各层面临的安全风险进行了详细的梳理和阐述,同时对应对这些安全风险需要构建的安全能力提出了具体的要求。本节将针对风险和安全能力需求,从基础设施安全、IaaS、PaaS、SaaS、云安全管理和云安全监管多维度构建云平台安全的技术框架,解决前面的安全风险问题。从云平台安全技术体系的角度,将云平台安全划分为:基础设施安全、IaaS安全、PaaS安全、SaaS安全、云安全管理和云安全监管6个层面。如图3所示。基础设施安全方面,除了对于服务器、交换机、存储等硬件设备的传统安全防护以外,还包括针对虚拟化监视器的安全保护技术,包括组件防篡改、虚机隔离、内存隔离、虚拟机监视程序(Virtual Machine Monitor,VMM)元数据保护等等。IaaS层安全方面,主要包括虚拟机安全、虚拟网络安全以及虚拟存储安全3方面。虚拟机安全包括虚拟机中的端口管控、外设安全、防病毒、漏洞扫描以及入侵检测等。虚拟网络安全包括云平台上东西向的网络防护,包括流量审计、访问控制、入侵检测与防护、防ARP攻击以及带宽流量管理等。虚拟存储安全,包括虚机磁盘、镜像、快照的存储加密、完整性保护、迁移加密和访问控制。PaaS层安全方面,主要包括PaaS的服务安全、接口安全以及数据安全3个方面。服务安全,包括服务的访问控制、身份认证、Web应用防护、合规配置、操作审计等。接口安全,包括接入认证鉴权、接口通信加密、传输数据完整性、DDos防护等。数据安全方面,包括数据的访问控制、认证鉴权、数据分类、数据脱敏等。SaaS层安全方面主要涉及防护应用安全,包括应用身份认证、应用访问控制、Web应用防护应用数据加密以及应用行为审计等。云安全管理方面,云上安全防护与传统安全防护主要的区别在于防护边界的消失和云上资源的动态变化。云安全服务的服务链编排,包括资源编排、服务生命周期管理等;云安全服务的弹性伸缩包括服务高可用、服务横向伸缩以及服务负载均衡等。此外,云安全管理还包括统一的云安全态势、云安全操作、日志审计。云安全监管将对云平台、云服务、云应用、云安全服务进行全方面的安全监管。如Gartner等研究机构对云上安全防护提出了“自适应”的云安全架构要求。对云安全管理来说要实现“自适应”的云安全架构,必须实现云安全策略的自适应,包括统一获取云安全服务的安全策略、安全策略自适应调整、安全策略统一合规检查等。云安全状态检查,包括对云组件、云网络和云资产进行安全检查,检测安全状态是否满足安全要求,提出改善建议。云安全合规性检查,是对云平台和云服务是否符合相关安全标准和规范进行检查,分析其安全状态,通过自定义合规策略实现安全基线检查。第3节从云平台的基础设施安全、IaaS安全、PaaS安全、SaaS安全、云安全管理和云安全监管6个层面构建了云平台的安全体系,下面针对云安全监管系统的设计具体如下文所述。基于云安全监管系统构建一套统一的云安全监测和管理体制,为管理员提供统一的云安全监管界面,并为部署在云平台中的虚拟机提供安全合规性检测、网络连通性监测、网络流量流向监测、网络流量抓包分析等功能,实现云上安全策略有效性分析。云安全监管系统采用有代理+无代理双监控模式,提供虚拟网络安全有效性监测、虚拟网络流量监控、通信关系可见、云上抓包等能力,为用户清晰展示云内的网络访问关系,便于及时验证网络安全防护策略配置有效性,为优化网络策略配置提供有力支撑,实现云上安全的“可看可查”。云安全监管系统围绕云环境配置合规性、组件可信性、系统脆弱性、网络连通性、策略合理性、隔离有效性等多个安全维度,应对云环境接入访问和云平台安全防护的安全防护风险,实现对云安全的“可看可查”和“可管可控”。该系统还能够实现云内各虚拟机之间网络连通性监测,便于验证网络访问控制策略的有效性;能够实时监测云内流量分布情况,观察动向流量走向,便于优化网络策略配置;能够提供云上抓包工具,可通过监管平台抓取任意节点之间的数据包,快速定位分析问题。云安全监管系统根据统一的接口规范,通过主动式调用云平台接口获取的信息和被动式接收云平台上报的信息,同时基于统一的云安全监管模型对不同云平台进行综合监管和智能评估。云安全监管系统从多个维度全方位监测和考察云环境安全性,主要包含配置合规性、组件完整性、身份可信性、系统脆弱性、网络连通性、策略合理性、隔离有效性。配置合规性检查宿主机、云平台、虚拟机和容器配置是否合规。策略合理性验证云平台安全域、安全组和泛终端主机安全防护策略的设置是否合理。组件完整性校验云平台各组件是否符合完整性的要求;身份可信性考核云平台中虚拟资产身份标识、认证、鉴权和访问控制是否符合云平台身份验证要求。系统脆弱性扫描宿主机、云平台、虚拟机和容器是否存在安全风险。网络连通性发现云平台虚拟机和容器中服务开放端口间通信关系。隔离有效性评估云平台安全域、安全组和泛终端主机安全防护策略的设置是否生效。云安全监管系统通过综合评分评估云环境安全性,并为云安全管理员提供合理、有效的安全加固方案和措施。云安全监管系统由管理端和代理端组成。云安全监管系统为软件形态,部署于独立的服务器或虚拟机。管理端为云平台提供安全监管功能,提供云平台数据采集、分析、处理及展示能力。代理端以轻量客户端形式部署于虚拟机和宿主机内部,提供虚拟机和宿主机的数据采集、策略验证执行、网络抓包、脆弱性扫描等能力,具体功能组成如图4所示。管理端实现虚拟资产发现、虚拟网络拓扑展示、网络通信可见、网络安全有效性监测、云上抓包、虚拟机运行状态监控、合规性检测、组件完整性检测、身份可信鉴别、安全风险检测、策略有效性检测、安全状态分析等能力。(1)虚拟资产自动发现:云内虚拟机和虚拟网络,绘制虚拟网络拓扑图。(2)虚拟机运行状态监控:采集虚拟机CPU、内存、存储配置、IP地址、MAC地址,操作系统类型等基础信息。(3)虚拟机安全运行状态监控:监控虚拟主机管控客户端运行状态和系统CPU、内存、磁盘IO等运行状态。(4)安全隔离有效性监测:实现云内网络安全隔离有效性检查,自动发现虚拟机内部的服务及监听端口,支持一键监测云内所有服务/端口之间的连通性,且能够导出监测结果。(5)通信关系可见:据实际网络流量,自动绘制云内各虚拟主机与外部的通信关系。(6)抓包工具:提供在线抓包工具,便于快速定位和分析问题。(7)合规性检测:根据预先制定的安全规则或用户自定义的安全规则对云平台进行全方位的检测,检测是否符合安全规则,并给出检测报告,提供修改建议和意见。(8)组件完整性检测:检测云平台系统的运行组件是否完整、是否被非法修改或篡改。(9)身份可信鉴别:检验云用户、云租户、云计算节点、云服务组件、虚拟实体等进行身份认证,是否满足云平台身份认证标准的要求,是否采用生物特征、密码标识、用户口令等多因子验证方法。(10)安全风险检测:扫描云平台和虚机运行的系统和软件是否存在安全风险,并提示用户修补。(11)策略有效性检测:收集和整理云平台及相关安全组件的安全,检验这些策略对云平台是否生效、是否有冲突、是否对防护对象有缺失。(12)安全状态分析:通过检测结果,分析云平台的安全状态,形成检测报告并给出安全建议。代理端实现安全策略验证、基础数据采集、网络抓包、安全风险扫描等能力。云安全监管系统分为管理端和代理端两部分,通过部署在虚拟机中的代理端,获取虚拟机数据采集模块周期性,采集虚拟机内部的基础数据。这些数据包括CPU、内存、存储等虚拟机资源运行状态以及虚拟机内部运行的服务及监听端口等。数据通过消息通信模块发送至管理端,检测虚拟机中的网络流量,检测通信关系和行为,评估云平台网络风险。云安全监管系统管理端为云平台提供安全监管功能,通过与云平台接口和代理采集的数据,对云平台数据进行采集、分析、处理及展示。云安全监管服务端由云安全合规检测服务、云安全数据分析服务、云安全管控服务、数据存储服务、数据采集服务以及用户交互服务组成,各服务组件关系如图5所示。依据等保2.0条例、GJB5612条例等安全保密要求,对云平台提供云配置合规性、云组件完整性、云身份可靠性、云网络连通性、云策略合理性、云脆弱性、云隔离有效性等安全层面控制点进行检测。将检测逻辑规则化,并形成标准规则格式,下发到规则引擎。规则引擎解析控制点检测规则,通过调用云平台远程接口和代理接口,完成控制点检测并形成检测结论和检测意见。云安全数据分析服务对采集层获取的动静态数据进行处理、统计、分析以及关联操作,并将分析、评估结果存放至关系型数据库,为云平台的安全分析、评估和评分提供支撑。数据采集服务将收集的多云资产数据进行统一建模,依次进行校验、规整、聚合入库。云资产、虚拟机基础配置、虚拟机运行状态等静态数据将存入关系型数据库,动态数据,如网络通信数据流量,存入时序数据库。数据采集中心通过双路模式采集云环境中数据;通过调用云软件开发工具包(Software Development Kit,SDK)提供的远程接口,收集云环境资产数据,包括云资产的网络、存储、配置、运行状态等信息;通过代理端数据采集虚拟机和宿主机基础数据、运行数据等。用户交互服务为用户提供Web管理界面,实现云资产查看、合规检测管理、数据分析管理、系统管理等功能的操作界面。管理界面功能操作简单,操作易懂易用,数据呈现清晰。安全性问题已成为阻碍云计算技术进一步应用和推广的最大障碍。云安全监管系统能改变云平台对安全风险缺乏感知、分析和评估手段的现状,打破云平台安全的“黑盒”情况。本文设计基于对云平台网络流量、安全策略和安全数据的汇总分析,并与安全管理系统等现有安全信息系统联动,能够对云平台的配置合规性、组件完整性、身份可信性、系统脆弱性、策略有效性进行评估,实现对云平台安全的“可看可查”和“可管可控”,提升云平台安全防御能力。 引用本文:崔 阳,尚 旭,金 鑫,王 进,温尚国.云平台安全监管及体系设计[J].通信技术,2021,54(8):2003-2012
|