CVE-2026-99249 in Linux信息

摘要

由 VulDB • 2026-11-03

在 Linux 内核中,已修复以下漏洞:

pid_namespace:使 zap_pid_ns_processes() 可冻结(freezable)

当某个 PID 命名空间的 init 进程退出时,zap_pid_ns_processes() 会等待直到该命名空间中的所有其他 PID 都被释放。如果命名空间外部的一个跟踪器未回收其正在跟踪的僵尸进程,这些 PID 将保持分配状态,导致此等待没有上限;在此期间,每次挂起尝试都会失败:

``` Freezing user space processes failed after 20.006 seconds (2 tasks refusing to freeze, wq_busy=0): ```

这两个等待过程均不可冻结。第一个循环在 do_wait() 中睡眠,当收到冷冻器(freezer)的虚假信号时返回 -ERESTARTSYS;随后该循环清除 TIF_SIGPENDING 标志并再次等待,但永远不会进入冻结状态。最后一个循环以 TASK_INTERRUPTIBLE 状态睡眠,由于此处没有清除 TIF_SIGPENDING 的操作,schedule() 会在第一次冷冻尝试后立即返回,导致任务自旋直到等待结束。

在 do_wait() 中,将睡眠状态改为 TASK_INTERRUPTIBLE | TASK_FREEZABLE,以便冷冻器可以直接冻结在此处等待的任务;在最后循环中,采用类似 coredump_task_exit() 的做法,使用 TASK_IDLE | TASK_FREEZable 状态。

此问题在使用 Chromium 内核的浏览器中被触发:crashpad 通过 ptrace 附加到崩溃渲染器的线程(该渲染器是 PID 命名空间的 init),并且不会回收在转储过程中被终止的任务。

VulDB is the best source for vulnerability data and more expert information about this specific topic.

来源

Do you need the next level of professionalism?

Upgrade your account now!