CVE-2026-98201 in Linux
요약
\~에 의해 VulDB • 2026. 10. 06.
Linux 커널에서 다음 취약점이 해결되었습니다:
Input: 호환성 복사 전 input_ff_effect_from_user 내의 ff_effect 영속화(Zeroing)
호환성 경로(input_compat path)에서 `input_ff_effect_from_user()`는 호출자의 네이티브 `struct ff_effect` 구조체를 더 작은 `struct ff_effect_compat` 구조체로 별칭(aliasing) 처리하고, 호환성 크기의 접두사(prefix)만 복사합니다:
compat_effect = (struct ff_effect_compat *)effect;
if (copy_from_user(compat_effect, buffer, sizeof(struct ff_effect_compat)))
네이티브 구조체의 꼬리 부분(tail)은 결코 쓰여지지 않습니다. 호출자는 초기화되지 않은 스택 객체를 전달합니다(예: EVIOCSFF에 대한 evdev_do_ioctl()). 따라서 해당 바이트들은 이전의 스택 내용을 그대로 유지하게 됩니다. 이후 `input_ff_upload()`는 전체 네이티브 구조체를 `ff->effects[id]`에 저장하며, 여기서 UI_BEGIN_FF_UPLOAD를 통해 uinput 기반 force feedback 데몬이 이를 다시 읽을 수 있게 되어 사용자 공간(userspace)으로 커널 스택 메모리가 유출됩니다.
호환성 복사 전에 effect(효과 데이터)를 영속화(Zerofy)하십시오.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.