🇰🇷 한글 설명
리눅스 커널의 ALSA UMP 구성 요소에서 MIDI 1.0을 UMP 패킷으로 변환할 때 버퍼 오버플로우 취약점이 발견되었습니다. SysEx 메시지 처리 시 내부 버퍼 크기가 4바이트로 고정되어 있어, 최대 6바이트인 SysEx 메시지가 들어올 경우 메모리 오염이 발생할 수 있습니다.
💡 쉬운 설명
음악 장비 신호를 처리하는 과정에서 데이터를 담는 그릇이 실제 데이터보다 작아 발생하는 문제입니다. 잘못된 크기의 신호가 들어오면 컴퓨터의 메모리 영역을 침범하여 시스템 오류를 일으킬 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
ALSA: ump: Fix buffer overflow at UMP SysEx message conversion
The conversion function from MIDI 1.0 to UMP packet contains an
internal buffer to keep the incoming MIDI bytes, and its size is 4, as
it was supposed to be the max size for a MIDI1 UMP packet data.
However, the implementation overlooked that SysEx is handled in a
different format, and it can be up to 6 bytes, as found in
do_convert_to_ump(). It leads eventually to a buffer overflow, and
may corrupt the memory when a longer SysEx message is received.
The fix is simply to extend the buffer size to 6 to fit with the SysEx
UMP message.
📍 영향받는 시스템
Linux Kernel (ALSA UMP 관련 모듈 포함 버전)
⚔️ 공격 벡터
특수하게 조작된 긴 SysEx 메시지를 포함한 MIDI 신호를 전송하여 메모리 오염 유도
🛡️ 대응 방법
리눅스 커널을 최신 보안 패치가 적용된 버전으로 업데이트하여 버퍼 크기를 6바이트로 확장
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 수정된 패치 버전 이후인지 확인