🇰🇷 한글 설명
리눅스 커널의 drm/amdkfd 드라이버에서 비트 이동 연산 시 발생할 수 있는 정의되지 않은 동작(Undefined Behavior) 취약점입니다. SDMA 큐의 개수가 0일 경우, 피연산자의 비트 수만큼 시프트 연산을 수행하여 UBSAN 경고 및 잠재적인 시스템 불안정을 초래할 수 있습니다.
💡 쉬운 설명
컴퓨터가 숫자를 계산할 때 정해진 범위를 벗어난 방식으로 비트를 옮기려고 시도하여 발생하는 오류입니다. 이로 인해 시스템이 예상치 못한 동작을 하거나 불안정해질 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
drm/amdkfd: Fix UBSAN shift-out-of-bounds warning
If get_num_sdma_queues or get_num_xgmi_sdma_queues is 0, we end up
doing a shift operation where the number of bits shifted equals
number of bits in the operand. This behaviour is undefined.
Set num_sdma_queues or num_xgmi_sdma_queues to ULLONG_MAX, if the
count is >= number of bits in the operand.
Bug: https://gitlab.freedesktop.org/drm/amd/-/issues/1472
📍 영향받는 시스템
AMD GPU 드라이버(amdkfd)를 사용하는 리눅스 커널 버전
⚔️ 공격 벡터
특정 하드웨어 설정이나 드라이버 호출을 통해 비트 시프트 연산 오류를 유도하는 방식
🛡️ 대응 방법
리눅스 커널을 최신 보안 패치가 적용된 버전으로 업데이트하십시오.
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 수정된 패치 버전 이후인지 확인하십시오.