🇰🇷 한글 설명
Linux 커널의 DAMON 모듈 내 lru_sort 기능에서 사용자 설정 매개변수를 검증하지 않아 발생하는 0으로 나누기(divide-by-zero) 취약점입니다. sample_interval 값이 0으로 설정될 경우 계산 과정에서 오류가 발생할 수 있으며, 패치를 통해 이를 방지합니다.
💡 쉬운 설명
컴퓨터가 계산을 할 때 어떤 숫자를 0으로 나누면 시스템이 멈추거나 오류가 날 수 있는데, 이 취약점은 사용자가 잘못된 값을 입력했을 때 이를 걸러내지 못해 발생합니다. 이를 해결하기 위해 입력값이 0인지 확인하는 안전장치를 추가했습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
mm/damon/lru_sort: avoid divide-by-zero in damon_lru_sort_apply_parameters()
Patch series "mm/damon: avoid divide-by-zero in DAMON module's parameters
application".
DAMON's RECLAIM and LRU_SORT modules perform no validation on
user-configured parameters during application, which may lead to
division-by-zero errors.
Avoid the divide-by-zero by adding validation checks when DAMON modules
attempt to apply the parameters.
This patch (of 2):
During the calculation of 'hot_thres' and 'cold_thres', either
'sample_interval' or 'aggr_interval' is used as the divisor, which may
lead to division-by-zero errors. Fix it by directly returning -EINVAL
when such a case occurs. Additionally, since 'aggr_interval' is already
required to be set no smaller than 'sample_interval' in damon_set_attrs(),
only the case where 'sample_interval' is zero needs to be checked.
📍 영향받는 시스템
DAMON 모듈이 포함된 Linux 커널 버전
⚔️ 공격 벡터
사용자가 DAMON 모듈의 매개변수(sample_interval)를 0으로 설정하여 시스템 오류 유도
🛡️ 대응 방법
DAMON 모듈의 매개변수 검증 로직이 포함된 최신 Linux 커널로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 해결된 패치 버전 이후인지 확인