云原生入侵检测趋势观察

一颗小胡椒2022-06-28 22:05:02

什么是云原生

以下是云原生计算基金会(CNCF)对云原生的定义:

Cloud native technologies empower organizations to build and run scalable applications in modern, dynamic environments such as public, private, and hybrid clouds. Containers, service meshes, microservices, immutable infrastructure, and declarative APIs exemplify this approach.

云原生技术有利于各组织在公有云、私有云和混合云等新型动态环境中,构建和运行可弹性扩展的应用。云原生的代表技术包括容器、服务网格、微服务、不可变基础设施和声明式API。

These techniques enable loosely coupled systems that are resilient, manageable, and observable. Combined with robust automation, they allow engineers to make high-impact changes frequently and predictably with minimal toil.

这些技术能够构建容错性好、易于管理和便于观察的松耦合系统。结合可靠的自动化手段,云原生技术使工程师能够轻松地对系统作出频繁和可预测的重大变更。

趋势一:资产多样化

在IDC时代与企业上云初期,由于企业应用的部署环境均以linux/windows为主,因此反入侵产品多以解决主机安全为主要目标。这一阶段入侵检测方法论是在做"猫捉老鼠"式的单点对抗(一个例子是参照ATT&CK构建入侵检测模型),作为入侵检测一线实践者,我们看到各厂商的检测点大多围绕linux/windows的细节攻防点展开。

例如HIDS产品中这样的模型:

  1. 检测/etc/passwd /etc/shadow /etc/crontab的读写行为
  2. 检测windows注册表异常操作
  3. 检测powershell hidden执行异常指令
  4. 检测java应用通过wget/curl指令下载二进制文件并启动

云原生时代,企业的核心资产除主机(VM)外,还有容器(Docker、K8s)以及诸多云服务,"主机安全"只是其中一部分。例如容器安全厂商 twistlock 的资产管理与可视化维度:

反入侵需要cover的"资产"形态将变得复杂,资产梳理、监控、可视化、ACL将更加困难。

部分资产生命周期大幅缩短,甚至秒级释放,这些高弹性的环境使攻击者的持久化更加困难,实时的入侵检测与响应或变的不再必要。

趋势二:服务碎片化

自Pivotal公司的Matt Stine于2013年首次提出云原生(CloudNative)的概念以来,几乎所有云原生的定义都包含微服务。微服务架构将复杂应用按function切分,使服务解耦,内聚更强,变更更易。

在此场景下,审计与管控边界由"网关/主机"变成了"服务/API",系统内部的原子服务间的通信将变得复杂,难以实施管控与审计。主机粒度的"微隔离"技术将不能满足应用级别的审计需求,安全边界将由业务定义。

Microservices "Death Star":

NeuVector K8s Pod粒度的流量审计:

趋势三:中间件井喷

容器作为云原生的基础设施,已经被各云厂商产品化。在这一过程中,各厂商serverless的实现标准、容器隔离方案、依赖的中间件以及需要用户承担的风险各不相同。

CNCF Cloud Native Landscape:

一个常见的攻击场景:企业在K8s集群中引入了不安全的第三方插件。攻击者进入Pod后,通过未授权访问或漏洞攻击第三方组件,并利用这些组件的高权限账户操纵K8s集群。

传统的入侵检测方案,从对漏洞和攻击面的角度出发,梳理出主流中间件及应用的攻击手法,希望尽可能覆盖已知漏洞的利用方式。面对云原生中间件的爆发,企业在构建应用时的依赖及其复杂,任何一个组织或厂商所掌握的"漏洞库"已经难以满足其客户需求,这对安全产品的漏洞/攻击面管理能力提出了更大挑战。

趋势四:基础设施默认安全

下图简要描述了企业应用在容器化的不同阶段,云上用户自担的安全责任区(深蓝色)、用户与厂商共担区间(浅蓝色)以及云厂商默认安全区间(灰色)的变化情况。

从传统的VM上直接部署业务,到VM+容器、VM自建K8s集群、再到购买云厂商提供的K8s托管服务、云厂商的轻量级容器服务以及serverless,随着业务容器化的程度加深,用户的"安全责任区"逐步上移,对基础设施的安全需求(也是安全产品的价值空间)逐步减小。

一种传统主机安全的入侵检测思路是"用底层日志解决上层问题":

  1. 当流量层遭遇混淆对抗时,入侵检测能力下沉到端上用户态行为审计,这样就可以避免对每个web漏洞case by case的覆盖,降低同一维度对抗成本。
  2. 用户态行为遭遇对抗时,战场还可以继续深入到kernel层(如提权逃逸类的检测)。

在云厂商提供的服务中,随着底层基础设施用户不可触达,这种更深层次的对抗逐渐成为服务商的特权,第三方安全厂商将难以向云服务部署自己的探针,相反,云厂商将结合自身的服务架构赋予用户侧更强的安全能力,包括检测的下沉以及云原生的"检测-响应-修复"闭环流程。

结论:入侵检测"业务化",行为分析将成为核心能力

无论是从云服务的普及还是microservice的复杂程度来看,API通信都行为将成为服务间交互的重要一环,越来越多本地无鉴权的API通信将从转向有鉴权的服务框架。反入侵对于底层资产的监控趋于复杂的同时,UEBA技术将在业务层发挥更重要的作用。

试想在云原生场景中,攻击者通过WEB漏洞入侵云厂商的弹性容器服务,容器内部没有常见的linux命令和依赖库(甚至在某些serverless场景下无法写文件),且容器逃逸问题已被云厂商默认解决,攻击者只能通过服务自身权限或窃取本地API通信凭证进行横向移动。在此情况下,对API访问行为的分析将成为反入侵的有效手段,它具有足够的可行性和通用性,是适合产品化的技术点。

事实上身份认证、鉴权、UEBA以及数据安全是一个整体设计,这一点零信任架构的已经给出了实践。其尝试对任何接入系统的人/事/物进行认证,构筑在认证之上的入侵检测,实体画像、行为分析会其是必不可少的部分。

从技术成熟度来看,用户画像及行为分析已经在搜索推荐和风控领域得到广泛的验证。借鉴这些赛道的经验,我们已经将图计算落地在检测和响应阶段,实现对安全事件链路更长、时间跨度更久的分析。在未来高度API化的场景中,基础攻防将进一步"业务"化,我们将看到端数据、API日志与威胁情报在更高维度的结合。

云计算容器技术
本作品采用《CC 协议》,转载必须注明作者和本文链接
边缘计算场景中由于节点带宽受限,采用现有架构部署传统的标准容器镜像效果不佳,为此我们提出了一种面向边缘计算容器镜像构建方法。
随着数字化转型进程加快,计算技术成为企业数字化业务运转的重要支撑。特别是疫情催化、政策加码、市场需求激增,多种变革力量交织汇聚,使数字化转型发展浪潮呈螺旋式上升,企业顺势转型已是必然。计算通过资源池化,助力企业实现以客户为中心价值链的最短路径,驱动技术、业务、决策的深度融合,成为企业数字化转型的关键技术之一。
主要介绍了容器技术的发展、以Docker为代表的容器技术生态以及容器技术的应用场景。
当前,计算已经成为新型基础设施的关键支撑技术。在疫情期间,推动了大量远程办公、政务防疫、百姓生活等SaaS应用和移动应用。要回答计算未来数年的发展,则需要回顾计算在过去的发展。需要注意到,计算在国内发展总体可分为三个阶段。
容器安全技术需要围绕容器全生命周期提供各项安全措施。
计算的概念从提出到现在已经近 15 年时间。最初,业界大多将计算架构分为基础设施即服务(IaaS)、平台即服务(PaaS)和软件即服务(SaaS),这种基于虚拟主机(VM)为主体的虚拟化技术,从 IT 架构视角进行划分的方法虽然清晰但有局限性,因为它并不是完全站在应用和业务视角。
近六成的企业表示,容器及其编排系统自身的安全已成为最突出的原生安全隐患。报告显示,仍有约两成用户目前无任何针对原生技术的防护能力。企业人员架构层面,仅有12.04%的受访者表示,所在企业有单独的信息安全部门来处理原生安全问题。计算安全责任共担模型发生勒索、挖矿、数据泄露等安全事件,最终蒙受财务和声誉损失的是服务客户。这不仅有助于真正降低安全事件发生的概率,更有助于产生经济损失后的定责。
计算服务具有高效便捷、按需服务、灵活扩展等特性,在社会各方面得到了很好的应用,越来越多党政机关将业务和数据迁移到平台上。
一颗小胡椒
暂无描述