🇰🇷 한글 설명
Linux 커널의 cdns3 gadget 드라이버에서 ep_queue 호출 시 NULL 포인터 역참조가 발생하는 취약점입니다. 엔드포인트가 비활성화되었거나 구성되지 않은 상태에서 접근할 경우 커널 크래시가 발생할 수 있습니다. 이를 해결하기 위해 ep->desc가 NULL인 경우 -ESHUTDOWN를 반환하도록 수정되었습니다.
💡 쉬운 설명
컴퓨터의 USB 연결 기능을 담당하는 소프트웨어에서 준비되지 않은 상태로 명령을 내리면 시스템이 갑자기 멈추거나 꺼지는 오류가 발생할 수 있습니다. 이 문제는 명령을 내리기 전에 연결 상태를 미리 확인하도록 수정하여 해결되었습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
usb: cdns3: gadget: fix NULL pointer dereference in ep_queue
When the gadget endpoint is disabled or not yet configured, the ep->desc
pointer can be NULL. This leads to a NULL pointer dereference when
__cdns3_gadget_ep_queue() is called, causing a kernel crash.
Add a check to return -ESHUTDOWN if ep->desc is NULL, which is the
standard return code for unconfigured endpoints.
This prevents potential crashes when ep_queue is called on endpoints
that are not ready.
📍 영향받는 시스템
Linux kernel (cdns3 gadget driver 사용 시스템)
⚔️ 공격 벡터
구성되지 않은 USB 엔드포인트에 대해 ep_queue 함수를 호출하도록 유도하여 커널 크래시 유발
🛡️ 대응 방법
Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트
🔧 검증 코드
출력된 커널 버전이 취약점이 수정된 패치 버전 이후인지 확인