项目推荐:Docker Escape Tool
1. 项目基础介绍及编程语言
Docker Escape Tool 是一个开源项目,旨在帮助用户检测当前环境是否运行在 Docker 容器中,并尝试简单的逃逸技术,以评估容器安全性。该项目使用 Crystal 语言编写,并在 Alpine Linux 系统上编译,以保持体积小巧和运行效率。
2. 项目核心功能
项目的主要功能包括:
- 环境检测:检查当前环境是否为 Docker 容器。
- 自动逃逸:尝试自动逃逸容器,成功后将在宿主机上启动一个具有特权的容器,并将宿主机磁盘挂载到
/hostOS
。 - 手动逃逸技术:
- 利用挂载的 Docker UNIX 套接字进行逃逸。
- 如果容器网络命名空间与宿主机共享,则尝试通过 Docker TCP 套接字逃逸。
- 尝试挂载宿主机文件系统并进行 chroot 操作。
- 利用 CVE-2019-5736 漏洞(runC 逃逸)进行逃逸。
3. 项目最近更新的功能
项目最近的更新包含以下功能:
- 增加了新的逃逸技术:包括 CVE-2019-14271 和 CVE-2020-15257 的利用尝试。
- 能力基逃逸:增加了基于能力的逃逸尝试,如
CAP_SYS_ADMIN
和CAP_SYS_MODULE
等。 - 容器网络内枚举:增加了在同一 Docker 网络内枚举容器的功能,以便进行横向移动(pivot)。
请注意,该项目是一个安全测试工具,应仅用于合法的安全测试和评估目的。在使用前,请确保您有权对目标容器进行安全测试。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考