🇰🇷 한글 설명
Linux 커널의 mma8452 가속도계 드라이버에서 I2C 읽기 오류 발생 시 이를 적절히 처리하지 못하는 취약점이 발견되었습니다. I2C 읽기 실패에도 불구하고 함수가 0을 반환하여, 호출자가 읽기 작업이 성공한 것으로 오해하고 초기화되지 않은 스택 메모리를 사용하게 됩니다.
💡 쉬운 설명
가속도 센서에서 데이터를 읽어올 때 오류가 발생해도 시스템이 이를 정상으로 착각하는 문제입니다. 이로 인해 컴퓨터 메모리에 남아있던 알 수 없는 데이터가 잘못 사용될 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
iio: accel: mma8452: handle I2C read error(s) in mma8452_read()
Currently, If i2c_smbus_read_i2c_block_data() fails but
mma8452_set_runtime_pm_state() succeeds, mma8452_read() returns 0.
As a result, the caller mma8452_read_raw() assumes the read was
successful and proceeds to use a buffer containing uninitialized
stack memory.
Add proper checking of the I2C read return value and propagate errors
to the caller.
📍 영향받는 시스템
Linux kernel (mma8452 driver component)
⚔️ 공격 벡터
I2C 통신 오류를 유도하여 초기화되지 않은 스택 메모리 값을 읽도록 유도하는 로컬 공격
🛡️ 대응 방법
I2C 읽기 반환 값을 확인하고 오류를 호출자에게 전달하도록 커널 패치를 적용하십시오.
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 수정된 패치 버전인지 배포판 보안 공지를 통해 확인하십시오.