【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 的升级。根据你的具体系统配置和使用的包管理器,可能需要进行一些调整。

相关推荐
小白银子3 小时前
零基础从头教学Linux(Day 52)
linux·运维·服务器·python·python3.11
平生不喜凡桃李5 小时前
Linux网络:UDP
linux·网络·udp
weixiao04305 小时前
Linux网络 网络层
linux·网络·智能路由器
从零开始的ops生活6 小时前
【Day 80】Linux-NAS 和 SAN 存储
linux·运维·php
せいしゅん青春之我6 小时前
[JavaEE初阶] 防止网络传输中的中间人入侵---证书
服务器·网络·网络协议·java-ee
Wang's Blog7 小时前
Linux小课堂: 输入重定向与管道操作详解
linux·运维·服务器
迎風吹頭髮7 小时前
Linux内核架构浅谈49-Linux per-CPU页面缓存:热页与冷页的管理与调度优化
linux·缓存·架构
jason.zeng@15022077 小时前
centos中安装redis
linux·redis·centos
w23617346018 小时前
Linux 服务器安全巡检与加固:从命令到实操(CentOS/Ubuntu 通用)
linux·服务器·安全·安全加固·安全巡检
TG_yunshuguoji8 小时前
阿里云云代理商:阿里云CDN刷新机制是什么?
服务器·阿里云·云计算