docker逃逸的简单思路笔记
判断shell是不是在docker容器里边?
一般docker容器的shell都会带上上一串英文和数字(阿里云服务器也会),并且一些常见的命令并不能执行。如下
- Docker容器才有的命令:
[email protected]:/# ls -alh /.dockerenv
[email protected]:~# cat /proc/1/cgroup
- 正常服务器不在docker容器:
Docker逃逸思路:
查看docker容器ip
通过循环ping找到宿主机的IP,可以得到宿主机ip为172.19.0.1
脚本地址https://blog.****.net/qq_38228830/article/details/81356984
当然运行脚本可能会出现以下失败:
使用dos2unix命令修改(如果没有则需要安装,apt install dos2unix)
然后对宿主机ip端口进行探测,并对其开放得服务器进行渗透,最后通过获取宿主机的权限进而逃逸docker
curl http://172.19.0.1:[1-100] 1> 1.txt 2>/dev/null 使用curl命令探测端口1到100之间的端口,并标准输出到1.txt的文件,产生错误的信息都重定向到空设备文件
https://blog.****.net/gramdog/article/details/80374119