🇰🇷 한글 설명
Linux 커널의 amd/display 드라이버에서 HDMI HDCP 2.x 리피터 인증 과정 중 버퍼 오버플로우 취약점이 발견되었습니다. 악의적인 HDMI 리피터가 버퍼 크기보다 큰 메시지 크기를 전달할 경우, rx_id_list 버퍼에 범위를 벗어난 쓰기 작업이 발생할 수 있습니다.
💡 쉬운 설명
HDMI 연결 장치가 컴퓨터에게 실제보다 더 많은 데이터를 보내겠다고 속여서 컴퓨터의 메모리 영역을 침범할 수 있는 문제입니다. 이를 통해 해커가 시스템을 조작하거나 오류를 일으킬 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
drm/amd/display: Clamp HDMI HDCP2 rx_id_list read to buffer size
[Why & How]
During HDCP 2.x repeater authentication over HDMI, the driver reads the
sink's RxStatus register and extracts a 10-bit message size field (max
value 1023). This value is used as the read length for the ReceiverID
list without being clamped to the size of the destination buffer
rx_id_list[177]. A malicious HDMI repeater could advertise a message
size larger than the buffer, causing an out-of-bounds write during the
I2C read.
Clamp the read length in mod_hdcp_read_rx_id_list() to the size of the
rx_id_list buffer, matching the approach already used in the DP branch.
(cherry picked from commit 229212219e4247d9486f8ba41ef087358490be09)
📍 영향받는 시스템
Linux kernel (drm/amd/display driver 사용 시스템)
⚔️ 공격 벡터
악의적으로 조작된 HDCP 2.x 메시지 크기를 전송하는 HDMI 리피터를 통한 I2C 읽기 공격
🛡️ 대응 방법
Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트하여 mod_hdcp_read_rx_id_list() 함수의 버퍼 크기 제한 로직을 적용해야 합니다.
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 해결된 패치 버전 이후인지 확인합니다.