CVE-2026-31721
usb: gadget: f_hid: bind에서 alloc으로 리스트 및 스핀락 초기화 이동
- 게시됨
- 2026. 5. 1.
- 업데이트됨
- 2026. 5. 11.
- CNA 할당 중
- Linux
- 증거 관찰됨
- 2026. 8. 27.
기본 CVSS
nvd · CVSS 3.1
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H낮음 · 다음 30일
- 백분위수
- 2.7%
- 모델 날짜
- 2026. 9. 21.
EPSS는 통계적 추정치이지 확실성이나 영향의 척도가 아닙니다. 이를 CVSS, KEV 상태, 노출 및 환경과 결합하세요.
요약
Linux 커널에서 다음 취약점이 해결되었습니다: usb: gadget: f_hid: list 및 spinlock 초기화를 bind에서 alloc으로 이동 다음과 같은 작업을 수행할 때 문제가 있었습니다: - hid gadget을 설정하고 바인딩 - /dev/hidg0 열기 - 결과로 얻은 fd를 EPOLL_CTL_ADD에 사용 - UDC 언바인딩 - UDC 바인딩 - fd를 EPOLL_CTL_DEL에 사용 CONFIG_DEBUG_LIST가 활성화된 경우, remove_wait_queue(ep_remove_wait_queue를 통해) 내에서 list_del 손상이 보고되었습니다. 디버깅 후 f_hid가 poll_wait를 통해 등록하는 큐가 문제라는 것을 발견했습니다. 이 큐들은 hidg_bind 내부에서 init_waitqueue_head를 사용하여 초기화되었습니다. 즉, bind 함수는 큐에 항목이 아직 있는 상태에서 큐를 다시 초기화했습니다. 해결책은 초기화를 hidg_bind에서 hidg_alloc으로 이동하여 수명을 함수 인스턴스의 수명으로 연장하는 것입니다. 또한 bind 함수에서 문제가 될 수 있는 다른 초기화 호출도 발견하여 함께 이동했습니다.
소스
1세 가지 공개된 f_hid 수정 사항(CVE-2026-31721, CVE-2026-31606 포함)을 지원 종료(EOL)된 Linux 4.14.190 Android 벤더 커널에 백포트한 것으로, 기기 내 검증 기록을 포함합니다.
책임 있는 사용
귀하가 소유하고 있거나 테스트할 권한이 있는 시스템에 대해서만 취약점 정보를 사용하십시오. Kitploit은 공개 연구 메타데이터에 연결되며 익스플로잇 코드나 악성 페이로드를 저장하지 않습니다.