🇰🇷 한글 설명
Linux 커널의 USB 코어에서 SS endpoint companion 파싱 시 descriptor 길이 확인 전에 타입을 검사하여 버퍼 범위를 벗어난 읽기가 발생할 수 있습니다. 이를 수정하기 위해 descriptor 크기를 먼저 확인한 후 필드에 접근하도록 변경됩니다.
💡 쉬운 설명
USB 장치를 연결할 때 크기 검사를 제대로 하지 않아 메모리 범위 밖을 읽을 수 있는 문제입니다. 악의적인 USB 장치로 시스템 정보를 유출하거나 커널 패닉을 유발할 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
usb: core: config: Prevent OOB read in SS endpoint companion parsing
usb_parse_ss_endpoint_companion() checks descriptor type before length,
enabling a potentially odd read outside of the buffer size.
Fix this up by checking the size first before looking at any of the
fields in the descriptor.
📍 영향받는 시스템
Linux kernel (최근 버전들, 구체적 버전은 배포판별로 상이)
⚔️ 공격 벡터
악의적으로 조작된 USB descriptor를 가진 장치 연결
🛡️ 대응 방법
Linux 커널을 최신 패치 버전으로 업데이트
🔧 검증 코드
커널 버전이 6.15 이상이면 해당 취약점 패치가 포함되었을 가능성이 높으며, 정확한 상태는 배포판의 패치 버전 확인 필요
uname -r | awk -F. '{if ($1>6 || ($1==6 && $2>=15)) print "Patched"; else print "Check specific kernel patch level"}'