🇰🇷 한글 설명
FFmpeg 8.1.3 이전 버전 및 9.0.2 이전 9.x 버전의 libavcodec/vorbisenc.c 내 put_vector() 함수에서, NaN 샘플로 인해 코드북 항목이 -1로 남을 때 범위를 벗어난 읽기 취약점이 존재합니다. 공격자는 NaN 부동소수점 샘플이 포함된 오디오를 Vorbis 인코더에 입력하여 애플리케이션 충돌을 유발하거나 인접 힙 메모리 정보를 출력으로 유출할 수 있습니다.
💡 쉬운 설명
FFmpeg은 동영상·음악 파일을 변환하는 프로그램입니다. 특수하게 조작된 오디오 파일을 처리하면 프로그램이 멈추거나 메모리 일부가 외부로 새어 나갈 수 있습니다.
🇺🇸 원문 (English)
FFmpeg before 8.1.3 and 9.x before 9.0.2 contains an out-of-bounds read vulnerability in put_vector() in libavcodec/vorbisenc.c when NaN samples leave the codebook entry at -1. Attackers can supply audio with NaN float samples to the native Vorbis encoder, causing heap reads before arrays that crash the application or leak adjacent heap memory into output.
📍 영향받는 시스템
FFmpeg 8.1.3 미만 및 9.0.0~9.0.1 버전을 사용하는 모든 시스템
⚔️ 공격 벡터
NaN 부동소수점 샘플이 포함된 악성 오디오 파일을 FFmpeg의 Vorbis 인코더로 처리하게 만드는 방식
🛡️ 대응 방법
FFmpeg을 8.1.3 이상 또는 9.0.2 이상으로 업데이트하십시오.
🔧 검증 코드
출력된 버전이 8.1.3 미만이거나 9.0.0~9.0.1이면 취약하며, 8.1.3 이상 또는 9.0.2 이상이면 패치된 버전입니다.
ffmpeg -version 2>/dev/null | head -n 1