• 12 个优化 Docker 镜像安全性的技巧


    本文介绍了 12 个优化 Docker 镜像安全性的技巧。每个技巧都解释了底层的攻击载体,以及一个或多个缓解方法。这些技巧包括了避免泄露构建密钥、以非 root 用户身份运行,或如何确保使用最新的依赖和更新等。

    1前言

    当你是刚开始使用 Docker 的新手时,你很可能会创建不安全的 Docker 镜像,使攻击者很容易借此接管容器,甚至可能接管整个主机,然后渗透到你公司的其他基础设施中。

    可以被滥用来接管你的系统的攻击向量有很多,例如:

    • 启动的应用程序(在你 Dockerfile 的 ENTRYPOINT 中指定)以 root 用户身份运行。这样以来,一旦攻击者利用了一个漏洞并获得了 shell 权限,他们就可以接管 Docker 守护程序所运行的主机。

    • 你的镜像是基于一个过时的和 / 或不安全的基础镜像,其中包含(现在)众所周知的安全漏洞。

    • 你的镜像包含了一些工具(如 curl、apt 等),一旦攻击者获得了某种访问权,就可以通过这些工具将恶意软件加载到容器中。

    下面的各个章节讲解了能够优化你的镜像安全性的各种方法。它们是按重要性 / 影响程度排序的,也就是说排名靠前的方法更重要。

    2避免泄露构建密钥

    构建密钥是只在构建 Docker 镜像时需要的凭证(不是在运行时)。例如,你可能想在你的镜像中包含某个应用程序的一个编译版本,这个应用的源代码是闭源的,并且其 Git 存储库是有访问保护的。在构建镜像时,你需要克隆 Git 存储库(这需要构建密钥,例如该存储库的 SSH 访问密钥),从源代码构建应用程序,然后再删除源代

  • 相关阅读:
    [学习记录] Redis 2. 安装和相关知识
    Redis 持久化
    【C语言】扫雷(递归展开 + 标记功能)
    【day21】每日一题——MP3光标位置
    1103springcloud复习,eureka注册中心的使用
    YoloX大升级:阿里巴巴提出新框架,超越Yolov6和PPYoloE(附源代码)
    字体管理工具 - RightFont使用教程
    88-Spring Boot详解
    Kafka源码分析(四) - Server端-请求处理框架
    BlockingQueue二
  • 原文地址:https://blog.csdn.net/qq_61890005/article/details/127871907