K8s kubectl 复制命令曝目录遍历漏洞

栏目: IT资讯 · 发布时间: 6年前

内容简介:Twistlock 的安全研究人员 Ariel Zelivansky 披露了 Kubernetes kubectl 复制命令的一个目录遍历漏洞。 出现漏洞的是命令 kubectl cp,该命令允许在容器和用户计算机之间复制文件。要从容器中复制文件,Kubernete...

Twistlock 的安全研究人员 Ariel Zelivansky 披露了 Kubernetes kubectl 复制命令的一个目录遍历漏洞。

K8s kubectl 复制命令曝目录遍历漏洞

出现漏洞的是命令 kubectl cp,该命令允许在容器和用户计算机之间复制文件。要从容器中复制文件,Kubernetes 调用容器内的`tar`二进制文件,以创建或解压 tar 包。

对 tar 的操作依赖于 CMD/CP/cp.go,其中的函数`copyFromPod`实现了从容器中复制文件的过程,它通过远程 exec(`&exec.DefaultRemoteExecutor`)调用容器中的 tar,然后在函数`untarAll`中解压用户机器上的结果。此函数使用“archive/tar” Go 包根据结果 tar 头进行 tar 解析,最后将文件写入目标目录。

这个过程中,如果容器上的`tar`二进制文件是恶意的,那么它可以运行任意代码并输出恶意结果,这将最终导致典型的目录遍历攻击,允许恶意容器在复制时将任何文件写入用户计算机上的任何路径。

虽然此前已经引入了`cp.go:clean`函数来避免这个目录遍历,但是 Ariel 发现其实可以创建和跟踪来自 tar 头的符号链接,攻击者可以制作一个恶意 tar,其中包含一个带有几乎任何路径的符号链接的头,以及一个与符号链接同名的目录内文件的后续头。当通过 cp untar 函数提取时,链接将导致在符号链接的路径中创建或修改所需文件。

攻击者可能会采用以下方式利用该漏洞:

  • 用户在不知情的情况下下载带有错误 tar 的恶意容器镜像,攻击者可以将这样的镜像推送到任何注册表(例如 Docker Hub),以获得他控制或依赖于域名仿冒的流行镜像。
  • 攻击者利用另一个漏洞攻击正在运行的容器,或者在某些情况下,他可能拥有对容器的合法访问权限。然后攻击者植入恶意 tar 替换镜像中的原始 tar。

在 Ariel 向 Kubernetes 和 OpenShift 安全团队报告后,该漏洞已经实官方确认,并且收录为 CVE-2019-1002101。

详细披露细节查看:https://www.twistlock.com/labs-blog/disclosing-directory-traversal-vulnerability-kubernetes-copy-cve-2019-1002101


以上所述就是小编给大家介绍的《K8s kubectl 复制命令曝目录遍历漏洞》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

创投之巅——中国创投精彩案例

创投之巅——中国创投精彩案例

投资界网站 / 人民邮电出版社 / 2018-11 / 69.00

中国的科技产业发展,与创投行业密不可分。在过去的几十年间,资本与科技的结合,缔造了众多创业“神话”。回顾这些科技巨头背后的资本路径,可以给如今的国内创业者很多有益的启发。 本书从风险投资回报率、投资周期、利润水平、未来趋势等多个维度,筛选出了我国过去几十年中最具代表性的创业投资案例,对其投资过程和企业成长过程进行复盘和解读,使读者可以清晰地看到优秀创业公司的价值与卓越投资人的投资逻辑。一起来看看 《创投之巅——中国创投精彩案例》 这本书的介绍吧!

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具