Linux Distros 未修补的漏洞:CVE-2026-98980

critical Nessus 插件 ID 371525

简介

Linux/Unix 主机上安装的一个或多个程序包存在漏洞,但供应商表示不会修补此漏洞。

描述

Linux/Unix 主机中安装的一个或多个程序包受到一个漏洞影响,而供应商没有提供补丁程序。

- namei:不揭露 refwalk 中的过界条目。在 rcuwalk 中,目录项会在被接受前对其进行验证。step_into() step_into() 重新检查d_seq,__follow_mount_rcu() 重新检查mount_lock。两者之间断开链接的条目会导致查找重试并错过。refwalk 不会这样做。
lookup_fast() 对哈希的 dentry 进行引用并接受它。因此,refwalk 不会看到在获取引用后发生的取消链接。这对于一个简单的文件来说很好。我们只是碰巧在它被取消链接之前打开了它,没问题。对于挂载点,特别是锁定挂载点,它非常不是。取消链接会分离所有挂载,然后删除名称。任何尚未遍历坐骑的 refwalk 都只是揭示了底层条目。这是一个非常窄的窗口,但它可能会被命中:在 60 秒内读取一个涵盖的文件,3 个遍历器,~15000 unlink 不加宽 27 该步骤 + 200 us 3741 有关更可靠的复制,请参阅附加的修补程序。因此请检查 step_into() 之后的条目。unlink()、rmdir() 和 rename() 在分离挂载并删除目录项之前,用 dont_mount() 标记目录项。因此,用DCACHE_CANT_MOUNT标记且在查看其坐骑时未拆希的 dentry 是在 refwalk 下取消链接的名称。DCACHE_CANT_MOUNT是在查找挂载之后读取的,并在通过 detach_mounts() 分离挂载之前进行设置。错过坐骑的 refwalk 将看到DCACHE_CANT_MOUNT。普通 d_unlinked() 就可以了。重命名会使 dentry 脱离其哈希链,但 ___d_drop() 会保留 d_hash.pprev 集。因此只有 __d_drop() 和 dentry 上的重命名才能对其进行反哈希。唯一翻转IS_ROOT断开连接别名中的拼接的动作。那没有DCACHE_CANT_MOUNT设置。将 to step_into_slowpath() 添加。..
并且LOOKUP_DOWN可以合法地登陆未哈希的目录。交叉到挂载上的 refwalk 具有的 path.mnt 与 nd->path.mnt 不同。文件系统自行删除的 dentry(d_invalidate()、d_drop())未设置标记,并视为以前。spdx-license-identifier:GPL-2.0 /* * unlink_covered:针对通过该副本打开该文件的遍历者取消链接作为文件 * 其挂载的分离副本中的挂载点的文件。 * * A 是包含文件 f1(内容SECRET_F)和普通文件 * MARK_A的 tmpfs。A' 是 A 的 open_tree(OPEN_TREE_CLONE) 副本,MARK_A在 A'/f1 上绑定为 *,一旦树 fd 被 * 关闭,通过其根上的 O_PATH fd 保持。遍历器通过该 fd 打开 f1,而驱动程序则取消链接 A/f1,*其上未挂载任何内容。步行者可能会阅读MARK_A或获得 ENOENT。* 读取 SECRET_F 很成功:在其挂载 * 消失后找到该名称。无锁遍历使用 openat2(RESOLVE_CACHED)。* * 用法:unlink_covered [-t 秒] [-w 遍行器] */ #ifndef _GNU_SOURCE #define _GNU_SOURCE #endif #include <errno.h> #include #include <fcntl.h><pthread.h> #include <stdatomic.h> #include #include <stdio.h><stdlib.h> #include <string.h> #include #include < <unistd.h> sys/mount.h> #include <sys/stat.h> #include <sys/syscall.h> #include <linux/openat2.h> #ifndef __NR_open_tree #define __NR_open_tree 428 #endif #ifndef __NR_move_mount #define __NR_move_mount 429 #endif #ifndef __NR_openat2 #define __NR_openat2 437 #endif#ifndef OPEN_TREE_CLONE #define OPEN_TREE_CLONE 1 #endif #ifndef OPEN_TREE_CLOEXEC #define OPEN_TREE_CLOEXEC O_CLOEXEC #endif #ifndef MOVE_MOUNT_F_EMPTY_PATH #define MOVE_MOUNT_F_EMPTY_PATH 0x00000004 #endif #define WORK /tmp/uc #define ADIR WORK /A 静态 int 持续时间 = 60,nwalkers = 3;
静态atomic_int停止,writer_waiting;静态pthread_rwlock_t cur_lock = PTHREAD_RWLOCK_INITIALIZER;
静态 int cur_fd = -1;/* A' 的根,-1 而无 */ 静态atomic_long n_unlink,n_walk,n_mark,n_enoent,n_othe ---truncated--- (CVE-2026-98980)

请注意,Nessus 依赖供应商报告的程序包是否存在进行判断。

解决方案

目前尚未有任何已知的解决方案。

另见

https://security-tracker.debian.org/tracker/CVE-2026-98980

插件详情

严重性: Critical

ID: 371525

文件名: unpatched_CVE_2026_98980.nasl

版本: 1.1

类型: Local

代理: unix

系列: Misc.

发布时间: 2026/10/23

最近更新时间: 2026/10/23

支持的传感器: Frictionless Assessment Agent, Nessus Agent, Agentless Assessment, Tenable Cloud Security, Tenable Self-Hosted Container Security, Nessus

风险信息

VPR

风险因素: Medium

分数: 5

百分位: 92.98

CVSS v2

风险因素: High

基本分数: 7.5

时间分数: 6.4

矢量: CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:P

CVSS 分数来源: CVE-2026-98980

CVSS v3

风险因素: Critical

基本分数: 9.8

时间分数: 9

矢量: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

时间矢量: CVSS:3.0/E:U/RL:U/RC:C

漏洞信息

CPE: cpe:/o:debian:debian_linux:12.0, p-cpe:/a:debian:debian_linux:linux

必需的 KB 项: Host/local_checks_enabled, Host/cpu, global_settings/vendor_unpatched, Host/OS/identifier

易利用性: No known exploits are available

漏洞发布日期: 2026/10/23

参考资料信息

CVE: CVE-2026-98980