1. 公司介绍
Capsule8是一家由经验丰富的黑客和安全企业家创建的高新科技初创型企业,总部位于纽约布鲁克林,成立于2016年秋季,在2018年8月获得1500万美元的B轮融资。
Capsule8开发了业界第一个也是唯一一个针对Linux的实时0day攻击检测平台,可主动保护用户的Linux基础设施免受已知和未知的攻击。Capsule8实时0day攻击检测平台可显著改善和简化当今基础架构的安全性,同时为未来的容器化环境提供弹性的支持。
2. 背景介绍
混合云架构已经成为企业IT基础设施的重要架构,但其复杂性也使企业面临多种攻击的风险,根据Capsule8与ESG Research赞助的一项新研究(针对混合云环境对北美和西欧地区的450名IT和安全专家进行的调查)表明,仅2017一年就有42%的企业报告了混合云环境受到攻击,28%的企业表示0day攻击是这些攻击的起源。
混合云环境由于存在多云服务商,缺乏中心控制和完整的合规性规划,存在边界模糊,访问策略不一致等问题,笔者曾探讨过[1]相关的访问控制机制,加上公有云的暴露面增大,攻击者容易通过进入薄弱点,这也是近年来如软件定义边界SDP、移动目标防护MTD等新方案兴起的原因。
攻击者进而借助利用0day漏洞,如在容器环境中利用逃逸漏洞(近日爆出在特权容器中逃逸的runc漏洞CVE-2019-5736),或虚拟化环境中的利用CPU漏洞Meltdown/Spectre等,进入宿主机,进而横向到企业的云内或企业侧网络,造成更大的威胁。
此外,传统的攻击检测平台的工作机制通常是分析网络和安全设备(如入侵检测系统)的大量日志告警,进行关联分析,最后还原出恶意攻击。然而多年来,设备日志告警的置信度不高等问题导致绝大多数平台告警是误报,也造成了企业的安全团队持续处于警报疲劳的状态。企业急需一种可以有效解决上述问题的安全方案。
无论是传统环境,还是混合环境,防护利用0day漏洞的高级威胁需要企业安全团队全方位持续防护资产、获得环境的可视度(visibility),检测恶意行为。
3.产品介绍
该公司推出的0day攻击实时检测平台Capsule8,在发生攻击时通过自动检测和关闭正在利用漏洞的恶意网络连接,从而大规模减少安全操作的工作量,而且不会给生产基础架构带来风险。
Capsules8平台整体架构图如下所示:
① Capsule8 OSS传感器,即Capsule8工作负载保护平台的探针,是许多威胁检测机制的基础。传感器旨在收集系统安全和性能数据,对服务的影响很小,它能够实时了解到生产环境正在做什么。该传感器软件已开源,项目地址https://github.com/capsule8/capsule8
② Backplane,包含一个实时消息总线,可以获取到传感器传来的实时事件以及Flight Recorder记录的历史事件,它实现了背压从而确保了平台不会因为过多的Capsule8遥测事件而导致网络洪水事件;
③ The Capsule8 API server,提供了统一的接口,允许企业管理生产环境中基础设施架构所有跟安全相关的数据;
④ Capsulators封装了连接客户端软件的API,通过它企业可以快速集成实现特定功能的软件如Splunk和Hadoop,方便企业进行数据分析。通过Capsulators企业不仅可以实时感知集群信息,还可以通过Flight Recorders获得历史数据,依据IOC(Indicators of Compromise,包括MD5 hash、IP地址硬编码、注册表等),从而实现追溯调查;
⑤ 第三方工具,如Splunk和Spark等;
⑥ Capsule8 Console,前端可视化界面。
下面我们介绍Capsule8如何实时检测并阻止0day攻击。假设客户生产环境是一个混合云环境,服务器部署于客户侧数据中心、公有云AWS和Azure中。
Capsule8的整个工作流程主要分为以下几步:
1. 感知。为了保护分布式环境,Capsule8传感器遍布在整个基础架构中-云环境和数据中心的裸机以及容器上。由于传感器运行在用户空间,捕获少量的安全关键数据,故不会对系统工作负载的稳定性和性能造成影响。
以容器环境为例,前述关键数据包括:
a.进程生命周期事件(fork,execve以及exit);
b.open(2)系统调用返回值;
c.匹配容器镜像名字的file open事件;
d.涉及IPv4的SyS_connect的内核函数调用事件;
e.容器生命周期事件(创建、运行、退出、销毁))。
2.检测。感知阶段收集到的关键数据通过Capsule8 Backplane传送到企业侧临近位置的Capsule8 Detect分析引擎,利用云端专家的知识库将数据还原成事件,并对可疑事件进行分析。
3.阻断。当Capsule8检测到攻击时,它可以在攻击发生之前自动关闭连接,重启工作负载或者立即警告安全团队。
4.调查。由于0day攻击持续事件较长,所以除了实时检测外,Capsule8会在本地记录遥测数据,便于专家利用历史数据进行攻击朔源。
4.产品特点
检测和跟踪0day威胁从本质上是非常考验安全团队的日常运维和运营能力的,Capsule8可在如下方面有所帮助。
4.1从安全运营团队角度来看
1.实时检测漏洞
Capsule8使用分布式流分析与高置信数据相结合,在黑客企图攻击的实例中检测攻击。
在混合环境的检测引擎、数据本地化,专家云端化,并将两者结合形成类边缘计算的层级化检测模式,可在大规模环境下减少数据传输,避免合规性风险,同时提高检测精度和响应速度,使得Capsule8这样的小型安全企业提供大规模Sec-aaS/MDR服务变成可能。
2.确保高置信度告警
Capsule8的系统级检测是不断更新的,它使用动态攻击指标(IOA,Indicator of Attack,其是一个实时记录器,包括代码执行等,专注于检测攻击者试图完成的目标)而不是行业标准的IOC指标来发现最新的0day攻击。因此,以前困扰客户的大量潜在威胁告警变成了少量的围绕实际场景的攻击告警。
3.清晰和可行动(Actionable)的情报
Capsule8提供了一定程度的透明性,可以很容易的确定警报触发的原因,以及攻击者后续的操作。
4.可适配多种环境
Capsule8可以轻松实现复杂且可自定义的策略,这些策略不仅在不同的基础设施环境中可能会不同,而且在更精细的系统项目中也会有差异。通过Capsule8可以最大限度地减少误报。
Capsule8可在各种环境(公有云,数据中心,容器,虚拟机或裸机)中Linux版本上提供无缝、易于部署的检测。同时保护所有主要的编排器,包括Kubernetes,Docker和CoreOS,以及Puppet和Ansible等配置管理工具。
此外,可与现有系统集成,充分利用现有的安全工具,如SIEMs日志分析工具(如Splunk和ELK Stack)和取证工具。
5.自动化攻击响应
Capsule8可帮助客户实时检测和响应攻击。例如,客户可以在启动Capsule8时选择立即关闭攻击者连接、重新启动工作负载或立即向调查员发出警报。
4.2从安全运维团队角度来看
1.系统稳定性好,性能影响小
Capsule8运行在用户空间,在不需要内核模块的情况下收集内核级数据。这就保证了生产环境(服务器和网络)的系统稳定性。
为确保对主机和网络的性能影响最小,Capsule8采用资源限制器,通过智能减载策略强制对系统CPU,磁盘和内存进行硬限制。
分布式的分析方法与边缘计算相似,将计算操作推向尽可能接近数据,确保就算是在系统最繁忙时候也对网络影响最小。
2.简单的部署和维护
Capsule8代理是一个单一的静态Go二进制文件,它是可移植的,易于安装和通过各种编排机制进行更新,包括Puppet,Ansible,Kubernetes等。
5.总结
随着企业寻求基础设施现代化,DevSecOps的落地在现代混合云环境下就显得尤为重要。Capsule8可以无缝的集成到企业的Linux基础架构中,并在企业的整个平台上提供持续的安全响应。此外,它不是SaaS解决方案,它是与用户的IT基础设施一起部署。因此,数据完全保存在客户环境,消除了第三方传播、删除或损坏数据的风险,从而给企业带来更好的安全新体验。
[1] Yuxiang Dong, Wenmao Liu, Kun Wang, Research and Implementing of Software Defined Border Protection in Hybrid Cloud, Proceedings of 2016 3rd International Conference on Engineering Technology and Application,2016