🔍 CVE-2024-36959

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

🇰🇷 한글 설명

Linux 커널의 핀 컨트롤러 디바이스트리 처리 코드에서 메모리 참조 카운트 누수가 발생하는 취약점입니다. propname 버퍼 할당에 실패할 때 이미 획득한 참조 카운트가 제대로 해제되지 않아 메모리 누수로 이어집니다. pinctrl_dt_free_maps() 함수를 호출하여 참조 카운트를 정확히 제거하는 방식으로 수정됩니다.

💡 쉬운 설명

리눅스 커널의 핀 컨트롤러 코드에서 메모리 정리 과정이 누락되는 버그입니다. 특정 상황에서 할당된 메모리가 제대로 해제되지 않아 시간이 지남에 따라 메모리가 점점 차게 됩니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: pinctrl: devicetree: fix refcount leak in pinctrl_dt_to_map() If we fail to allocate propname buffer, we need to drop the reference count we just took. Because the pinctrl_dt_free_maps() includes the droping operation, here we call it directly.

📍 영향받는 시스템

Linux kernel (pinctrl subsystem이 포함된 모든 버전, 주로 4.x ~ 6.x LTS 커널)

⚔️ 공격 벡터

디바이스 트리 설정 오류 또는 로컬 사용자가 핀 컨트롤러 관련 작업 수행 시 반복 실행으로 인한 메모리 고갈

🛡️ 대응 방법

패치된 커널 업데이트 적용 또는 pinctrl_dt_to_map() 함수에서 실패 처리 시 pinctrl_dt_free_maps() 호출 추가

🔧 검증 코드

명령어 실행 후 pinctrl_dt_free_maps 관련 파일이 출력되면 패치가 적용된 상태입니다. 아무 출력이 없으면 검증 불가능하므로 kernel version 확인 후 보안 공지를 참고하세요.

Shell / Script
grep -r 'pinctrl_dt_free_maps' /lib/modules/$(uname -r)/kernel/drivers/pinctrl/ 2>/dev/null | head -1

📊 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