🔍 CVE-2024-27038

5.5
CVSS Score
MEDIUM
2024-05-01
2026-10-15 01:17
✅ 완료

🇰🇷 한글 설명

Linux 커널의 clk_core_get 함수에서 __clk_get_hw()가 반환한 NULL 포인터를 확인하지 않고 역참조하여 발생하는 NULL 포인터 역참조 취약점입니다. 특정 클록 조회 시나리오에서 시스템 충돌(DoS)을 유발할 수 있습니다.

💡 쉬운 설명

Linux 커널의 시간 관리 시스템에서 NULL 값을 제대로 처리하지 않아 시스템이 충돌할 수 있는 문제입니다. 로컬 사용자가 특정 상황을 만들면 시스템을 다운시킬 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: clk: Fix clk_core_get NULL dereference It is possible for clk_core_get to dereference a NULL in the following sequence: clk_core_get() of_clk_get_hw_from_clkspec() __of_clk_get_hw_from_provider() __clk_get_hw() __clk_get_hw() can return NULL which is dereferenced by clk_core_get() at hw->core. Prior to commit dde4eff47c82 ("clk: Look for parents with clkdev based clk_lookups") the check IS_ERR_OR_NULL() was performed which would have caught the NULL. Reading the description of this function it talks about returning NULL but that cannot be so at the moment. Update the function to check for hw before dereferencing it and return NULL if hw is NULL.

📍 영향받는 시스템

Linux 커널 commit dde4eff47c82 이후 버전 (5.10 이상의 대부분 버전)

⚔️ 공격 벡터

로컬 공격자가 clk_core_get 함수 호출 시나리오를 통해 NULL 포인터 역참조 트리거

🛡️ 대응 방법

Linux 커널 최신 버전으로 업데이트하여 NULL 포인터 확인 로직이 포함된 패치 적용

🔧 검증 코드

git 커밋 히스토리에서 해당 수정 사항이 있는지 확인하거나, 현재 커널 버전을 조회하여 취약 버전인지 확인합니다.

Shell / Script
git log --oneline $(git rev-parse --abbrev-ref HEAD) 2>/dev/null | grep -iE 'clk.*null|clk_core_get' || uname -r

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Linux Kernel