写点什么

新版发行 + 被报首个严重漏洞,Kubernetes 动态有点多

  • 2020-04-22
  • 本文字数:2376 字

    阅读完需:约 8 分钟

新版发行+被报首个严重漏洞,Kubernetes动态有点多

K8S 首爆严重安全漏洞,严重性 9.8 分

Kubernetes 于昨晚爆出严重安全漏洞, 该漏洞由 Rancher Labs 联合创始人及首席架构师 Darren Shepherd 发现 。该漏洞 CVE-2018-1002105(又名 Kubernetes 特权升级漏洞,https://github.com/kubernetes/kubernetes/issues/71411)被确认为 严重性 9.8 分(满分 10 分) ,恶意用户可以使用 Kubernetes API 服务器连接到后端服务器以发送任意请求,并通过 API 服务器的 TLS 凭证进行身份验证。这一安全漏洞的严重性更在于它可以远程执行,攻击并不复杂,不需要用户交互或特殊权限。



Rancher Labs 联合创始人及首席架构师 Darren Shepherd,同时也是 Docker 生态核心组织 Docker 治理委员会(DGAB)的全球仅有的四位个人顶级贡献者之一。


更糟糕的是,在 Kubernetes 的默认配置中,允许所有用户(经过身份验证和未经身份验证的用户)执行允许此升级的发现 API 调用。也就是说, 任何了解这个漏洞的人都可以掌控你的 Kubernetes 集群。


最后的痛苦之处在于,对于用户而言, 没有简单的方法来检测此漏洞是否已被使用。 由于未经授权的请求是通过已建立的连接进行的,因此它们不会出现在 Kubernetes API 服务器审核日志或服务器日志中。请求确实会出现在 kubelet 或聚合的 API 服务器日志中,但是却无法与正确通过 Kubernetes API 服务器授权和代理的请求区分开来。


现在,Kubernetes 已经发布了修补版本 v1.10.11、v1.11.5、v1.12.3 和 v1.13.0-rc.1。如果您仍在使用 Kubernetes v1.0.x 至 Kubernetes v1.9.x 版本, 请即刻停止 并升级到修补版本。


如果由于某种原因你无法升级,你必须暂停使用聚合的 API 服务器,并从不应具有对 kubelet API 的完全访问权限的用户中删除 pod exec / attach / portforward 权限(不过也有用户认为这种解决方法的糟糕程度和这个漏洞问题本身不相上下了)。

Kubernetes 1.13 发布,三大功能 GA

昨晚差不多同一时间,Kubernetes 最新版本 1.13 亦正式发布,这是 Kubernetes 在 2018 年的第四次也是最后一次大版本更新。


距离上一版本Kubernetes 1.12发布仅 10 周时间,1.13 是今年 Kubernetes 更新最快的版本。


Kubernetes 1.13 关注的重点依然是 Kubernetes 的稳定性和可扩展性,此版本中的有三个主要功能正式成为 GA 状态,包括:使用 kubeadm 简化集群管理、容器存储接口(CSI)、以及使用 CoreDNS 作为默认 DNS。

使用 kubeadm 简化 K8S 集群管理,该功能已 GA

大多数直接使用 Kubernetes 的用户在某些时候都会直接上手使用 kubeadm。它是管理集群从创建到配置再到升级这一生命周期的重要工具。现在,kubeadm 正式 GA。kubeadm 可以处理现有硬件上的生产集群的引导(bootstrapping),并以最佳实践方式配置核心 Kubernetes 组件,以便为新节点提供安全而简单的连接流程并能够轻松升级。该 GA 版本中值得一提的是,现在已经完成的高级特性,特别是可拔性和可配置性。kubeadm 的目标是成为管理员和自动化的工具箱以及更高级的系统。这一版本在这个方向上已经迈进了一大步。

容器存储接口(CSI)现已 GA

容器存储接口(CSI)在作为 alpha 引入 v1.9 以及在 v1.10 作为 beta 引入之后,现已正式 GA。使用 CSI,Kubernetes volume 变得真正可扩展。这让第三方存储提供商可以编写与 Kubernetes 互操作而无需触及核心代码的插件。Specification 本身也达到了 1.0 的状态。随着 CSI 逐渐稳定,插件作者可以按照自己的节奏开发核心存储插件。同时,可以在 CSI 文档中找到样本和生产驱动的列表:


https://kubernetes-csi.github.io/docs/Drivers.html

CoreDNS 成为 Kubernetes 的默认 DNS 服务器

在 Kubernetes1.11 中, CoreDNS 作为基于 DNS 的服务发现已经 GA。在 1.13 中,CoreDNS 将替换 kube-dns,成为 Kubernetes 的默认 DNS 服务器。CoreDNS 是一个通用的、权威的 DNS 服务器,提供与 Kubernetes 向后兼容但可扩展的集成。CoreDNS 比以前的 DNS 服务器具有更少的移动部件,因为它是单个可执行文件和单个进程,并通过创建自定义 DNS 条目来支持灵活的用例。它也是用 Go 语言编写,具有内存安全性。


CoreDNS 现在是 Kubernetes 1.13+推荐的 DNS 解决方案。该项目已将常用测试基础架构切换为默认使用 CoreDNS,官方也建议用户进行切换。对 KubeDNS 的支持和维护将至少再延续一个版本,但现在是时候开始规划迁移了。许多 OSS 安装工具已经进行了切换,包括 1.11 中的 Kubeadm。如果您使用的是托管解决方案,请与您的供应商确认了解这将如何影响到您。

其他功能更新

  • 对第三方设备监控插件的支持:该功能目前被引入为 alpha 功能(https://github.com/kubernetes/enhancements/issues/606)。

  • Kubelet 设备插件注册:该功能将成为 stable 状态。这创建了一个通用的 Kubelet 插件发现模型,可以由不同类型的节点级插件(例如设备插件、CSI 和 CNI)用于与 Kubelet 建立通信通道。

  • 拓扑感知卷调度:该功能现成为 stable 状态。这使调度程序能够识别 Pod 的卷的拓扑约束,例如区域或节点。

  • APIServer DryRun:该功能即将升级为 beta 版。这将“应用”和声明性对象管理从移动 kubectl 到 apiserver,以便修复当前无法修复的许多现有错误。

  • Kubectl Diff:即将升级为 beta 版。这允许用户运行 kubectl 命令以查看本地声明的对象配置与活动对象的当前状态之间的差异。

  • 使用持久性卷源的原始块设备:正逐渐升级为 beta 版。这使得原始块设备(非网络设备)可通过持久卷源进行使用。


用户现可在 GitHub 上下载使用 Kubernetes 的最新版本 1.13:


https://github.com/kubernetes/kubernetes/releases/tag/v1.13.0


更多参考:

https://kubernetes.io/blog/2018/12/03/kubernetes-1-13-release-announcement/

https://www.zdnet.com/article/kubernetes-first-major-security-hole-discovered/#ftag=RSSbaffb68

https://www.theregister.co.uk/2018/12/03/kubernetes_flaw_cve_2018_1002105/


2020-04-22 18:32608

评论

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

从技术视角,看阿里云的「前端智能化」是如何实现的?

阿里云CloudImagine

前端 智能化

软件测试 | 测试开发 | 你会使用哪些测试设计方法?

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | 黑盒测试方法论—因果图

测吧(北京)科技有限公司

测试

小程序与工业互联网上的概况

Geek_99967b

小程序

软件测试 | 测试开发 | Web测试方法与技术之JavaScript 讲解

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | Web测试方法与技术之CSS讲解

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | WEB 端常见 Bug 解析

测吧(北京)科技有限公司

测试

小程序容器,组装式应用的一种方案

Geek_99967b

小程序

Unity Metaverse(六)、关于Avatar换装系统的示例工程

CoderZ

Unity Avatar 9月月更 换装

软件测试 | 测试开发 | Jenkins 节点该如何管理?

测吧(北京)科技有限公司

测试

【GO】Go JSON反序列化失败情况总结

非晓为骁

Go json 反序列化

从规模化平台工程实践,我们学到了什么?

SOFAStack

软件测试 | 测试开发 | 常用测试策略与测试手段

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | 什么是软件缺陷

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | Web自动化之Selenium安装

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | 软件测试最常用的 SQL 命令 | 通过实例掌握基本查询、条件查询、聚合查询

测吧(北京)科技有限公司

测试

数据分类分级方法论及实操

极盾科技

数据分类分级

软件测试 | 测试开发 | 软件测试最常用的 SQL 命令(二) | 高级 Join 多表查询

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | web前端的HTML浅析

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | 一道大厂测试开发面试真题,你需要几分钟解答?

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | 测试面经 | 从测试螺丝钉到大厂测试开发,三点成长心得和面试经验

测吧(北京)科技有限公司

测试

测试开发面试真题 | 测试老兵进阶突破,成功挑战大厂 P7 Offer!

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | Selenium 测试用例编写

测吧(北京)科技有限公司

测试

技术干货 | 漫游Linux块IO

沃趣科技

软件测试 | 测试开发 | 跨平台API对接(Python)的使用

测吧(北京)科技有限公司

测试

多点《基于 Databend 的 TiDB 数据归档实践》 | Data Infra 分享第 4 期总结

Databend

databend 数据归档

软件测试 | 测试开发 | 黑盒测试方法论-判定表

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | 测试环境搭建

测吧(北京)科技有限公司

测试

自有APP小程序如何打通微信登陆体系

Geek_99967b

小程序 小程序生态

软件测试 | 测试开发 | 测试面试真题|抖音的广告系统前后台,该如何测试?

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | Web测试方法与技术实战演练

测吧(北京)科技有限公司

测试

新版发行+被报首个严重漏洞,Kubernetes动态有点多_文化 & 方法_Rancher_InfoQ精选文章