CVE-2026-98260
exec: de_thread() 직후 POSIX 타이머 정리
- 게시됨
- 2026. 10. 6.
- 업데이트됨
- 2026. 10. 30.
- CNA 할당 중
- Linux
- 증거 관찰됨
- 2026. 11. 4.
기본 CVSS
nvd · CVSS 3.1
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H낮음 · 다음 30일
- 백분위수
- 8.2%
- 모델 날짜
- 2026. 11. 4.
EPSS는 통계적 추정치이지 확실성이나 영향의 척도가 아닙니다. 이를 CVSS, KEV 상태, 노출 및 환경과 결합하세요.
요약
Linux 커널에서 다음과 같은 취약점이 해결되었습니다: exec: de_thread() 직후 POSIX 타이머 정리 스레드별 CPU 타이머는 자신이 연결된 스레드의 PID에 대한 참조를 보유하며, 타이머가 활성화되어 있는 동안 해당 노드는 그 스레드의 posix_cputimers에 큐잉됩니다. 태스크는 해당 PID로 조회됩니다. 비리더 스레드가 exec()를 호출하면 de_thread()가 해당 PID를 소유하는 태스크를 변경합니다. 그러면 pid_task(timer->it.cpu.pid, PIDTYPE_PID)는 NULL을 반환하지만, 노드는 여전히 살아 있는 tsk에 큐잉된 상태입니다. timer_lock_sighand()는 조회 실패를 노드가 이미 큐에서 제거된 것으로 간주하므로 되돌릴 것이 없습니다. begin_new_exec()는 exec_task_namespaces() 직후에 posix_cpu_timers_exit(me)를 호출하여 남은 노드를 제거하므로, 상태는 정상적으로는 보이지 않게 유지됩니다. 그러나 bprm->point_of_no_return은 de_thread() 이전에 설정되므로, unshare_files(), set_mm_exe_file(), exec_mmap() 또는 exec_task_namespaces()가 실패하면 태스크는 그 지점에 도달하기 전에 종료됩니다. 그러면 exit_itimers()가 k_itimer를 해제하는데 그 노드는 여전히 큐에 남아 있으며, 나중에 tsk를 수거(reap)할 때 해제된 노드가 rbtree에서 지워집니다. 요약하면: 비리더 스레드 B 부모 timer_create(CLOCK_THREAD_CPUTIME_ID) timer_settime() arm_timer() // 노드가 B에 큐잉됨 execve() de_thread(B) exchange_tids(B, leader) // B의 PID가 이제 리더에 속함 release_task(leader) __exit_signal(leader) posix_cpu_timers_exit(leader) // 리더의 큐를 정리하며, B의 큐가 아님 __unhash_process(leader) // 해당 PID에는 더 이상 태스크가 없음 exec_mmap() mmap_read_lock_killable(old_mm) kill(B, SIGKILL) // -EINTR get_signal() do_exit() exit_itimers() posix_timer_delete() posix_cpu_timer_del() posix_timer_unhash_and_free() // 여전히 큐에 있는 상태에서 해제됨 wait4() release_task(B) posix_cpu_timers_exit(B) cleanup_timerqueue() timerqueue_del() // use-after-free POSIX 타이머 정리를 de_thread() 직후로 옮겨, 이후의 실패 조건 중 어느 것도 태스크를 do_exit()로 이끌기 전에 수행되도록 합니다. [ tglx: 정리를 de_thread() 직후로 이동 ]
소스
- CVE-2026-98260익스플로잇
CVE-2026-98260(posix-cpu-timers UAF)에 대한 Android 커널 LPE 연구: 트리거 PoC, fake-cred 및 real-cred uid-0 셸 체인, 그리고 Shizuku/KernelSU 부트스트랩 앱.
책임 있는 사용
귀하가 소유하고 있거나 테스트할 권한이 있는 시스템에 대해서만 취약점 정보를 사용하십시오. Kitploit은 공개 연구 메타데이터에 연결되며 익스플로잇 코드나 악성 페이로드를 저장하지 않습니다.