🇰🇷 한글 설명
Linux 커널의 iio: adc: mt6359 드라이버 내 mt6358_read_imp 함수에서 regmap_read의 반환 값을 확인하지 않는 취약점이 발견되었습니다. 이로 인해 읽기 작업 실패 시 초기화되지 않은 스택 변수 val_v의 임의 값이 측정 결과로 보고되어 스택 데이터가 유출될 수 있습니다.
💡 쉬운 설명
하드웨어 값을 읽어오는 과정에서 오류가 발생했을 때, 원래 값 대신 컴퓨터 메모리에 남아있던 쓰레기 값이 출력되는 문제입니다. 이 과정에서 중요한 정보가 외부로 새 나갈 위험이 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
iio: adc: mt6359: fix unchecked return value in mt6358_read_imp
In mt6358_read_imp(), the variable val_v is passed to regmap_read()
but the return value is not checked. If the read fails, val_v remains
uninitialized and its random stack content is subsequently reported
as a measurement result.
Initialize val_v to zero to ensure a predictable value is reported
in case of bus failure and to prevent potential stack data leakage.
This also satisfies static analyzers that might otherwise flag the
variable as used uninitialized.
📍 영향받는 시스템
Linux kernel (mt6359/mt6358 ADC driver 포함 버전)
⚔️ 공격 벡터
하드웨어 버스 오류를 유도하여 초기화되지 않은 스택 메모리 값을 읽어내는 방식
🛡️ 대응 방법
커널 패치를 적용하여 mt6358_read_imp 함수 내 val_v 변수를 0으로 초기화해야 함
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 수정된 패치 버전인지 확인