🇰🇷 한글 설명
Linux 커널의 s3c24xx I2C 드라이버에서 SMBUS 메시지의 크기를 검증하지 않아 발생하는 취약점입니다. SMBUS 메시지의 첫 번째 바이트인 크기 값이 허용된 범위(0..I2C_SMBUS_BLOCK_MAX) 내에 있는지 확인하는 로직이 누락되어 있습니다.
💡 쉬운 설명
기기 내부 부품끼리 데이터를 주고받을 때, 데이터의 크기가 비정상적으로 크더라도 이를 확인하지 않고 처리하는 문제입니다. 이로 인해 시스템이 오작동하거나 보안 문제가 발생할 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
i2c: s3c24xx: check the size of the SMBUS message before using it
The first byte of an i2c SMBUS message is the size, and it should be
verified to ensure that it is in the range of 0..I2C_SMBUS_BLOCK_MAX
before processing it.
This is the same logic that was added in commit a6e04f05ce0b ("i2c:
tegra: check msg length in SMBUS block read") to the i2c tegra driver.
📍 영향받는 시스템
s3c24xx I2C 드라이버를 사용하는 Linux 커널 기반 시스템
⚔️ 공격 벡터
조작된 SMBUS 메시지를 전송하여 커널 메모리 오버플로우 유도
🛡️ 대응 방법
커널 패치를 적용하여 SMBUS 메시지 크기 검증 로직을 업데이트
🔧 검증 코드
현재 실행 중인 커널 버전을 확인하여 해당 취약점이 해결된 패치 버전인지 확인