K8s环境下的污点横移

渗透技巧 2年前 (2022) admin
653 0 0

前言


Kubernetes 可以把用户提交的容器放到 Kubernetes 管理的集群的某一台节点上去。Kubernetes 的调度器是执行这项能力的组件,它会观察正在被调度的这个容器的大小、规格。跟调度一个有关的容忍度(Toleration)与污点(Taint)。今天要写的是k8s环境当中的一种横向移动手法,对该手法进行实验分析前提条件是node持有有效凭证调度pod

正文


容忍度tolerations是定义在 Pod对象上的键值型属性数据,用于配置其可容忍的节点污点,而且调度器仅能将Pod对象调度至其能够容忍该节点污点的节点之上。

节点亲和性 是Pod的一种属性,它使 Pod 被吸引到一类特定的节点 (这可能出于一种偏好,也可能是硬性要求)。污点(Taint)则相反——它使节点能够排斥一类特定的 Pod。容忍度(Toleration)是应用于 Pod 上的,允许(但并不要求)Pod 调度到带有与之匹配的污点的节点上。
搭建k8s环境和相关概念在之前写过。

k8s

达达,公众号:Th0r安全云原生安全入门-K8s概念与安装

这里稍微提一下pod和node的概念

Pod是可以在 Kubernetes 中创建和管理的、最小的可部署的计算单元。

Kubernetes 通过将容器放入在节点(Node)上运行的 Pod 中来执行你的工作负载。

之前也有一篇文章写过:

k8s

达达,公众号:Th0r安全云原生安全入门-Pod及其相关


污点横移拿权限是K8s中一个比较特殊的手法,利用的是容忍度的特性,不过在实际中,可能需要操作多次pod才能成功。

之前写的一篇k8s部分攻击面

k8s

达达,公众号:Th0r安全云原生安全入门之k8s部分攻击面


这里是三台虚拟机,一台master,两台node.

进入node节点,在普通node在操作

K8s环境下的污点横移

这里查看master节点的容忍度

K8s环境下的污点横移

针对容忍编写相应的pod,挂载到根目录到/master下

K8s环境下的污点横移

创建成功

K8s环境下的污点横移


K8s环境下的污点横移

查看pod归属,归属master成功

K8s环境下的污点横移

进入执行bash

K8s环境下的污点横移


K8s环境下的污点横移



原文始发于微信公众号(Th0r安全):K8s环境下的污点横移

版权声明:admin 发表于 2022年10月8日 上午8:03。
转载请注明:K8s环境下的污点横移 | CTF导航

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...