CVE-2026-90386 in Linux
요약
\~에 의해 VulDB • 2026. 09. 19.
리눅스 커널에서 다음 취약점이 해결되었습니다:
i3c: dw - DAA가 장치를 할당하지 않을 때 범위 밖 시프트(shift-out-of-bounds) 방지
비어 있는 버스에서는 ENTDAA가 아무것도 할당하지 않으므로, cmd->rx_len(할당되지 않은 주소의 개수)은 master->maxdevs와 같습니다.
GENMASK() 인자(master->maxdevs - cmd->rx_len - 1)는 -1이 되며, 이는 UBSAN(Unsigned Integer Sanitizer)을 트리거합니다. 이 현상은 Gigabyte/AMD 서버에서 부팅 시마다 발생합니다:
UBSAN: shift-out-of-bounds in drivers/i3c/master/dw-i3c-master.c:905:12 shift exponent 64 is too large for 64-bit type 'long unsigned int' CPU: 7 UID: 0 PID: 963 Comm: (udev-worker) Not tainted 7.0.11-200.fc44.x86_64 #1 PREEMPT(lazy) Hardware name: Giga Computing E163-Z34-AAH1-000/MZ33-DC1-000, BIOS R32_F45 04/01/2026 Call Trace: <TASK> dump_stack_lvl+0x5d/0x80 ubsan_epilogue+0x5/0x2b __ubsan_handle_shift_out_of_bounds.cold+0xd7/0x1ab dw_i3c_master_daa.cold+0x1b/0x96 [dw-i3c-master]
i3c_master_do_daa_ext.part.0+0x3e/0xf0 [i3c]
새로운 장치가 할당되지 않은 경우 마스크를 건너뜁니다.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.