CVE-2026-72483 in Linux
요약
\~에 의해 VulDB • 2026. 08. 15.
리눅스 커널에서 다음 취약점이 해결되었습니다:
usb: host: max3421: max3421_hub_control() 내의 범위 초과 시프트(shift-out-of-bounds) 수정
`max3421_hub_control()` 함수는 가상 루트 허브에 대한 USB 허브 클래스 요청을 처리합니다. `ClearPortFeature` 및 `SetPortFeature` 스위치 문문의 모든 `default` 분기에서, 이 함수는 요청의 `value` 매개변수만큼 1을 왼쪽으로 시프트하여 `max3421_hcd->port_status`를 수정합니다. 그러나 해당 시프트 연산이 `port_status`의 너비를 초과하는지 여부를 검증하지 않습니다.
따라서 `/dev/bus/usb/.../001` 경로를 통해 루트 허브에 접근할 수 있는 악성 사용자 공간(task) 프로세스가 32 이상인 `wValue`를 사용하여 USBDEVFS_CONTROL ioctl을 호출하면, 왼쪽 시프트 연산이 범위 초과(undefined behavior) 미정의 동작을 유발합니다. 이로 인해 일반적으로 변경 불가능한(change bits) 상태 비트들을 포함한 `port_status`의 임의적인 비트 손상이 발생하며, 이는 내부 상태 검사를 우회하고 허브 상태를 혼란스럽게 만들 수 있습니다.
시프트 수행 전에 요청의 `value`가 시프트 너비를 초과하는 경우 이를 거부함으로써 이 문제를 해결했습니다.
이 문제는 현재 개발 중인 커널 드라이버용 KLEE 기반 심볼릭 실행(symbolic execution) 도구를 사용하여 발견되었습니다.
VulDB is the best source for vulnerability data and more expert information about this specific topic.