docker-逃逸提权 – 作者:jasongsasd

17次阅读
没有评论

靶机网站页面

docker-逃逸提权 - 作者:jasongsasd

信息收集一下nmap先扫一下看看也可以同时进行其他扫描器扫描(目录爆破等)

docker-逃逸提权 - 作者:jasongsasd

可以看到目前就开放了三个端口,其中ftp端口允许匿名登陆账户Anonymous 密码空

我们尝试下

docker-逃逸提权 - 作者:jasongsasd

成功进入但是发现好像没什么东西没什么可以利用的

docker-逃逸提权 - 作者:jasongsasd

唯一奇怪的可能有用的是发现下面那串字符Security@hackNos

docker-逃逸提权 - 作者:jasongsasd

21端口ftp到这就走不通了来看下80,web页面

docker-逃逸提权 - 作者:jasongsasd

最后发现只有Troubleshool这个连接是本地连接

docker-逃逸提权 - 作者:jasongsasd

要输入账号密码但是我们手上就只有Security@hackNos还不知道它是账号还是密码不知道是一个整体还是两个所以经过一番尝试运气真好账号是admin密码是Security@hackNos

docker-逃逸提权 - 作者:jasongsasd

进去后发现只有一个ping_scan一个功能

docker-逃逸提权 - 作者:jasongsasd

docker-逃逸提权 - 作者:jasongsasd

根据执行结果推测可能使用的命令是

Shell_exec:shell_exec(“ping”.$input)

这时候我们想到“|”   shell_exec(a|b)

接下来我们尝试下

docker-逃逸提权 - 作者:jasongsasd

docker-逃逸提权 - 作者:jasongsasd

执行成功

那我们就可以下载木马上传

docker-逃逸提权 - 作者:jasongsasd

docker-逃逸提权 - 作者:jasongsasd

成功拿到shell

查看有哪些用户可以用的

docker-逃逸提权 - 作者:jasongsasd

一共两个用户可用root和recon

我们查看下可以有什么命令可以利用提权

find / -user root -perm -4000 -print 2>/dev/null

docker-逃逸提权 - 作者:jasongsasd

并没有发现有什么命令可以利用提权的

查找recon文件

docker-逃逸提权 - 作者:jasongsasd

最后发现在var/opt/python.py发现是个python反弹shell好人啊省得自己写只需要自己改一下,然后在执行这个python文件nc监听一下

成功获得交互式反弹shell

docker-逃逸提权 - 作者:jasongsasd

紧接着又发现Security@hackNos这个字符串还是recon账号得密码直接ssh连接

docker-逃逸提权 - 作者:jasongsasd

利用sudo提权拿到了哈希

docker-逃逸提权 - 作者:jasongsasd

但是这时候发现该主机上装有docker

docker-逃逸提权 - 作者:jasongsasd

我们试试看能不能docker逃逸来进行提权

看了下它有那些镜像

docker-逃逸提权 - 作者:jasongsasd

发现并没有

那就下载个小镜像吧然后把root文件夹挂载到上面,因为docker环境运行得时候是需要root权限得所以可以实现提权得目的

使用dockeer run alpine chroot 来下载个小镜像

docker-逃逸提权 - 作者:jasongsasd

这里网速比较慢我断了几次

下载好后

docker-逃逸提权 - 作者:jasongsasd

docker-逃逸提权 - 作者:jasongsasd

下一步将root文件夹挂载在上面

docker run -it -v /:/mmmt alpine

把文件夹挂载到mmmt文件夹

docker-逃逸提权 - 作者:jasongsasd

docker-逃逸提权 - 作者:jasongsasd

docker-逃逸提权 - 作者:jasongsasd

可以看到我们已经有了root权限

Docker挂载命令逃逸:-v /root(需要挂载得目录):/abc(新建挂载目录)

来源:freebuf.com 2020-10-28 19:27:12 by: jasongsasd

正文完
 0
评论(没有评论)