一、前言
随着云计算给信息基础设施带来的变革,加上5G、物联网和产业互联网的发展,云原生正在成为企业IT的标配。如果说云原生是在开发项目时就和云环境进行绑定,那么云原生安全,就是在云创建之初就考虑云上应用的安全问题,以达到安全前置的效果。
Gartner就云原生安全提出三大云原生安全解决方案,分别是CWPP(Cloud Workload Protection Platforms)、CSPM(Cloud Security Posture Management)和CASB(Cloud Access Security Broker)。其中CWPP是对云工作负载进行保护,是对数据面的安全防护。CSPM是聚焦控制面的安全属性,包括配置策略和管理工作负载、合规评估、运营监控、DevOps集成、保障调用云运营商API完整性等等。CASB是专注于SaaS安全,为企业提供对SaaS使用情况的可视性和安全控制。以上三者对于保障云应用的实际运行,密不可分。三者配合的目的,都是为了云计算业务的正常开展和租户敏感数据得到妥善保护。
笔者将就CWPP解决方案进行了整理和分析,期望与大家共同学习和成长。
二、云工作负载保护平台(CWPP)介绍
- 云工作负载保护平台(CWPP)的诞生
所谓工作负载,就是承载计算的各种类型节点(物理机、虚拟机、容器、无服务器),其中虚拟机是以VMs作为云单位,容器是以应用/服务作为云单位,无服务器是以资源作为云单位。
随着DevOps开发模式盛行,通常应用每周都会有几次迭代,有时甚至一天好几次迭代,此时工作负载的粒度也变得越来越细化、生命周期也越来越短,保护这些快速变化和短期工作负载的最佳方法是在开发阶段渗入保护机制,以便在生产环节实例化时,让这些工作负载从“诞生”就受到保护。CWPP就是用于保护这些工作负载的网络安全解决方案统称,主要用于基于云的IaaS层。
- 云工作负载保护平台(CWPP)的能力模型
CWPP对云上的工作负载,提供多个维度、全方位的保护能力,Gartner把这种能力分成了8大类别,从上到下,重要程度逐层递增。
可以看出,上图底部列出了一些基本的运维能力,真正实现工作负载的安全一定要以良好的运维规范为开端。
在此基础上,CWPP主要关注于能力模型底部的五个核心工作负载保护策略:
1、加固、配置与漏洞管理(Hardening, Configuration and Vulnerability Management):举措如移除非必要的组件(如Telnet,FTP服务)、加固镜像、加固系统、定期持续更新系统;也可以通过外部工具,评估系统配置和漏洞等。
2、基于身份的网络微隔离和可视化(Network Firewalling, Visibility and Microsegmentation):严格的工作负载安全的基础是隔离和分化与外部资源沟通的能力。举措如管理windows和linux系统内置的防火墙;对数据中心东西流量的进行微型分割;提供可视化和监控通信流量;提供工作负载之间的网络流量加密选择来保护动态数据,并在工作负载之间提供加密隔离。
3、系统完整性保护(System Integrity Assurance):这项功能包括两个领域:第一个是在BIOS,管理程序和虚拟机系统镜像加载前进行评估,一般会通过物理系统中硬件层面的可信任措施实现评估。第二个是在工作负载自启后,实时的监控核心系统文件完整性,包括监控windows注册表、启动目录、驱动和引导加载程序。
4、应用程序控制(白名单)(Application Control/Whitelisting):在VM和公有云IaaS中,大多数工作负载只能运行一个应用,这在容器和微服务的工作负载里尤为适用。因此业内适用的安全保护策略是使用白名单来控制运行在工作负载中的文件权限,这样执行文件的恶意软件都会被阻止。许多CWPP解决方案会提供内置的应用控制功能,比如调用内置的OS应用控制功能,如Windows, SELinux系统的软件限制策略和应用程序控制策略(Applocker)或Linux系统的AppArmor。
5、漏洞利用预防/内存保护(Exploit Prevention/Memory Protection):应用控制解决方案不会一直可靠,预防漏洞利用和内存保护功能需要进行相应的结合。因此解决方案要能预防这些情况的发生:比如白名单应用被攻击而产生漏洞;注入的代码能在内存中直接运行等。
CWPP的能力模型往上还有很多保护工作负载的策略和方法,这些策略同样也是重要的,但可以在工作负载外来执行。本文中不再做详细的描述。
- 云工作负载保护平台(CWPP)的特点
笔者认为,CWPP的诞生和存在其实就是为保护云原生中的工作负载。那么基于这一点,大家来评判一个好的CWPP解决方案可以从以下的几个方面考虑:
1、支持混合和多云环境:从遗留应用程序到云原生应用程序的转变不是自动的。组织不能将当前本地部署的应用程序“复制并粘贴”到云中。这样就要求CWPP解决方案须支持混合和多云环境的部署。
2、支持操作系统:云主流厂商都支持windows和Linux系统,那么一个好的CWPP解决方案必须拥有对windows和Linux系统的保护能力。
3、支持容器环境:基于主机的agent要能分辨单独的容器,包括网络分段,并能根据实际情况实施相应策略。
4、全面支持API:安全保护要越来越能自动适应DevSecOps工作流的工作负载,通过API,利用高自动化开发环境中的脚本、方法和模板,使控制台自动配置安全策略,不再像以前那样通过”人为介入“执行昂贵的、缓慢的手动配置。
5、对系统空间和性能的影响:将保护应用于可能在本地或云中并且可能会或可能不会在环境中持续存在的不断缩小的工作负载的能力意味CWPP必须更加注重于安全对工作负载的系统空间和性能的影响。比如说客户可能更期望在虚拟系统环境中,实行“无agent”保护,从而减小甚至不对工作负载本身产生影响,例如像趋势科技的连接其vSphere管理程序API,进行无agent反恶意软件扫描的解决方案。
6、虚拟化和云服务提供商的原生集成和支持:在云基础环境中,为了实现有效保护,CWPP应该充分理解并能整合平台的原生附加能力,这样才能在这些标记的基础上执行安全策略。在创建新的工作负载时,集成云厂商的API可能无需设置安全保护,就可以联络控制台。
7、安全自启能力:内置安全agent的系统配置速度很快,但可能无法在运行时执行安全策略。Agent应该能够使用模板和upon boot,这样才能根据工作负载的环境(例如工作负载的位置或者在标记的基础上),安全地获取、下载和应用合适的策略。
8、审计和日志记录:要记录控制台上所有管理行为和事件,并将这些日志传输到SIEM中。
9、威胁情报/社区情报:要允许参与人分享情报信息,以更好地防御威胁。
三、总结
项目开发过程与速度的权衡和应用程序的不断改进意味着安全不再是应用程序生产的严格门槛;安全专业人员也无法像过去那样对应用程序进行控制;工作负载不断变化的性质以及“始终在线”DevOps 环境的兴起给数据和应用程序带来新的风险,而这一系列的改变必将使 CWPP 成为现代企业中重要的安全解决方案。
四、参考文献
[1] 2020年云工作负载安全防护平台市场指南(Market Guide for Cloud Workload Protection Platforms)
版权声明
本站“技术博客”所有内容的版权持有者为绿盟科技集团股份有限公司(“绿盟科技”)。作为分享技术资讯的平台,绿盟科技期待与广大用户互动交流,并欢迎在标明出处(绿盟科技-技术博客)及网址的情形下,全文转发。
上述情形之外的任何使用形式,均需提前向绿盟科技(010-68438880-5462)申请版权授权。如擅自使用,绿盟科技保留追责权利。同时,如因擅自使用博客内容引发法律纠纷,由使用者自行承担全部法律责任,与绿盟科技无关。