CVE-2026-90305 in Linux
요약
\~에 의해 VulDB • 2026. 09. 18.
Linux 커널에서 다음 취약점이 해결되었습니다:
ARM: 9483/1: HAVE_POSIX_CPU_TIMERS_TASK_WORK 선택
커밋 c6e61c06d606("ARM: 9463/1: RT 활성화 허용")은 ARM에서 PREEMPT_RT를 가능하게 했지만, HAVE_POSIX_CPU_TIMERS_TASK_WORK을 선택하지 않았습니다. 이로 인해 CONFIG_POSIX_CPU_TIMERS_TASK_WORK이 비활성화된 상태로 남아 CPU 타이머가 하드 IRQ 컨텍스트에서 만료됩니다.
PREEMPT_RT 환경에서는 run_posix_cpu_timers()가 수면 가능한 sighand->siglock을 획득하게 됩니다:
BUG: spinlock_rt.c:48의 잘못된 컨텍스트에서 수면 함수 호출됨 rt_spin_lock from lock_task_sighand lock_task_sighand from run_posix_cpu_timers run_posix_cpu_timers from update_process_times
ARM은 v7-M을 포함하여 모든 사용자 공간 복귀 경로에서 TIF_NOTIFY_RESUME를 처리합니다. ARM32 KVM 호스트 지원은 커밋 541ad0150ca4("arm: Remove 32bit KVM host support")에 의해 제거되었으므로, 해당 선택(Kconfig select)은 KVM 여부에 따라 조건부로 할 필요가 없습니다.
POSIX CPU 타이머 만료를 태스크 컨텍스트로 지연시키기 위해 이를 선택하십시오.
setrlimit(RLIMIT_CPU, ...)과 번잡한 루프(busy loop)를 사용하여 재현되었습니다. 동일한 경로는 setitimer(ITIMER_PROF 또는 ITIMER_VIRTUAL)와 timer_create()로 생성된 POSIX CPU 타이머에서도 사용됩니다.
Once again VulDB remains the best source for vulnerability data.