内容提要:

1. 高危漏洞CVE-2018-1002105深度解读

2. 11/19--12/11 bug fix汇总分析

3. 1.11重要bug fix解读

4. 1.9重要bug fix解读

在本周的跟踪分析中,以1.11版本为例,共有24条bug fix,其中8条与Kubernetes核心内容相关。

另外,近期公布了一条高危漏洞,本文会对此进行具体分析。

由于社区目前已经停止维护1.9版本,建议大家尽快升级1.11。本文也将开始持续更新1.11版本bug fix解读,并停止更新1.9。

1  严重漏洞CVE-2018-1002105

深入解读

背景

近日kubernetes被爆出高位特权升级漏洞(CVE-2018-1002105),通过特制的网络请求,任何用户都可以通过Kubernetes应用程序编程接口(API)服务器与后端服务器建立连接。一旦建立,攻击者就可以通过网络连接直接向该后端发送任意请求。

攻击步骤

具体攻击步骤如下:

  1. 发送第一个请求,通过kube-apiserver创建一个错误的websocket请求(例如请求体中缺少必要的字段),去调用kubelet的api(例如exec pod),使kubelet的api返回非101(StatusSwitchingProtocals)错误码(例如:400)。

  2. 发送第二个请求,通过kube-apiserver访问kubelet另一个越权的api(例如list pods),便可以绕过kube-apiserver的认证鉴权,获取同一个kubelet所有租户的pod信息。

攻击原理

攻击原理是:

  1. kube-apiserver发送的websocket的请求转到kubelet,kubelet把错误信息返回给kube-apiserver后认为该请求已经结束了,因为kube-apiserver并没有判断kubelet的返回码,只做透传,kube-apiserver仍然保存着这个连接。

  2. 第二个请求,在kube-apiserver中直接复用第一个请求的连接,然后构造一个越权的api直接访问kubelet,此时kube-apiserver之前请求的长连接还在,直接透传,而kubelet认为是一个新的请求,直接响应返回结果给客户端,导致kube-apiserver中的认证鉴权失效。

修复版本

好在目前并未发现针对该漏洞的实际应用,社区也已经在所有维护的版本紧急修复了这个漏洞,包括:

v1.10 v1.11 v1.12 v1.13
v1.10.11 v1.11.5 v1.12.3 v1.13.0

具体修复方法可以参考

https://github.com/kubernetes/kubernetes/pull/71412

简单来说就是,在kube-apiserver端增加第一个请求的返回码判断逻辑,如果返回码不是101,则直接请求失败,关闭连接。

验证方法

虽然目前还没有发现针对该漏洞的应用,但是现在这个漏洞已经发布出来,很多人都掌握了这个漏洞的攻击方法,所以赶快验证下自己的环境有没有问题,有问题就赶快修复吧。

https://github.com/gravitational/cve-2018-1002105/blob/master/main.go

大家下载下来,编包,然后配置好环境上的kubeconfig文件,执行二进制,如果当前环境还有这个漏洞,则会返回:

Testing for unauthenticated access...

Testing for privilege escalation...

> API is vulnerable to CVE-2018-1002105

如果没有漏洞,执行结果中不会出现最后一行。

2  近期bug fix数据分析

本周更新近期(11/9-12/11)1.11版本的bug-fix数据及分析。

在关注的时间段内,1.11版本有24条bug-fix,其分布情况如图所示:

从上图可以看出,这段时间更新的bug fix干货满满,apiserver相关的就有4条,另外还有kubelet/scheduler/controller等核心组件相关内容。

从严重程度来看,除了前文提到的高危漏洞外,还有8条比较严重的bug fix,需要大家重点关注。

Bug fix严重程度统计,2及以下的bug fix有15个,严重程度为3的bug fix有8个,需要重点关注。

3  1.11重要bug fix解读

由于社区目前已停止维护1.9和1.10版本,建议大家尽快升级到1.11版本,本周也将开始更新1.11版本bug fix解读。

1.11.1版本重要bug fix解读信息:

4  1.9 重要bug fix解读

1.9.9-1.9.10重要bug fix解读:

【独家】K8S漏洞报告|近期bug fix解读&1.11主要bug fix汇总的更多相关文章

  1. 【独家】K8S漏洞报告 | 近期bug fix解读&1.9.11主要bug fix汇总

    *内容提要: 1. Kube-proxy长连接优雅断开机制及IPVS模式实现 2. 10/29--11/19 bug fix汇总分析 3. 1.9.11重要bug fix汇总 在本周的跟踪分析中,以1 ...

  2. K8S漏洞报告 | 近期bug fix解读&1.13主要bug fix汇总

    K8s近期漏洞详解 Kubernetes仪表盘漏洞(CVE-2018-18264) 因为这一漏洞,用户可以“跳过”登录过程获得仪表盘所使用的自定义TLS证书.如果您已将Kubernetes仪表盘配置为 ...

  3. 【独家】K8S漏洞报告 | 近期bug fix解读

    安全漏洞CVE-2019-3874分析 Kubernetes近期重要bug fix分析 Kubernetes v1.13.5 bug fix数据分析 ——本周更新内容 安全漏洞CVE-2019-387 ...

  4. 【独家】K8S漏洞报告 | CVE-2019-1002101解读

    kubectl cp漏洞CVE-2019-1002101分析 Kube-proxy IPVS添加flag ipvs-strict-arp 近期bug fix数据分析 ——本期更新内容 kubectl ...

  5. 【代码审计】ESPCMSP8(易思企业建站管理系统)漏洞报告

    0x00简介 项目名称:ESPCMS-P8(易思企业建站管理系统) 测试平台:Windwos 版本信息:P8.19082801稳定版 更新时间:2019-08-30 00:56:32 网站官网:htt ...

  6. 最常见的安全漏洞– Acunetix Web应用程序漏洞报告2021

    每年,Acunetix都会为您提供最常见的Web安全漏洞和网络外围漏洞的分析.我们的年度Web应用程序漏洞报告(现已成为Invicti AppSec指标的一部分)是基于从Acunetix在线获得的真实 ...

  7. Bug预防体系(上千bug分析后总结的最佳实践)

    Bug预防体系(上千bug分析后总结的最佳实践) 原创 2017-08-16俞美玲 光荣之路 吴老的<selenium webdriver 实战宝典>出版了!  web常见产品问题及预防 ...

  8. 解Bug之路-TCP粘包Bug

    解Bug之路-TCP粘包Bug - 无毁的湖光-Al的个人空间 - 开源中国 https://my.oschina.net/alchemystar/blog/880659 解Bug之路-TCP粘包Bu ...

  9. vue & lifecycle methods & this bug & ES6 Arrow function & this bind bug

    vue & lifecycle methods & this bug ES6 Arrow function & this bind bug bad fetchTableData ...

随机推荐

  1. 【转】HTTP学习---TCP和UDP协议的区别与应用

    [原文]https://www.toutiao.com/i6592813624689951239/ 概述 ⊙TCP/IP是个协议组,可分为三个层次:网络层.传输层和应用层. 在网络层有IP协议.ICM ...

  2. gnome美化

    调整工具更新可以移动窗口控件gnome-tweak-tool # dnf install gnome-tweak-tool 命令行启动,并且要在普通用户下启动 $ gnome-tweak-tool 在 ...

  3. Linux每日小技巧---统计服务器IP连接数

    netstat命令 [root@:vg_adn_tidbCkhsTest:172.31.30.62 ~]#netstat -tun | awk '{print $5}' | cut -d: -f1 | ...

  4. SDN 第四次上机作业

    1.建立以下拓扑,并连接上ODL控制器. 2.利用ODL下发流表,使得h3在10s内ping不通h1,10s后恢复. 3.借助Postman通过ODL的北向接口下发流表,再利用ODL北向接口查看已下发 ...

  5. lavarel模板引擎blade学习

    blade 模板学习 特点 主要的两个优点是:模板继承和区块 继承页面布局 布局文件(layout.php) + 详情文件 (page.php) 的组合,即一般到具体的组合.在blade文件之中的体现 ...

  6. JQUERY方法给TABLE动态增加行

    比如设置table的id为tabvar trHTML = "<tr><td>...</td></tr>"$("#tab&q ...

  7. SDOI 2018 R2 游记

    一篇真正的“游记”. DAY -3 下午: 今天老师批准了我去省选划水的请假要求. 批准之后感觉学习非常有动力,顺便忽悠别的同学和我一起去,然而wzx是唯一一个表示可以考虑一下的同学,其他同学直接一口 ...

  8. android camera 摄像头预览画面变形

    问题:最近在处理一下camera的问题,发现在竖屏时预览图像会变形,而横屏时正常.但有的手机则是横竖屏都会变形. 结果:解决了预览变形的问题,同时支持前后摄像头,预览无变形,拍照生成的jpg照片方向正 ...

  9. Python2.7-ConfigParser

    ConfigParser模块,用于读写配置文件,配置文件是由各个 section 组成的,每个部分都有一个 [section] 头指示,后面紧跟这部分里的配置信息,一般为 name: value 或 ...

  10. 搭建windows远程节点_jmeter自动化测试环境(接口测试)

    WINDOWS10系统下 环境 172.16.0.115虚拟机windows系统作为远程节点. jenkins安装在172.16.0.119:8088虚拟机中. 一.安装配置Java环境   wind ...