🔍 CVE-2026-99238

7.8
CVSS Score
HIGH
2026-11-02
2026-11-03 20:18
✅ 완료

🇰🇷 한글 설명

Linux 커널에서 모듈 로드/언로드 시 trace_module_record() 함수가 trace_types_lock 없이 ftrace_trace_arrays 리스트를 순회합니다. 동시에 트레이싱 인스턴스가 rmdir로 삭제되면 해제된 trace_array에 접근할 수 있습니다. 해결을 위해 persistent 인스턴스의 모듈 업데이트 시 trace_types_lock을 획득하도록 수정되었습니다.

💡 쉬운 설명

리눅스 커널의 추적(tracing) 기능에서 두 작업이 동시에 일어날 때 이미 삭제된 메모리를 읽는 문제입니다. 이로 인해 시스템이 불안정해지거나 충돌할 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: tracing: Hold trace_types_lock when updating modules in persistent instances trace_module_record() walks ftrace_trace_arrays from the module notifier without trace_types_lock. A concurrent rmdir of an instance removes it from the list and frees it under that lock, so a module load or unload can walk into a freed trace_array.

📍 영향받는 시스템

커널 트레이싱 기능(ftrace)을 포함한 수정 이전의 Linux 커널 버전 (패치 적용 전 배포판 커널 전반)

⚔️ 공격 벡터

권한이 있는 로컬 사용자가 트레이싱 인스턴스 삭제(rmdir)와 커널 모듈 로드/언로드를 동시에 반복 실행하여 경쟁 조건(race condition)을 유발

🛡️ 대응 방법

배포판 제공 최신 커널 업데이트를 적용하거나, 수정이 포함된 Linux 커널 메인라인/안정 버전으로 업그레이드 후 재부팅

🔧 검증 코드

출력된 커널 버전을 배포판 보안 공지 또는 Linux 커널 Git 기록에서 CVE-2026-99238 수정 포함 여부로 확인하며, 수정 여부가 불확실하면 패키지 관리자(apt/dnf)로 최신 커널 업데이트 여부를 점검

Shell / Script
uname -r && grep -rl 'trace_types_lock' /usr/src/linux*/kernel/trace/trace.c 2>/dev/null | head -1

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

💻 영향받는 소프트웨어

Linux Kernel