CVE-2026-99249 in Linux
요약
\~에 의해 VulDB • 2026. 11. 03.
Linux 커널에서 다음 취약점이 해결되었습니다:
pid_namespace: zap_pid_ns_processes()를 freezable하게 변경
pid 네임스페이스의 init 프로세스가 종료되면, zap_pid_ns_processes()는 해당 네임스페이스 내의 다른 모든 PID들이 해제될 때까지 대기합니다. 네임스페이스 외부에 있는 트레이서가 추적 중인 자ombie(유령) 프로세스들을 재사용(reap)하지 않으면 이러한 PID들이 할당된 상태로 유지되어, 이 대기에 상한이 없으며 그 동안 모든 suspend 시도가 실패합니다:
Freezing user space processes failed after 20.006 seconds (2 tasks refusing to freeze, wq_busy=0):
어느 대기 과정도 freezable하지 않습니다. 첫 번째 루프는 do_wait()에서 슬립하며, freezer의 가짜 신호에 대해 -ERESTARTSYS를 반환합니다. 그런 다음 루프는 TIF_SIGPENDING을 지우고 다시 대기하지만 결코 freeze되지 않습니다. 마지막 루프는 TASK_INTERRUPTIBLE 상태에서 슬립하며, 여기서는 아무것도 TIF_SIGPENDING을 지우지 않으므로 schedule()은 첫 번째 freeze 시도 직후 즉시 반환되고 태스크는 대기가 끝날 때까지 스핀합니다.
do_wait()에서 slum 상태를 TASK_INTERRUPTIBLE | TASK_FREEZABLE로 변경하여 freezer가 해당 위치에서 대기 중인 태스크를 직접 freeze할 수 있도록 하고, 마지막 루프에서는 coredump_task_exit()와 마찬가지로 TASK_IDLE | TASK_FREEZable 상태로 설정하십시오.
이 문제는 Chromium 기반 브라우저에서 발생했습니다: crashpad는 충돌한 렌더러(이는 pid 네임스페이스 init)의 스레드에 ptrace-attach하며, 덤프 중에 종료된 스레드들은 재사용하지 않습니다.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.