赞
踩
又叫Docker Remote API未授权访问漏洞,此API主要目的是取代命令行界面;Dcoker swarm是docker下的分布化应用的本地集群,开放2375监听容器时,会调用这个API,方便的docker集群管理和扩展(绑定在0.0.0.0上,http会返回404page not fount)
fofa搜索全国端口占有概况:
》》nmap探测是否开放此端口(略)
渗透测试时进行全端口扫描,单一测试时直接-p 2379
》》如果访问如下页面,返回一个json格式的值{“message”:“page not found”}即存在漏洞:(或者使用客户端的远程访问查看,方法在2.3 漏洞利用中可看到)
》》浏览器访问查看目标的基本信息
<ip>:2379/version
<ip>:2379/info
》》首先自己的公网V屁S上需要有docker客户端(安装略)
# 然后通过docker client执行目标服务器容器命令
》》列出当前所有镜像
》》列出所有容器
》》启动宿主机的镜像,并将该宿主机的根目录挂在早容器的/mnt目录下(启动之后就会获得一个docker 容器shell)
docker -H tcp://<ip>:2375 run -it -v /:/mnt <Image ID> /bin/bash
(这里可以看到对方操作系统是Ubuntu)
由于很多命令都不可用,比如ifconfig、netstat这里我们需要进行一个服务器提权,提到宿主机的权限,使用的方法是公私钥提权登录
》》攻击者v屁s上生成一对公私钥
》》ssh-keygen -t rsa
》》输入密钥名
》》输入密码
》》查看并复制服务器公钥
Tips:复制时注意到最后一个字符,防止复制到空格之类的,粘贴时自动换行
》》进入到victim挂在的目录下(/mnt/root)
》》进入.ssh目录,查看是否有公钥存在(如果有则将之前的公钥进行重定向覆盖)
Tips:这里可以先保存下对方原来的公钥,等利用公私钥登录权限维持后再给对方换回去,以隐匿操作
》》使用私钥成功登录(这里可以看到是阿里的一个云主机)
》》给对方留一个纸条就离开吧
(即使诱惑再大,任何情况下不要查看修改对方主机中的文件!
即使诱惑再大,任何情况下不要查看修改对方主机中的文件!
即使诱惑再大,任何情况下不要查看修改对方主机中的文件!)
》》不要忘记将原来的公钥文件再覆盖回去
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。