🔍 CVE-2024-26878

4.7
CVSS Score
MEDIUM
2024-04-17
2026-10-15 01:17
✅ 완료

🇰🇷 한글 설명

Linux 커널 quota 시스템에서 dquot_free_inode와 quota_off 함수 간의 race condition으로 인해 NULL pointer dereference가 발생합니다. inode의 quota 포인터를 확인한 후 NULL로 설정되는 사이에 사용될 때 커널 패닉이 유발됩니다.

💡 쉬운 설명

두 개의 프로세스가 동시에 파일의 디스크 할당량 정보에 접근할 때, 한 프로세스가 정보를 확인했지만 실제 사용하기 전에 다른 프로세스가 그것을 삭제해버려서 충돌합니다. 이로 인해 시스템이 먹통이 될 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: quota: Fix potential NULL pointer dereference Below race may cause NULL pointer dereference P1 P2 dquot_free_inode quota_off drop_dquot_ref remove_dquot_ref dquots = i_dquot(inode) dquots = i_dquot(inode) srcu_read_lock dquots[cnt]) != NULL (1) dquots[type] = NULL (2) spin_lock(&dquots[cnt]->dq_dqb_lock) (3) .... If dquot_free_inode(or other routines) checks inode's quota pointers (1) before quota_off sets it to NULL(2) and use it (3) after that, NULL pointer dereference will be triggered. So let's fix it by using a temporary pointer to avoid this issue.

📍 영향받는 시스템

Linux 커널 (quota 메커니즘이 활성화된 모든 버전)

⚔️ 공격 벡터

로컬 공격자가 동시에 여러 파일 작업(inode 할당 해제)과 quota 시스템 비활성화를 트리거하여 커널 패닉 유발

🛡️ 대응 방법

Linux 커널 최신 버전으로 업데이트하거나 race condition 패치 적용

🔧 검증 코드

커널 버전과 quota 마운트 여부를 확인합니다. quota가 활성화되어 있고 취약한 커널 버전이면 영향을 받습니다.

Shell / Script
uname -r && grep -i quota /proc/mounts | head -1

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Linux Kernel