🔍 CVE-2026-43356

5.5
CVSS Score
MEDIUM
2026-05-08
2026-05-15 16:02
✅ 완료

🇰🇷 한글 설명

Linux 커널의 ADIS IMU 드라이버에서 adis_init() 함수가 adis->ops 포인터를 먼저 NULL 확인 없이 역참조하는 취약점. adis16480, adis16490, adis16545 등 여러 드라이버가 영향받으며, 드라이버 로드 시 NULL 포인터 역참조 오류로 인한 커널 패닉 유발. 로컬 공격자가 드라이버를 강제 로드하면 서비스 거부(DoS) 가능.

💡 쉬운 설명

Linux 센서 드라이버가 메모리 접근 전 필수 확인을 건너뛰는 버그입니다. 드라이버 로드 시 시스템이 멈출 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: iio: imu: adis: Fix NULL pointer dereference in adis_init The adis_init() function dereferences adis->ops to check if the individual function pointers (write, read, reset) are NULL, but does not first check if adis->ops itself is NULL. Drivers like adis16480, adis16490, adis16545 and others do not set custom ops and rely on adis_init() assigning the defaults. Since struct adis is zero-initialized by devm_iio_device_alloc(), adis->ops is NULL when adis_init() is called, causing a NULL pointer dereference: Unable to handle kernel NULL pointer dereference at virtual address 0000000000000000 pc : adis_init+0xc0/0x118 Call trace: adis_init+0xc0/0x118 adis16480_probe+0xe0/0x670 Fix this by checking if adis->ops is NULL before dereferencing it, falling through to assign the default ops in that case.

📍 영향받는 시스템

Linux kernel 2.6.38+ (ADIS IMU drivers: adis16480, adis16490, adis16545, adis16477 등)

⚔️ 공격 벡터

로컬 권한 필요, 드라이버 로드 시 NULL pointer dereference 유발

🛡️ 대응 방법

Linux 커널을 최신 버전으로 업데이트하여 adis_init() 함수의 NULL 체크 추가 적용

🔧 검증 코드

커널 버전을 확인하고 업스트림 CVE 패치 적용 여부 확인. 취약한 버전은 adis->ops에 대한 NULL 체크가 없음.

Shell / Script
grep -E 'if.*adis->ops' /lib/modules/$(uname -r)/kernel/drivers/iio/imu/adis*.o 2>/dev/null || echo 'Check kernel version with: uname -r'

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H

💻 영향받는 소프트웨어

Linux Kernel