云架构下的自然资源云安全防护实践

时间:2023-06-16 18:10:03 公文范文 来源:网友投稿

汪 敏,劳志修,朱 剑,黎国光,赵 磊,林 源

(1.自然资源部国土空间大数据工程技术创新中心广西分中心,南宁 530028;
2.广西壮族自治区自然资源信息中心,南宁 530028)

随着以虚拟化、容器化为代表的云计算环境快速发展,越来越多的政府部门逐步将业务迁移至云端,政务信息化系统呈现传统服务器技术、虚拟化技术、云原生技术等综合要素构建的云环境新面貌。同时,混合的形态也带来了区别于传统网络架构的安全风险。例如,云环境的边界隔离措施失效、主机防护效率低下、云架构持续开发与运行模式不安全等问题。

广西自然资源云在架构不断更迭的过程中,通过引入基于软件定义网络(software defined network,SDN)的“东西向”流量定向检测措施,在虚拟化环境中构建了虚拟网络边界,实现了虚拟主机之间的访问控制、主机加固和应用层攻击防护。本文从虚拟化和容器技术各自的特点出发,分别针对传统基于虚拟机管理器(Hypervisor)的虚拟化架构及容器的云原生架构,探讨存在的安全风险,提出一种行之有效、覆盖相对完整的安全防护思路,并进行了具体实践。

根据不同的应用需求,政务云往往会采用不同的云计算技术部署业务系统。例如,对于需求变更频繁、功能迭代周期短的各类小型业务,基于容器技术的云原生架构敏捷、高弹性、资源池特点实现应用的快速开发和部署上线。基于Hypervisor 的虚拟化则可以提供完整的操作系统层[1],方便部署与操作系统关联性强(如.NET 需要大量调用操作系统的动态链接库)、逻辑较复杂、进程关联性强、中央处理器响应要求高的一些业务。这些虚拟化技术本质都是将原有独立的物理服务器资源虚拟池化,使得计算资源高度集中、高效利用,但也带来了区别于传统业务部署模式的安全风险。

(1)模糊的安全边界。传统业务部署模式的安全模式根据业务特点,基于物理交换机划分虚拟局域网(virtual local area network,VLAN)、防火墙划分安全区域。对每个安全区域采取物理安全设备隔离保护。虚拟化技术引入后,形成了逻辑的虚拟化网络,虚拟机之间、容器之间互访并不经过外部而直接通过虚拟化技术提供的逻辑交换机完成,传统的物理安全设备不能部署到逻辑交换机,导致传统的防护手段失效。因此,自然资源云作为云环境的一种行业分支,需要一种全新手段将逻辑的安全设备插入逻辑交换机,对虚拟化网络进行安全隔离。

(2)臃肿的主机防护。早期传统的虚拟化防护方式在每个虚拟机部署杀毒软件客户端。但每个防病毒软件客户端会消耗同一个物理主机的资源,当对所有防病毒软件客户端下发全局杀毒策略时,这种资源消耗更严重,会直接影响整个虚拟化平台的使用效率。这种方式并不适合部署较大数量虚拟化主机的数据中心或云环境。

(3)云原生架构安全风险。容器技术与Hypervisor 存在本质的技术差异。容器技术会带来新的安全风险,例如,不安全的镜像[2]引发供应链攻击,云原生组件之间应用程序接口(application programming interface,API)访问不受控制,容器编排过程存在不安全配置。

(4)虚拟化宿主机自身的风险。虚拟化基础组件、容器技术自身存在安全缺陷,容器技术一直存在容器逃逸[3]的问题。这些安全风险不仅影响宿主机自身,还导致攻击行为在虚拟机主机之间扩散。宿主机的防护主要依赖传统的防护措施,如入侵防御系统(intrusion prevention system,IPS)虚拟补丁、防火墙访问控制等,这些内容不在本文的讨论范围。

2.1 Hypervisor 虚拟化安全

Hypervisor 虚拟化环境下的安全防护重点在于逻辑环境中构建网络边界,实现虚拟机之间的访问控制及应用层面的虚拟机防护。

网络层面主要关注虚拟机之间的互访流量,这一般被称为“东西向”网络流量。防护技术的核心点在于对“东西向”网络流量进行不同方式的引导,实现虚拟机内部网络流量的可视化与访问控制。2017 年前,较常用的方法通过策略路由将虚拟机内部的流量引导至外部物理安全设备,如虚拟以太网端口聚合器(virtual ethernet port aggregator,VEPA)技术[4];
流量经过外部物理安全设备分析过滤后返回虚拟机内部。这种方式可以对不同网段的虚拟机流量进行过滤。对于同一个网段内互访的虚拟机,流量只存在于虚拟网络的逻辑交换机,该方式无法对流量进行外部引导,所以只是一种不完全的虚拟化安全解决方案。

近年来,随着SDN 的不断发展,对流量的重定向成为一种更便捷有效的方法。SDN 控制器作为整个SDN 网络的大脑,负责对全网数据进行转发和策略编排。支持覆盖(overlay)网络的逻辑交换机是具体的数据转发设备,逻辑交换机基于OpenFlow 协议接收控制器策略并形成流表[5],能够改变网络数据包经过的网络路径。旁路部署于虚拟化网络中的一个或多个安全设备实例,形成网络层安全防护服务链,其运行逻辑如图1所示。

在图1 中,用户首先设置访问控制列表(access control list,ACL)规则,定义需要重定向至安全防护服务链的流量。控制器通过OpenFlow 协议将ACL 下发至逻辑交换机,形成转发表项。当虚拟机流量匹配ACL 规则时,业务逻辑交换机将转发流量通过overlay 隧道协议进行封装并加上本地数据报头,将其发送给安全服务链所在逻辑交换机。拆解overlay 数据报头后,安全设备对流量进行过滤并调换源地址和目标地址,将其重新返回业务逻辑交换机并发送至目标虚拟机。

对于主机层面,本研究在广西自然资源云的虚拟化环境中部署“无代理防病毒”[6],对操作系统进行病毒扫描与防护。虽然不同的虚拟化存在不同的实现技术,但是平台隔离及查杀方式大同小异。通常整个无代理病毒防护包括基于SDN技术的控制器、虚拟化平台文件自检组件(guest introspection,GI)、虚拟机监控工具的GI 驱动、第三方集中管理的虚拟化防病毒组件4 个组件。无代理防病毒工作流程如图2 所示。

图2 无代理防病毒工作流程

(1)第三方防病毒管理中心在SDN 控制器注册防病毒安全虚拟机模板,控制器通过与虚拟化管理中心API 自动虚拟化集群下发、部署基于模板的防病毒安全虚拟机,并负责将病毒库同步到所有的防病毒虚拟机。

(2)受保护的虚拟机安装了GI 驱动,通过驱动实时收集虚拟机内的文件活动(如新建、修改、运行等),并且通过虚拟机通信接口(virtual machine communication interface,VMCI)传输到宿主机内核(VMKernel),VMKernel 端口用于管理、传递虚拟化环境中的所有非虚拟机流量。

(3)GI 组件从VMkernel 获取受保护的虚拟机文件活动信息,并通过逻辑交换机将信息传输到防病毒虚拟机。

(4)防病毒虚拟机病毒库与GI 报告的文件活动进行对比,匹配时防病毒引擎发送查杀命令(一般阻断文件的生成、运行)到宿主机内核。

(5)VMkernel 通过虚拟机通信接口VMCI下发查杀命令并发送到受保护虚拟机的GI 驱动,由GI 驱动完成具体的文件处理工作。

Hypervisor 自身的安全性保障也是必须考虑的内容,通常会采用虚拟可信平台模块(virtual trusted platform module,vTPM)[7]。

2.2 云原生架构安全

区别于Hypervisor 技术,基于容器技术的云原生架构具有持续集成、持续交付的特点。在持续开发的过程中,镜像会不断打包、更新、保存,恶意攻击者很容易在打包镜像中插入恶意的程序、代码段。基于零信任的原则,相关人员必须关注镜像构建到镜像实例运行的每个环节安全性。云原生架构安全防护如图3 所示。

图3 云原生架构安全防护

构建阶段主要对容器镜像的生成、传输、保存使用等环节进行保护。

(1)基于镜像构建文件(Dockerfile)构建、生成镜像文件。Dockerfile对于用户是完全透明的,所有指令都是可控且可回溯的。在Dockerfile 构建文件中,只安装必要的软件包,避免过多程序导致攻击面增加。尽量使用安全的Dockerfile 操作命令,开发人员注意不要存储密码、令牌、密钥和用户机密信息,即使这些数据在容器创建后被删除也存在风险隐患。

(2)结合数字证书确保镜像传输与访问的安全性。为方便开发人员能够随时构建、测试镜像,镜像仓库通常放置于互联网。由于互联网的不可靠性,本研究团队采用通用串行总线秘钥(universal serial bus key,USB Key)证书加密方式连接仓库,确保数据在互联网传输的机密性。USB Key 还能够对访问人员进行身份验证,避免弱口令问题及非授权访问。限制镜像的使用权限,尤其是严格限制仓库内镜像文件的写权限,防止恶意攻击者插入恶意代码。开发人员构建镜像后必须对镜像进行数字签名,下载人员在拉取镜像前通过公钥证书验证数字签名的有效性,防止获取已被恶意篡改的镜像。

(3)镜像安全扫描。在镜像生成和容器创建前,对镜像文件进行风险扫描。区别于传统业务系统,镜像是经过多层打包形成的文件,逐层进行恶意程序检测、敏感配置检测。这里可以采用基于模糊哈希、YARA 规则、机器学习的文本分类算法等检测方式[8]。此外,还需要对镜像文件构建的历史命令进行定期扫描,尤其对构建中的高危命令进行标记并告警。

在运行阶段,容器运行单元(Pod)运行网络安全及编排系统的合规性配置是云安全管理团队需要重点解决的问题。

(1)网络微隔离与入侵检测联动。与Hypervisor 虚拟化技术类似,容器技术环境需要对不同的Pod 进行网络微隔离,限制非授权访问。云原生架构具有一套网络策略(network policy)规范,能够定义多Pod 及与其他网络端点间的通信规则。云原生架构中常用的网络插件都支持网络策略,能够持续对网络策略对象的增删改查做出响应,并在宿主机上生成对应的互通协议(interworking protocol,IP)地址清单(IP Tables)规则,实现Pod 之间的访问控制。通过端口镜像方式将流量镜像到入侵检测安全容器节点并进行攻击检测分析,当发现流量存在攻击行为时,安全容器会联动生成网络策略规则,并将其发送至网络插件生成防火墙的IP 地址清单规则[9],快速阻断失陷容器。此外,云原生架构也支持overlay的SDN 网络。

(2)安全编排。在云原生环境中,容器的编排系统处于核心地位,在各类微服务架构项目中支撑其核心业务。云原生安全提倡在应用程序生命周期的早期阶段引入安全工具,通过安全测试尽早识别合规问题、错误配置等,尽早发现安全问题[10]。Kubernetes 社区提供Pod 安全管理规范[11],定义了一组必须运行的条件及相关字段的默认值,用于控制Pod 规范及管理安全。相关人员可以参考此规范建立适合实际环境的计算资源配置基线,还可以借助第三方编排扫描工具对容器集群中的编排文件进行合规扫描,扫描出环境中不合规配置。系统管理员可以依据修复建议进行合规的编排文件配置。

广西自然资源云系统既采用了Hypervisor 虚拟化技术,又使用了云原生的服务架构。云原生架构主要应用于不动产登记系统,面向每个市、县快速部署独立的Pod,一个或多个Pod 支撑一个市或县的不动产业务访问。传统业务系统如电子政务系统、地理信息系统云管理平台则部署在Hypervisor 虚拟化平台,广西自然资源云架构如图4 所示。

图4 广西自然资源云架构

广西自然资源云的Hypervisor 虚拟化云平台通过部署SDN 控制器实现一系列逻辑网络设备和服务,如逻辑交换机、第三方安全服务等。SDN 控制器隐藏了底层网络细节和配置等信息,用户只需简单配置部署安全服务和ACL 规则即可快速地完成部署。标准的SDN 控制器能够支持基于内核的虚拟机(kernel-based virtual machine,KVM)、开源云计算管理平台(open source cloud computing infrastructure,OpenStack)等虚拟化平台,在实践中可以概括为以下几个步骤。

(1)第三方网络安全虚拟机(network security virtual machine,NSVM)模板注册到SDN控制器,控制器通过虚拟化管理中心的API 将NSVM 部署到集群的每个宿主机。

(2)在SDN 控制器上配置逻辑交换机开放虚拟交换标准(Open vSwitch,OVS),OVS 支持通过SDN 控制器编程实现大规模网络自动化及OpenFlow 协议转发。通过OVS 分别创建业务逻辑交换机和管理逻辑交换机。

(3)在SDN 控制器中定义overlay 覆盖网络,绑定NSVM 实例,形成安全服务链。

(4)配置需要重定向的对象及安全服务链,形成ACL 规则。SDN 控制器依据ACL 规则下发至OVS,形成引流的流表。

(5)网络中匹配的IP 对象进入OVS 后会立即触发流量重定向,通过通用网络虚拟化封装(generic network virtualization encapsulation,GENEVE)隧道协议建立的overlay 网络传输至NSVM 并进行网络层与应用层的访问过滤。

(6)主机层面通过安装虚拟机GI 驱动并结合安全服务链,完成文件病毒查杀。

(7)部署完成后,管理员根据资产属性、风险、业务性质等因素划分虚拟安全域。

建立不同的安全域后,系统管理员可以根据不同的安全域配置访问控制,并启用应用层防护IPS 过滤。每个宿主机都有NSVM,安全策略通过安全管理中心统一下发到所有宿主机的NSVM,虚拟机迁移后也能实现一样的防护效果。整个部署对于用户来说完全是无感知的,并且不影响原有网络的路由走向和拓扑结构。管理员通过安全管理中心还能够直观地了解业务或用户被黑客入侵或控制、业务漏洞威胁、万维网服务器被植入黑链等情况,并采取有效的防护措施。这种功能抽象、快速部署的特性极大提升设备的上线速度和安全管理员的工作效率。

目前,基于Hypervisor 的虚拟化安全防护技术基本都需要结合虚拟化基础架构形成具体方案,存在一定的局限性。为了简化用户操作,这些解决方案屏蔽了过多的底层细节,部署完成后一旦发生故障,用户很难定位故障原因。下一步,本研究希望能够寻求一种标准化、适用于主流虚拟化基础架构的开源安全组件,使得管理人员能在充分了解底层架构的基础上更好地对虚拟化安全进行部署与管理。

基于新兴容器技术的云原生架构虽然具有相关的安全防护方法和思路,但是落地的解决方案仍处于初级应用阶段,涉及技术底层的很多安全细节仍待解决。下一步,研究团队将更深入学习云原生架构及系统底层实现原理,从中不断总结可能的安全风险点,并进行针对性加固。

猜你喜欢防病毒镜像交换机镜像当代党员(2020年20期)2020-11-06防病毒肺炎小天使·二年级语数英综合(2020年4期)2020-07-11更换汇聚交换机遇到的问题网络安全和信息化(2019年7期)2019-07-10基于地铁交换机电源设计思考电子制作(2019年24期)2019-02-23镜像小康(2018年23期)2018-08-23高速公路信息安全系统防病毒和终端管理技术应用中国交通信息化(2018年2期)2018-06-06浅谈计算机防病毒软件的作用机制数码世界(2017年6期)2017-12-27缔造工业级的强悍——评测三旺通信IPS7110-2GC-8PoE工业交换机中国公共安全(2017年11期)2017-02-06一种一次性防病毒输液装置中国经贸导刊(2015年27期)2015-10-10镜像小康(2015年4期)2015-03-31

推荐访问:云安 自然资源 架构