当前位置: 首页 > news >正文

LINUX内核权限提升漏洞(CVE-2024-1086)通告

一、漏洞概述

近日,绿盟科技CERT监测网上有研究员公开披露了一个Linux内核权限提升漏洞(CVE-2024-1086)的细节信息与验证工具,由于Linux内核的netfilter:nf_tables组件存在释放后重利用漏洞, nft_verdict_init() 函数允许在钩子判定中使用正值作为丢弃错误,当 NF_DROP 发出类似于 NF_ACCEPT 的丢弃错误时,nf_hook_slow() 函数会导致双重释放漏洞,本地攻击者利用此漏洞可将普通用户权限提升至 root 权限。目前已有PoC公开,请相关用户尽快采取措施进行防护。目前已有PoC公开,请相关用户尽快采取措施进行防护。

Netfilter是Linux内核提供的一个框架,它允许以自定义处理程序的形式实现各种与网络相关的操作。Netfilter为数据包过滤、网络地址转换和端口转换提供了各种功能和操作,它们提供了通过网络引导数据包和禁止数据包到达网络中的敏感位置所需的功能。

参考链接:

https://bugzilla.redhat.com/show_bug.cgi?id=2262126

二、影响范围

受影响版本

  • 3.15 <= Linux kernel < 6.1.76
    6.2 <= Linux kernel < 6.6.15
    6.7 <= Linux kernel < 6.7.3
    Linux kernel = 6.8-rc1

注:已知Redhat、Ubuntu、Debia等Linux发行版受影响

不受影响版本

  • Linux kernel = 4.19.307
    Linux kernel = 5.4.269
    Linux kernel = 5.10.210
    Linux kernel = 5.15.149
    Linux kernel >= 6.1.76
    Linux kernel >= 6.6.15
    Linux kernel >= 6.7.3
    Linux kernel >= 6.8-rc2

解决:

临时解决方案
1、通过防止加载受影响的 nf_tables 内核模块可以缓解此漏洞,在禁用之前,需要仔细评估确认禁用该模块带来的影响,例如:iptables 可能需要 nf_tables 模块才能工作。

RedHat/CentOS:

 echo 'blacklist nf_tables' >> /etc/modprobe.d/blacklist-nf_tables.confdracut -freboot 重启后即可禁用 重启的时候看下服务启动的那些服务

Debian/Ubuntu:

# sudo echo 'blacklist nf_tables' >> /etc/modprobe.d/blacklist-nf_tables.conf
# sudo update-initramfs -u
# reboot 重启后即可禁用

2、如果无法禁用 nf_tables 内核模块,在系统上没有运行任何容器的情况下,可以通过禁用用户命名空间来缓解漏洞。在禁用之前,需要仔细评估并确认禁用所带来的影响,例如:许多容器实现需要使用 user_namespaces 来增强安全性和隔离性。

# echo "user.max_user_namespaces=0" > /etc/sysctl.d/userns.conf
# sysctl -p /etc/sysctl.d/userns.conf

 Debian/Ubuntu:
如果不需要,可禁用非特权用户创建命名空间的能力。临时禁用执行以下命令:# sudo sysctl -w kernel.unprivileged_userns_clone=0

重启后仍然禁用:

# echo kernel.unprivileged_userns_clone=0 | sudo tee /etc/sysctl.d/99-disable-unpriv-userns.conf

参考:How do I prevent a kernel module from loading automatically? - Red Hat Customer Portal

Flipping Pages: An analysis of a new Linux vulnerability in nf_tables and hardened exploitation techniques

GitHub - Notselwyn/CVE-2024-1086: Universal local privilege escalation Proof-of-Concept exploit for CVE-2024-1086, working on most Linux kernels between v5.14 and v6.6, including Debian, Ubuntu, and KernelCTF. The success rate is 99.4% in KernelCTF images.

升级修复方案
目前该漏洞已经修复,受影响用户可升级到Linux内核v5.15.149、v6.1.76、v6.6.15或更高版本。

相关发行版本已发布漏洞公告,可参考漏洞公告升级对应的Linux内核。

Ubuntu公告:https://ubuntu.com/security/CVE-2024-1086

CentOS漏洞公告:https://lists.centos.org/pipermail/centos-announce/2024-March/099235.html

RedHat漏洞公告:https://access.redhat.com/security/cve/cve-2024-1086

Debian漏洞公告:https://security-tracker.debian.org/tracker/CVE-2024-1086

统信漏洞公告:https://src.uniontech.com/#/security_advisory_detail?utsa_id=UTSA-2024-000633

麒麟漏洞公告:https://kylinos.cn/support/loophole/patch/5561.html

相关文章:

  • 【2024最新华为OD-C/D卷试题汇总】[支持在线评测] 目录管理器(200分) - 三语言AC题解(Python/Java/Cpp)
  • 【Science Data Bank】数据集下载脚本
  • python-日历库calendar
  • maven学习小结
  • ubuntu 22.04 升级到24.04
  • 手机号码的校验
  • 【昇思25天学习打卡营打卡指南-第一天】基本介绍与快速入门
  • 三分忙,七分瞎忙!明天起,做个清闲的打工人~
  • H5禁止页面缩放的方法汇总
  • 确保数据一致性
  • 相机的标定
  • LeetCode206-反转链表
  • 常用的Excel函数
  • 应用无感,透明加密!麒麟信安商用密码改造方案助力密改合规
  • 排序-快速排序
  • 【402天】跃迁之路——程序员高效学习方法论探索系列(实验阶段159-2018.03.14)...
  • Apache的80端口被占用以及访问时报错403
  • Bootstrap JS插件Alert源码分析
  • ES2017异步函数现已正式可用
  • Netty源码解析1-Buffer
  • Otto开发初探——微服务依赖管理新利器
  • Quartz实现数据同步 | 从0开始构建SpringCloud微服务(3)
  • React-flux杂记
  • SegmentFault 2015 Top Rank
  • 阿里云前端周刊 - 第 26 期
  • 多线程 start 和 run 方法到底有什么区别?
  • 如何在GitHub上创建个人博客
  • 如何正确配置 Ubuntu 14.04 服务器?
  • 删除表内多余的重复数据
  • 学习笔记DL002:AI、机器学习、表示学习、深度学习,第一次大衰退
  • 智能合约开发环境搭建及Hello World合约
  • ​油烟净化器电源安全,保障健康餐饮生活
  • # 安徽锐锋科技IDMS系统简介
  • ###项目技术发展史
  • #Linux杂记--将Python3的源码编译为.so文件方法与Linux环境下的交叉编译方法
  • #pragma 指令
  • (19)夹钳(用于送货)
  • (8)Linux使用C语言读取proc/stat等cpu使用数据
  • (cljs/run-at (JSVM. :browser) 搭建刚好可用的开发环境!)
  • (PySpark)RDD实验实战——求商品销量排行
  • (STM32笔记)九、RCC时钟树与时钟 第一部分
  • (ZT)北大教授朱青生给学生的一封信:大学,更是一个科学的保证
  • (附源码)ssm户外用品商城 毕业设计 112346
  • (四)JPA - JQPL 实现增删改查
  • (图文详解)小程序AppID申请以及在Hbuilderx中运行
  • (转)C#开发微信门户及应用(1)--开始使用微信接口
  • (转)一些感悟
  • (轉貼) VS2005 快捷键 (初級) (.NET) (Visual Studio)
  • .bat批处理(十):从路径字符串中截取盘符、文件名、后缀名等信息
  • .chm格式文件如何阅读
  • .Net下使用 Geb.Video.FFMPEG 操作视频文件
  • .NET中分布式服务
  • .Net组件程序设计之线程、并发管理(一)
  • .php结尾的域名,【php】php正则截取url中域名后的内容
  • @hook扩展分析