云原生安全实践

简介: 在安全防护过程中,可能会产生一些成本方面的考虑,任何环节薄弱性才决定整体的安全级别。需要慎重对风险进行研判作出决策。

文章首发于:

火线Zone云安全社区

作者:Clare

https://pic3.zhimg.com/80/v2-c4ebc86de014c6583e6afda08f4d811a_1440w.jpgimage.png

Clare是安全架构师,专注于信息安全攻防研究和深度测试,今天分享的主题是“云原生安全实践”。

https://pic2.zhimg.com/80/v2-c7668e5b67054a1547d59b70d9f8a1fd_1440w.jpgimage.png

我讲的议题是,云原生安全实践,主要从两个方面来介绍云原生安全。

第一个是云原生安全面临的风险
第二个是云原生安全实践

https://pic3.zhimg.com/80/v2-0d195d10e67fe0201d390ff00347491a_1440w.jpgimage.png

云原生的定义:它是一种构建和运行应用程序的现代方法,它主要代表的是容器,微服务,持续集成交付和devops为代表的一个技术体系。

https://pic3.zhimg.com/80/v2-a0340ec46a71464f02053ff5fc06ade2_1440w.jpgimage.png

它给开发迭代带来了新的革命,提高了研发交付的效率和提高了高可用性。但是,云原生继承了传统网络安全几乎所有的风险,传统的安全模型主要关注基于边界的安全(perimeter-based security),不足以保护云原生架构的安全。所以相对于传统安全,云原生安全仍然是真正的挑战。

云原生安全,它是一种保护云原生平台及基础设施和整个应用程序安全实践,包括自动化数据分析,威胁检测,确保应用整个安全性及纵深防御。

https://pic4.zhimg.com/80/v2-4fc0a4d55314b988886e6f1d2e87f23f_1440w.jpgimage.png

刚才提到了云原生安全面临的风险,像Kubernetes一些漏洞,还有一些常见的像k8s上用的组件漏洞,包括其他的内部组件的高危漏洞等都威胁整个云原生平台的安全性。

在图上看到很多漏洞,风险是比较高的,出现的频率也比较多。包括之前讲到一些容器逃逸等等这些在容器里面都遇到的非常多。

https://pic2.zhimg.com/80/v2-a27475c4a9f69058efc03ef351042575_1440w.jpgimage.png

云原生安全面临的风险,主要是缺乏对威胁攻击的这种感知能力。在很多的企业里面,他们对这种异常流量的监测,缺乏实时的感知能力。还有一些应用安全本身存在的漏洞,也会导致云原生面临的漏洞。

一些中间件、操作系统、外部的漏洞,还有比如人文因素,错误配置导致或者权限设置失效导致的被黑客入侵等等。再比如API缺乏有效的鉴权,缺少有效的应用安全防护,微服务等会影响到整个云平台的一些安全。

其实给我们带来便利的同时,也带来了很多的安全需求和挑战。

https://pic4.zhimg.com/80/v2-d514a0873b69b4b0679236bec0284bff_1440w.jpgimage.png

云安全风险的来源包括应用多样化、网络攻击环境等等,都在对应用服务、集群容器、代码层面的安全造成很大的风险。

https://pic2.zhimg.com/80/v2-da32095005c24b287ff59b073998943d_1440w.jpgimage.png

另外,我们从攻击者的角度来看待云原生安全。一些容器相关的组件历史漏洞,还有内部没有受到严格保护的一些API,都会导致像比如说Kubernetes的平台等等被入侵,或者是利用他这些服务,入侵到容器内部或是控制整个集群等。

再比如不安全的容器镜像,不可信的镜像,它本身会导致被入侵。有些容器本身带有恶意脚本,黑客利用容器进行“挖矿”,而且云原生过程中API没有受到严格的保护,也是一个很大的安全问题。平台的安全管控,和其他相关联的安全隐患,都会对云平台导致很大的风险。

https://pic3.zhimg.com/80/v2-00cdde0cdae572ea26b5481ed9c6a556_1440w.jpgimage.png

接下来第二个,就是云原生安全实践,主要讲述在云原生整个过程中,如何应对遇到的风险。

云原生的生命周期,它包括运行时的安全,分发构件部署等整个安全防护。

https://pic2.zhimg.com/80/v2-2adec0d80838f35fb1d7094b26e8c719_1440w.jpgimage.png

整个云原生平台,整个依赖于基础平台的安全,计算平台的安全,容器,应用微服务方面的安全,任何一个环节的问题,都会导致N起事故的发生,所以都要从多个方面对威胁进行评估和提前主动防御。

https://pic1.zhimg.com/80/v2-abc48694c42539334fe4708ab1fc06a4_1440w.jpgimage.png

Kubernetes的服务安全加固,罗列了一些简单的方法。Kubernetes版本很多漏洞就不用详细介绍了,从未知来源下载镜像,在平台上运行,还有Kubernetes基于角色的访问控制,都会提升安全性。

API管理端口访问控制,就不需要分配或足够的鉴权,访问控制资源,还是有一些软件配置自定义参数上来提升整个安全,容器不应该以root用户运行,但是很多企业的安全实践中,还是有很多用户以root权限运行的,包括API Server认证授权,完全以身份认证授权来控制。

很多时候在排查故障,发现有些日志根本没有记录,对排查故障也存在一个很大的问题。所以就需要记录所有有价值的日志,最好在一个独立的日志中心存储、查看或分析。

另外主要提到一个隔离Kubernetes节点,如果是自己单独部署的话,可能单独分配独立的网络,加强一些ACL的控制,防止被攻击者入侵。

https://pic4.zhimg.com/80/v2-8aee5ad3bd7ce47047772d2b7f77797b_1440w.jpgimage.png

容器安全,关于容器安全方面的比较有价值的一些工具,包括扫描容器安全性,比如说它是严重或者高危等等,都会给我们提供一些参考。

https://pic4.zhimg.com/80/v2-26d41cb21648050f738db9f7937dfafb_1440w.jpgimage.png

另外一个是Kubernetes集群中的安全漏洞,这个是针对于K8S集群进行一些渗透测试,然后会发现整个集群存在哪些严重的问题。对这些问题,可能需要人工进一步的确认,判断哪些可能有重大的隐患,再进行修复。这里提到的一些方法主要以开源的工具为主。

https://pic4.zhimg.com/80/v2-f34df2de369e32e1d5f1c663bcaab663_1440w.jpgimage.png

还有这个Falco,这是安全运行的安全监控,监控它的容器运行的可疑行为,执行了哪些可疑的操作。发送警报,集中分析这样一个工具,然后它会进行一系列的告警,喷制等等,这个也是经过实验,是挺好用的一个工具。

它可以部署在本地机器上、云上或者Kubernetes的集群中,它会很直观的看到当前容器的很多安全事件,安全风险的排行。

https://pic1.zhimg.com/80/v2-1ca62c30386f90f8dcff4d7b3a5e85f0_1440w.jpgimage.png

开源走进安全检测其实是洞态IAST进行针对研发测试过程中的全自动安全测试,我用了大概一段时间,后来再正式测试环境进行应用,效果感觉不错。

因为它可以从测试阶段全自动化的分析到采用了哪些安全组件,哪些组件安全是属于高危?而且它不影响研发人员测试效率,完全不用人工太过干预,全自动的,在发觉漏洞中发挥了巨大的作用。

然后我们采用一些关键字的检索,很快就知道哪些项目引用了这些不安全组件和存在这样的高危风险,然后快速去验证,去修复,节约了不少时间。大家可以深入了解一下。

https://pic2.zhimg.com/80/v2-7c0a501920e2b595ee4553cc4ce41645_1440w.jpgimage.png

其实在整个运行过程中,真的提升了漏洞检测效率,对测试流程毫无影响。当应急响应的时候,我们另一方面采用对版本库里的很多去解包、检索,还有就是当时想到我们在使用洞态IAST检索会更快,第一时间采用洞态IAST的结果,筛查使用这些可被利用的组件的项目进行修复缓解处置,然后再排查其他的一些遗留项目,极大的比以前排查组件漏洞提升了应急响应效率。

API的安全防护和web应用防护的这些系列的缺失,其实在很多的企业当中,对API的安全不是很重视,还有一些应用防护很多有waf,但是它配置的基于规则库的规则防护模式不是很智能,容易被绕过。

还有API网关,要能够感知到每个API流量请求,异常分析等等。RASP运行时保护这些,传统WAF只针对入口的应用层攻击进行防护,采用针对云原生的waf,APP安全网关,渗透测试,对于应用安全都是一个有效的补充。

在线测试中,我们要重点关注一下哪些APP和API的高危漏洞。很多云原生环境使用了针对一些虚拟化的基于容器化的这种防火墙的防护,可以防护多个集群,不同节点统一下发策略等等。最核心的是规则和风险感知,对于API进行全生命周期做到更深度的防护都是非常有必要的,它能够分析API的整个调用链路追踪等等。

另外一个就是DevSecOps,它在云原生中也是很需要加强的,包括容器安全、应用分析、静态的检测和sca等,还有软件成分分析等,像洞态iast交互式安全检测其实都是进一步提升应用安全保护的方法。DevSecOps和API安全的重要性都会随着云原生的使用进一步地提升。

包括很多安全审计在云原生平台,我们一定要加强每一个安全事件的管理。

要确保满足可审计哪些行为,执行了哪些命令,容器内部是否有偏离正常的行为等等。其实最主要做到可感知,这个在于云原生平台可感知能力,如果没有相应的手段防护,很多安全隐患是不能够及时有效的被发现。

https://pic3.zhimg.com/80/v2-36b71ebcc89107ddbbc2b86fc3b893da_1440w.jpgimage.png

最后总结一下,安全是一个整体。

在安全防护过程中,可能会产生一些成本方面的考虑,任何环节薄弱性才决定整体的安全级别。需要慎重对风险进行研判作出决策。

我们应该从全局出发,把风险罗列出来,我们重点去针对严重问题进行主动性的防护修复,取得主动权来应对黑客的一些攻击。然后对各种攻击,做到实时感知,做到详细可视化以及主动策略防护。

对于漏洞管理,有些软件的一些漏洞,我们都要及时关注或者建立一个清单,然后重点关注这些软件的公告,安全公告漏洞、安全厂商的漏洞等等。

企业内部也要建立这种机制,加强漏洞管理,从各个渠道获取漏洞信息,POC,然后及时跟进和进行评估验证修复,结合实际需求制定安全基线,还有就是一些自动化的第三方厂商的工具来进行评估整个的安全漏洞等。

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
17天前
|
Cloud Native 持续交付 开发者
云原生技术在现代企业中的应用与实践####
本文深入探讨了云原生技术的核心概念及其在现代企业IT架构转型中的关键作用,通过具体案例分析展示了云原生如何促进企业的敏捷开发、高效运维及成本优化。不同于传统摘要仅概述内容,本部分旨在激发读者对云原生领域的兴趣,强调其在加速数字化转型过程中的不可或缺性,为后续详细论述奠定基础。 ####
|
8天前
|
Cloud Native 安全 Java
铭师堂的云原生升级实践
铭师堂完整经历了云计算应用的四个关键阶段:从”启动上云”到”全量上云”,再到”全栈用云”,最终达到”精益用云”。通过 MSE 云原生网关的落地,为我们的组织带来了诸多收益,SLA 提升至100%,财务成本降低67%,算力成本降低75%,每次请求 RT 减少5ms。
铭师堂的云原生升级实践
|
13天前
|
供应链 安全 Cloud Native
阿里云容器服务助力企业构建云原生软件供应链安全
本文基于2024云栖大会演讲,探讨了软件供应链攻击的快速增长趋势及对企业安全的挑战。文中介绍了如何利用阿里云容器服务ACK、ACR和ASM构建云原生软件供应链安全,涵盖容器镜像的可信生产、管理和分发,以及服务网格ASM实现应用无感的零信任安全,确保企业在软件开发和部署过程中的安全性。
|
6天前
|
Cloud Native
邀您参加云原生高可用技术沙龙丨云上高可用体系构建:从理论到实践
云原生高可用技术专场,邀您从理论到实践一起交流,探索云上高可用体系构建!
|
6天前
|
Cloud Native 安全 Java
杭州铭师堂的云原生升级实践
在短短 2-3 年间,杭州铭师堂完整经历了云计算应用的四个关键阶段:从“启动上云”到“全量上云”,再到“全栈用云”,最终达到“精益用云”。也从云计算的第一次浪潮,迈过了第二次浪潮,顺利的进入到了 第三次浪潮 AI + 云。
|
6天前
|
安全 Java API
Nacos 3.0 Alpha 发布,在安全、泛用、云原生更进一步
近期,我们欣喜地宣布 Nacos 3.0 的第一个版本 Nacos 3.0-ALPHA 已经发布。Nacos 3.0 的目标是在 2.0 的基础上,进一步优化安全性、易用性和标准化。同时,我们将引入更多功能,帮助用户在分布式协调、AI 大模型、云原生等多种场景中更好地使用 Nacos,以提升其广泛适应性。
|
18天前
|
Kubernetes Cloud Native API
云原生入门:从理论到实践的探索之旅
本文旨在为初学者提供一个关于云原生技术的全面介绍,包括其定义、核心原则、关键技术组件以及如何将这些概念应用于实际项目中。我们将通过一个简易的代码示例,展示如何在云原生环境下部署一个简单的应用,从而帮助读者更好地理解云原生技术的实践意义和应用价值。
|
19天前
|
运维 Cloud Native 开发者
云原生技术入门与实践
在云计算的浪潮中,云原生技术以其独特的优势和魅力吸引了越来越多的开发者和企业。本文将从云原生技术的基本概念、核心组件以及实际应用三个方面进行详细介绍,帮助读者更好地理解和掌握这一新兴技术。同时,文章还将分享一些实际案例和经验教训,让读者能够更深入地了解云原生技术的应用场景和发展趋势。
36 5
|
26天前
|
Kubernetes Cloud Native 微服务
云原生入门与实践:Kubernetes的简易部署
云原生技术正改变着现代应用的开发和部署方式。本文将引导你了解云原生的基础概念,并重点介绍如何使用Kubernetes进行容器编排。我们将通过一个简易的示例来展示如何快速启动一个Kubernetes集群,并在其上运行一个简单的应用。无论你是云原生新手还是希望扩展现有知识,本文都将为你提供实用的信息和启发性的见解。
|
17天前
|
Cloud Native API 持续交付
云原生架构下的微服务治理策略与实践####
本文旨在探讨云原生环境下微服务架构的治理策略,通过分析当前面临的挑战,提出一系列实用的解决方案。我们将深入讨论如何利用容器化、服务网格(Service Mesh)等先进技术手段,提升微服务系统的可管理性、可扩展性和容错能力。此外,还将分享一些来自一线项目的经验教训,帮助读者更好地理解和应用这些理论到实际工作中去。 ####
34 0

热门文章

最新文章