【Linux】修复 runc 文件描述符泄漏导致容器逃逸漏洞(CVE-2024-21626)

漏洞详情

在runc 1.1.11 及之前的版本中,由于内部文件描述符泄露的问题,攻击者可以让新生成的容器进程在宿主文件系统命名空间中拥有工作目录,从而允许通过访问宿主文件系统实现容器逃逸等用需要具体的环境,例如允许攻击者提供自定义镜像等。官方已于2024年2月1日发布安全更新,建议相关受影响用户升级。

阿里云ACK runc版本影响范围:

1.1.0 <= runc <= 1.1.11

社区版本影响范围:

1.0.0-rc93<= runc <= 1.1.11

社区在下列版本中修复了该问题:

runc 1.1.12

解决方案

要升级 Linux 系统中的 runc 版本,可以按照以下步骤操作。下面的步骤适用于大多数 Linux 发行版。

升级 runc 的步骤

  1. 卸载现有的 runc 版本(可选,根据具体情况):

    bash 复制代码
    sudo apt-get remove runc
  2. 下载最新版本的 runc

    runc的GitHub releases页面 获取最新版本的下载链接,并使用 wgetcurl 下载最新版本的二进制文件。例如:

    bash 复制代码
    wget https://github.com/opencontainers/runc/releases/download/v1.1.0/runc.amd64 -O runc

    请根据实际最新版本替换上面的URL和文件名。

  3. 安装新版本

    给下载的文件添加可执行权限,并将其移动到系统的适当位置:

    bash 复制代码
    chmod +x runc
    sudo mv runc /usr/local/sbin/runc

    如果你的 runc 安装在 /usr/bin 目录中,使用以下命令:

    bash 复制代码
    sudo mv runc /usr/bin/runc
  4. 验证安装

    确认 runc 已成功更新:

    bash 复制代码
    runc --version

    你应该会看到新的版本信息。

详细说明

  • 下载最新版本 :你可以从 runc 的官方 GitHub releases 页面获取最新的版本信息,并下载最新的二进制文件。确保你下载的是正确的架构(如 amd64arm64 等)。
  • 添加执行权限 :下载的二进制文件默认是没有执行权限的,需要使用 chmod +x 命令赋予可执行权限。
  • 移动到系统路径 :将新的 runc 二进制文件移动到系统路径中,通常是 /usr/local/sbin/usr/bin。你可以根据你的系统配置选择合适的位置。
  • 验证 :最后,使用 runc --version 命令检查新版本是否安装成功。

这些步骤应该可以在大多数 Linux 系统上顺利完成 runc 的升级。根据你的具体系统配置和使用的包管理器,可能需要进行一些调整。

相关推荐
洋哥网络科技16 小时前
centos 7.9搭建安装confluence7
linux·centos·知识图谱
占疏16 小时前
访问日志查询功能
java·服务器·flask
李昊哲小课16 小时前
Ubuntu 24.04 安装开源WebRTC信令服务器
服务器·ubuntu·mediasoup·janus·信令服务器
这个人需要休息16 小时前
TCP/IP 协议栈
服务器·网络·网络协议·tcp/ip
LCG元16 小时前
Docker 入门实战:用10个案例带你玩转容器化
linux
kkce16 小时前
快快测(KKCE)TCping 检测全面升级:IPv6 深度覆盖 + 多维度可视化,重构网络性能监测新体验
服务器·网络·重构
MMME~16 小时前
SELinux
linux·rhce
cccccc语言我来了16 小时前
深入理解 Linux(7) 命令与动态库:从文件操作到程序链接的实践指南
android·linux·运维
浪漫血液&16 小时前
进程调度的基本过程
服务器·进程调度
Lynnxiaowen16 小时前
今天我们开始学习Linux自动化运维Ansible基础
linux·运维·学习·自动化·云计算·ansible