🔍 CVE-2024-46759

7.8
CVSS Score
HIGH
2024-09-18
2026-10-15 01:18
✅ 완료

🇰🇷 한글 설명

Linux 커널의 hwmon adc128d818 드라이버에서 사용자가 입력한 큰 음수(-9223372036854775808)에 대해 DIV_ROUND_CLOSEST() 함수가 언더플로우를 발생시키는 취약점입니다. clamp_val()과 DIV_ROUND_CLOSEST() 연산의 순서를 변경하여 수정됩니다.

💡 쉬운 설명

하드웨어 모니터링 드라이버에서 매우 큰 음수를 입력받을 때 계산 오류가 발생하는 버그입니다. 로컬 접근 권한이 있는 사용자가 악의적인 값을 입력하여 시스템 안정성을 해칠 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: hwmon: (adc128d818) Fix underflows seen when writing limit attributes DIV_ROUND_CLOSEST() after kstrtol() results in an underflow if a large negative number such as -9223372036854775808 is provided by the user. Fix it by reordering clamp_val() and DIV_ROUND_CLOSEST() operations.

📍 영향받는 시스템

Linux kernel (adc128d818 드라이버 사용 시스템) - 수정 이전 버전

⚔️ 공격 벡터

로컬 사용자가 hwmon 제한 속성(/sys/class/hwmon)에 극단적인 음수값을 쓰기 권한으로 입력

🛡️ 대응 방법

Linux 커널을 최신 버전으로 업데이트하여 DIV_ROUND_CLOSEST() 및 clamp_val() 순서 변경 패치 적용

🔧 검증 코드

adc128d818 드라이버가 시스템에 로드되어 있으면 'adc128d818' 출력이 표시되며, 해당 시스템이 취약점에 영향을 받을 수 있습니다

Shell / Script
cat /sys/class/hwmon/hwmon*/name 2>/dev/null | grep -i adc128

📊 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