🔍 CVE-2024-36943

7.3
CVSS Score
HIGH
2024-05-30
2026-08-04 11:18
✅ 완료

🇰🇷 한글 설명

리눅스 커널의 pagemap 스캔 과정에서 young/dirty 비트가 손실될 수 있는 취약점이 발견되었습니다. 기존의 ptep_get과 ptep_modify_prot_start 사이의 레이스 컨디션으로 인해 페이지 상태 정보가 유실될 수 있었으나, 원자적 연산을 사용하는 방식으로 수정되었습니다.

💡 쉬운 설명

컴퓨터 메모리의 상태를 기록하는 과정에서 데이터가 변경되는 찰나의 순간을 놓쳐 정보가 사라질 수 있는 문제입니다. 이로 인해 메모리 관리 시스템이 페이지의 상태를 정확히 파악하지 못할 위험이 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: fs/proc/task_mmu: fix loss of young/dirty bits during pagemap scan make_uffd_wp_pte() was previously doing: pte = ptep_get(ptep); ptep_modify_prot_start(ptep); pte = pte_mkuffd_wp(pte); ptep_modify_prot_commit(ptep, pte); But if another thread accessed or dirtied the pte between the first 2 calls, this could lead to loss of that information. Since ptep_modify_prot_start() gets and clears atomically, the following is the correct pattern and prevents any possible race. Any access after the first call would see an invalid pte and cause a fault: pte = ptep_modify_prot_start(ptep); pte = pte_mkuffd_wp(pte); ptep_modify_prot_commit(ptep, pte);

📍 영향받는 시스템

Linux kernel (pagemap scan 관련 기능이 포함된 버전)

⚔️ 공격 벡터

멀티스레드 환경에서 특정 시점에 페이지 테이블 엔트리(PTE)에 접근하여 레이스 컨디션을 유발하는 방식

🛡️ 대응 방법

리눅스 커널을 최신 보안 패치가 적용된 버전으로 업데이트하십시오.

🔧 검증 코드

출력된 커널 버전을 확인하여 해당 취약점이 해결된 패치 버전인지 확인하십시오.

Shell / Script
uname -r

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Linux Kernel