写点什么

美国国家安全局出品:K8s“傻瓜式”安全性强化教程

  • 2021-08-10
  • 本文字数:1790 字

    阅读完需:约 6 分钟

美国国家安全局出品:K8s“傻瓜式”安全性强化教程

8 月 3 日,美国国家安全局 (NSA) 和网络安全与基础设施安全局 (CISA) 发布了一份网络安全技术报告“Kubernetes 强化指南”。该报告详细介绍了对 Kubernetes 环境的网络安全威胁,并提供了配置指南以最大限度地降低风险。该报告的发布或许与越来越严重的,针对 Kubernetes 的网络攻击有关。

 

实际上,该报告最主要的受众群体并不是广大企业内开发者,而是以政府部门为主的重要机构。但这并不妨碍开发者以此作为参考,毕竟 Kubernetes 最近已经成为安全问题的常见关键词,如何从架构层面做好基础设施安全,是架构师们重要的工作内容。

 

报告内展示的 Kubernetes 架构

 

NSA & CISA:针对 Kubernetes 的三个主要安全威胁

 

相比以往在架构层面对 Kubernetes 安全性的考量,NSA 的这份报告显得非常系统,它不单包括了技术层面上需要注意的配置,同时也站在网络安全的角度,提及了对于偏社会工程学攻击的防范。同时,在看完国内许多报告之后,这个“Kubernetes 强化指南”还是能让人耳目一新,因为它足够单刀直入,“废话”比较少。

 

在技术层面,报告主要从四个维度展开:

 

  • 如何保证 Kubernetes 的 Pod 安全

  • 如何做好网络分离与强化;

  • 认证和授权;

  • 日志审核

 

此外,这份报告强调,针对 Kubernetes 的安全威胁主要可分为三类:

 

  • 供应链风险

供应链风险通常是指构成 Kubernetes 集群的供应商或第三方依赖本身存在安全风险,包括产品组件、人员等。这大概会在两个维度对 Kubernetes 集群产生影响:

 

  • 容器/应用层:对于那些跑在容器中的应用程序来说,它们的安全完全依赖于开发者和基础设施本身。一个由第三方提供的恶意容器,就会导致整个安全体系出现问题;

  • 基础设施层:托管 Kubernetes 的底层系统有自己的软件和硬件依赖项。这中间如果出现问题,也会导致整个安全体系中门大开。

 

  • 恶意行为者

恶意行为者经常利用漏洞从远程位置获取访问权限。 Kubernetes 架构公开了几个 API,黑客可能会利用这些 API 进行远程调用。

 

  • 控制平面:Kubernetes 控制平面具有各种组件,它们通过通信来跟踪和管理集群。网络攻击者经常利用缺乏适当访问控制的控制平面组件来获利;

  • 工作节点:除了运行容器引擎之外,工作节点还托管 kubelet 和 kube-proxyservice,它们可能会被网络攻击者利用。此外,工作节点存在于锁定的控制平面之外,并且可能更容易被某些行为体访问;

  • 容器化应用程序:在集群内运行的应用程序是常见目标。应用程序经常可以在集群外访问,让人可以通过远程网络访问。 网络攻击者可以从一个已经被攻破的 Pod 转向,或者在应用程序内部通过资源访问,提升在集群中的权限。

 

  • 内部威胁

简单来说,这一项就是在说“内鬼”,包括 Administrator 和 User,当然也同样包括云和基础设施服务商,此处我们就不再细说了。

 

报告的末尾贴出了许多实践案例,显得非常贴心:

 


层出不穷的 Kubernetes 网络攻击


如果你关注 Kubernetes 在安全领域的情况,可能就对 NSA 此举并不意外。

 

早在 2018 年,就有黑客入侵了特斯拉在亚马逊上的 Kubernetes 容器集群,由于该集群控制台未设置密码保护,黑客便得以在一个 Kubernetes pod 中获取到访问凭证,然后据此访问其网络存储桶 S3,通过 S3 获取到了一些敏感数据,比如遥测技术,并且还在特斯拉的 Kubernetes pod 中进行挖矿。该事件只是 Kubernetes 漏洞利用的一个典型案例。

 

就在这个 8 月,也有多家媒体报道称,有安全研究人员警告说,大量的 Kubernetes 集群正由于错误配置 Argo Workflows 实例从而导致很容易受到攻击。Argo Workflows 是一个开源的容器原生工作流引擎,主要用于协调 Kubernetes 上的并行工作,加快机器学习和大数据处理等计算密集型工作的处理速度,同时它也被用来简化一般的容器部署。

 

根据国外一家网络安全公司 Intezer 的分析,由于一些实例可以让用户通过仪表盘访问,不需要对外部用户进行身份验证,恶意软件运营商可以通过 Argo 将加密软件投放到云容器中。因此,这些配置错误的权限可以让攻击者在受害者的环境中运行具有攻击性的代码。

 

以上问题案例还只是冰山一角,作为现代云原生基础设施最重要的部分之一,Kubernetes 始终处在“炮火”中心,未来对于架构师来说,仅仅利用云原生理念支持业务降本提效还不够,如何强化安全,也将成为最重要的设计指标之一。

 

参考链接:https://www.nsa.gov/News-Features/Feature-Stories/Article-View/Article/2716980/nsa-cisa-release-kubernetes-hardening-guidance/

 

2021-08-10 10:324304

评论

发布
暂无评论
发现更多内容

一个疯子居然获得北京市科学技术奖?

青藤云安全

青藤云安全 北京科学技术奖

Go语言入门08—函数

良猿

Go golang 后端 10月月更

华为云桌面,随时随地助力企业轻松办公

科技怪授

华为云桌面

Spring之依赖注入

Andy

云原生机甲,真正的服务网格

如水

云原生 servicemesh 云原生机甲 CloudMecha

数组元素积的符号

掘金安东尼

算法 10月月更

“程”风破浪的开发者 | web3.0爆红是炒作还是真有赚头?

三掌柜

Web3.0 10月月更 “程”风破浪的开发者

Spring Framework框架简介

Andy

【网易云信】Sanitizers 系列之 Sanitizers 概述

网易智企

运维 服务器

企业如何建立数据分类分级制度

极盾科技

数据安全 数据分类分级

Spring之资源读取

Andy

宝藏级别,GitHub上的SpringBoot核心笔记,讲得太清晰了

程序知音

企业办公转型的出路在哪里?华为云桌面开创办公新形式

爱科技的水月

Spring之控制反转

Andy

跨区域传输数据不够流畅?华为云连接CC了解一下

科技怪授

华为云链接

​Apache IoTDB UDF 「Sample」的案例与最佳实践

Apache IoTDB

数据库 Apache IoTDB

用javascript分类刷leetcode3.动态规划(图文视频讲解)

js2030code

JavaScript LeetCode

【web 开发基础】PHP 的流程控制之多向条件分支结构(switch) -PHP 快速入门 (16)

迷彩

switch case switch语句 10月月更 PHP基础 分支结构

重磅 | 青藤蜂巢入围领导者象限,增长指数&综合竞争力第一!

青藤云安全

主机安全 青藤云安全

Apache IoTDB v0.13.3 发布!

Apache IoTDB

数据库 Apache IoTDB

Spring Boot「17」数据库连接池

Samson

Java spring 学习笔记 spring-boot 10月月更

万物皆可集成系列:低代码对接阿里物流API实现快递跟踪

葡萄城技术团队

前端 低代码 电商 API

Apache Kyuubi 在B站大数据场景下的应用实践

网易数帆

hive Kyuubi spark SQL 企业号十月 PK 榜

顶会最强的前20%!电影情感效应预测论文拿下ACMMM Oral收录!

阿里巴巴文娱技术

人工智能 情感计算

拒绝“内鬼式”数据泄露,安全内控如何构建?

极盾科技

华为云连接CC,助力企业一站式解决跨区域传输难问题

科技怪授

华为云CC链接

低代码在企业数字化转型中有什么价值?

飞算JavaAI开发助手

Spring之定时调度

Andy

Sanitizers 系列之 Sanitizers 概述

网易云信

运维 服务器

官宣:新功能正式上线!

青藤云安全

主机安全 青藤云安全 青藤智库

华为云桌面,如何为企业构建新型工作方式

爱科技的水月

美国国家安全局出品:K8s“傻瓜式”安全性强化教程_语言 & 开发_王一鹏_InfoQ精选文章