写点什么

新版发行 + 被报首个严重漏洞,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:32523

评论

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

AIGC应用训练营毕业总结

MiracleWong

训练营 AIGC

Python开发中,日期时间的相关处理

EquatorCoco

Python 前端

10W数据导入该如何与库中数据去重?

不在线第一只蜗牛

数据库 数据分析

天润融通助力呷哺呷哺:AI技术赋能3000万会员精细化运营

天润融通

Linux中的chgrp命令及示例

百度搜索:蓝易云

《Programming from the Ground Up》阅读笔记:p95-p102

codists

assembly 编程人

如何使用 vue2+element-ui 处理复杂表单,避免单文件过大的问题

快乐非自愿限量之名

vue.js UI

同型号LED全彩屏价格差异的原因

Dylan

价格 LED显示屏 全彩LED显示屏 led显示屏厂家 市场

NFT数字藏品艺术品系统开发(原理)丨NFT数字藏品艺术品系统开发(案例详解)

V\TG【ch3nguang】

IM即时通讯软件,企业即时通讯系统就选WorkPlus

WorkPlus

PIRF-407-Food for thought

EchoZhou

English

解决SpringBoot项目war部署到tomcat下无法Nacos中注册服务问题

百度搜索:蓝易云

php如何设置随机数

百度搜索:蓝易云

DAPP算力合约代币质押项目系统开发步骤详细及源码

V\TG【ch3nguang】

HarmonyOS NEXT 地图服务中‘我的位置’功能全解析

白晓明

HarmonyOS NEXT Map Kit 地图服务 显示我的位置

sunpump交易所做市机器人

区块链技术

我用 ChatGPT 学 Redis,差点蚌埠住了!

码哥字节

Java redis 底层原理 ChatGPT

《Programming from the Ground Up》阅读笔记:p103-p116

codists

汇编 编程人

一文讲清楚static关键字

EquatorCoco

Java JVM 开发语言

Vue状态管理库Pinia详解

不在线第一只蜗牛

Vue 前端

2024-08-24:用go语言,给定一个下标从1开始,包含不同整数的数组 nums,数组长度为 n。 你需要按照以下规则进行 n 次操作,将数组 nums 中的所有元素分配到两个新数组 arr1 和

福大大架构师每日一题

福大大架构师每日一题

开发全面覆盖拍卖直播软件平台:移动APP与网页端结合

软件开发-梦幻运营部

AIGC应用实战营--毕业总结

michael

SunPump刷量机器人

区块链技术

使用ICMP协议来判断UDP端口的存活状态

百度搜索:蓝易云

mysql索引条件下推 、 count(*)、count(1)、IN 、exists等

百度搜索:蓝易云

ubuntu22.04文件管理器nautilus配置默认终端为alacritty

百度搜索:蓝易云

数字货币交易所/合约跟单/量化合约/合约量化/永续合约/秒合约系统开发详细指南及源码

V\TG【ch3nguang】

mysql8.0 主从架构模式【0到1架构系列】

快乐非自愿限量之名

MySQL 数据库 架构

中国数据库的崛起:从本土化挑战到全球化机遇

繁依Fanyi

数据库

CentOS全面停服,国产化提速,央国企信创即时通讯/协同门户如何选型?

WorkPlus

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