中间件-Docker
Docker容器是使用沙盒机制,是单独的系统,理论上是很安全的,通过利用某种手段,再结合执行POC或EXP,就可以返回一个宿主机的高权限Shell,并拿到宿主机的root权限,可以直接操作宿主机文件。 它从容器中逃了出来,因此我们形象的称为Docker逃逸漏洞。
判断拿下的shell是否是docker容器:
判断是否存在.dockerenv文件
命令:ls -alh /.dockerenv
查询是否有系统进程的cgroup信息:
命令:cat /proc/1/cgroup
演示:拿下的是宿主机,执行报错,系统进程中没有docker等关键字

演示:拿下的是docker容器,有正常数据回显,系统进程中有docker等关键字

如果拿下的shell是docker容器的,就要进行docker逃逸来获取宿主机shell,因为在docker容器执行命令影响不到宿主机。虽然docker容器是搭建在宿主机上的,但是docker容器就像是一个独立的虚拟系统一样,在这个独立虚拟系统中执行命令无法影响到另一个真实系统(宿主机)
举个栗子:在docker容器执行一个在home目录下创建一个1.txt文件的命令,查看home目录成功生成1.txt,但是在宿主机的home目录下并不会生成一个1.txt文件
案例:中间件-WebSphere

最低0.47元/天 解锁文章
910

被折叠的 条评论
为什么被折叠?



