渗透测试修复笔记 - 02 Docker Remote API漏洞

需要保持 Docker 服务运行并且不希望影响其他使用 Docker 部署的服务,同时需要禁止外网访问特定的 Docker API 端口(2375):通过一下命令来看漏洞

bash 复制代码
docker -H tcp://ip地址:2375 images

修改Docker配置以限制访问

  1. 修改daemon.json配置文件

    • 打开 /etc/docker/daemon.json。如果文件不存在,则创建它(vi /etc/docker/daemon.json)。

    • 修改 host 设置,以确保 Docker 不是在 0.0.0.0(即对所有网络接口开放)上监听。
      设置为仅在本地接口监听,外部网络无法访问。

      json 复制代码
      {
        "hosts": ["unix:///var/run/docker.sock", "tcp://127.0.0.1:2375"]
      }
  2. 重启 Docker 服务

    • 应用更改后,需要重启 Docker 服务:

      bash 复制代码
      sudo systemctl restart docker

通过防火墙规则限制访问

不更改 Docker 配置,可通过设置防火墙规则来限制对2375端口的访问。

  1. 添加防火墙规则

    • 使用 firewalld 或其他防火墙工具设置规则,以仅允许来自特定IP或内部网络的访问:

      bash 复制代码
      sudo firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="内部网络IP/掩码" port port="2375" protocol="tcp" accept'
  2. 重载防火墙配置

    • 应用更改:

      bash 复制代码
      sudo firewall-cmd --reload

或者,直接把防火墙改端口给关了(生产环境采取的方式)

bash 复制代码
firewall-cmd --zone=public --remove-port=2375/tcp --permanent && firewall-cmd --reload
相关推荐
u01339452717 小时前
How to Run sample.war in a Tomcat Docker Container
java·docker·tomcat
云边散步17 小时前
godot2D游戏教程系列二(19)
笔记·学习·游戏·游戏开发
sheeta199817 小时前
LeetCode 每日一题笔记 日期:2025.03.22 题目:1886.判断矩阵经轮转后是否一致
笔记·leetcode·矩阵
sonnet-102917 小时前
拓扑排序的实现
java·c语言·开发语言·笔记·算法
不想看见40417 小时前
Min Stack栈和队列--力扣101算法题解笔记
java·笔记·leetcode
马猴烧酒.17 小时前
【面试八股|计算机网络】计算机网络常见面试题详解笔记
java·开发语言·网络·笔记·计算机网络·算法·面试
学机械的鱼鱼17 小时前
【学习笔记】如何快速理解ROS2
笔记·学习
诸神缄默不语18 小时前
论文阅读笔记:AI编程用的AGENTS.md应该不写或少写
论文阅读·笔记·ai编程
Yu_Lijing18 小时前
基于C++的《Head First设计模式》笔记——蝇量模式
c++·笔记·设计模式
Kal-Lai18 小时前
学习笔记:UR5协作机器人正运动学计算
笔记