返回新闻概览

LXC 5.0.2 LTS 已发布

2023年1月20日

简介

LXC 团队很高兴地宣布发布 LXC 5.0.2!

这是 LXC 5.0 的第二个错误修复版本,支持期限至 2027 年 6 月。

安全修复

此版本修复了一个最近针对 LXC 公开的 CVE。
CVE-2022-47952 涵盖了使用 lxc-user-nic(setuid 二进制文件)来发现通常对用户不可访问的位置的文件是否存在。

此漏洞被归类为低严重性 CVE,并通过 Github 公开向我们报告,并附带了修复程序。鉴于此漏洞并非在保密协议下发布,并且鉴于此问题的低影响,我们决定像处理任何其他 liblxc 错误修复一样处理它。

错误修复

像往常一样,此错误修复版本侧重于稳定性和强化。

此版本的亮点包括

  • 修复了切换到 meson 后导致的各种构建问题
  • lxc-attach:修复缺少的返回码
  • 核心:为容器的根用户设置对等组
  • checkconfig:使输出在现代内核上更有用
  • lxc-user-nic:修复导致向非特权用户泄漏文件存在的问题 (CVE-2022-47952)

完整的提交列表如下所示

详细变更日志
  • meson.build:允许显式 distrosysconfdir
  • 构建:检测声明 struct mount_attr 的位置
  • 构建:检测 sys/pidfd.h 的可用性
  • cgroups:修复 -Waddress 警告
  • 构建:修复对依赖项的处理以修复 openSUSE 上的构建
  • 构建:仅在 libcap 可静态链接时构建 init.lxc.static
  • 构建:删除构建时 systemd 依赖项
  • src/lxc/meson.build:修复静态库路径
  • meson.build:从 git 输出中去除换行符
  • meson.build:为变量赋值去除换行符
  • gitignore:简化
  • 构建:在 sys/mount.h 中检查 FS_CONFIG_* 头文件符号
  • 全树:清除直接或间接的 linux/mount.h 包含
  • 全树:直接使用 struct clone_args
  • 全树:直接使用 struct open_how
  • meson:修复 docbook2x 检测
  • 全树:最小化 liburing.h 的包含
  • 挂载:将挂载实用程序从 syscall_wrappers.h 移动到 mount_utils.h
  • mount_utils:删除 conf.h 包含
  • 构建:使用技巧防止包含 linux/mount.h
  • 全树:将打开帮助程序拆分为 open_utils.h
  • 使用 sd_bus_call_method_async 替换 asyncv
  • 修复使用 -? 选项时工具的错误消息
  • 更新 cifuzz.yml
  • 构建(依赖项):将 actions/checkout 从 2 提升到 3
  • 配置:允许跨设备链接
  • 更新 README.md
  • lxc-attach:修复被杀死的生成进程的丢失返回码
  • lxc/attach:检测 execvp 的 EACCES 并转换为 126 退出状态
  • 工具:lxc-destroy:更新 --force 的帮助消息
  • 测试:lxc-test-checkpoint-restore:使用 trap 进行清理
  • 展开 IN_SET,因为最大使用量是 2 个元素检查
  • 测试:lxc-test-reboot:修复 ia64 上的构建
  • 自述文件:删除 lgtm
  • cgroups:在删除 cgroup 时使用 userns_exec_full()
  • cgroups:仅在必须时分配用户命名空间
  • 配置:为容器的根用户创建单独的对等组
  • apparmor:允许在 start-container.in 中共享挂载
  • 配置:确保挂载隧道是依赖项挂载
  • github:修复 coverity 构建
  • github:修复 coverity(添加 libpam-dev)
  • apparmor:正确检查 lxc_strmmap 的返回值
  • 网络:始终初始化 struct nl_handler
  • cgroups:修复 enable_controllers_delegation 中的缓冲区越界访问
  • cgroups:在 unpriv_systemd_create_scope 中检查 snprintf 的返回值
  • 状态:在 lxc_wait 中添加检查以防止 OOB
  • cgroups:修复 __initialize_cgroups 中的 cgroup 布局检测
  • 构建:使用 cc.get_define 检测 FS_CONFIG_* 符号
  • src/lxc/meson.build:修复没有 apparmor 的构建
  • checkconfig:修复混合制表符/空格
  • checkconfig:如果没有 lxc-start,则隐藏版本
  • checkconfig:调整布局
  • checkconfig:调整 cgroup 处理
  • checkconfig:修复文件系统功能检查
  • 构建:强制链接到 liblxc
  • 修补传入的 CVE (CVE-2022-47952)
  • lxc_user_nic:修复 get_mtu() 的错误处理
  • lxc-default-cgns apparmor 配置文件:允许覆盖挂载
  • 修复由使用 gold 链接器引起的 sparc64 上的构建错误

支持和升级

LXC 5.0 分支支持期限至 2027 年 6 月。
只有错误修复和安全问题才会包含在稳定的错误修复版本中,因此始终建议保持最新并运行最新的错误修复版本。

下载