🇰🇷 한글 설명
Linux 커널의 ati_remote2 입력 드라이버에서 channel_mask 및 mode_mask 속성 핸들러가 usb_interface 장치를 usb_device로 잘못 해석하는 타입 혼동 문제가 수정되었습니다. 이로 인해 잘못된 usb_device 포인터가 사용되던 문제를 to_usb_interface()를 사용하도록 변경하여 해결했습니다.
💡 쉬운 설명
USB 리모컨 드라이버의 설정 항목을 읽거나 쓸 때 잘못된 종류의 장치 정보를 참조하던 버그입니다. 이번 패치로 올바른 장치 정보를 사용하도록 바로잡혔습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
Input: ati_remote2 - fix type confusion in device attribute handlers
Previously, the channel_mask and mode_mask attributes were registered on
the parent usb_device via sysfs_create_group(). When commit b20d6bf8014b
("Input: ati-remote2 - use driver core to instantiate device
attributes") converted the driver to let the driver core manage them via
dev_groups in struct usb_driver, the attributes moved to the bound
usb_interface devices, but the show and store callbacks were not updated
accordingly.
As a result, the callbacks still invoked to_usb_device() on a device
pointer belonging to a struct usb_interface, producing an invalid
usb_device pointer.
Use to_usb_interface() directly in the attribute handlers to obtain the
interface and its driver data.
📍 영향받는 시스템
ati_remote2 드라이버를 포함한 Linux 커널 (해당 커밋 b20d6bf8014b 이후 버전)
⚔️ 공격 벡터
물리적으로 USB 장치를 연결하거나 로컬 권한을 가진 사용자가 sysfs 속성에 접근하여 잘못된 포인터를 참조하게 만드는 방식 (구체적 공격 가능성은 명시되지 않음)
🛡️ 대응 방법
패치가 포함된 최신 Linux 커널 버전으로 업데이트하거나 배포판 보안 업데이트를 적용하세요.
🔧 검증 코드
출력된 커널 버전을 배포판의 보안 공지나 패치 적용 여부와 대조하여, 해당 수정이 포함된 커널인지 확인하세요.