🇰🇷 한글 설명
FFmpeg 0.10부터 9.0.2까지의 버전에는 sunrast_decode_frame() 함수에서 초기화되지 않은 자원을 사용하는 취약점이 존재합니다. 이로 인해 잘린(truncated) 1비트 및 4비트 팔레트 Sun Raster 이미지를 디코딩할 때 힙 메모리가 유출될 수 있습니다. 공격자는 임시 비트맵이 정리되지 않은 상태로 PAL8 픽셀로 확장되도록 조작된 파일을 만들어 디코딩된 출력에 힙의 이전 내용(할당기 워드 등)이 노출되게 할 수 있습니다.
💡 쉬운 설명
FFmpeg이 손상된 특정 이미지 파일을 처리할 때 메모리에 남아 있던 이전 데이터가 출력 결과에 섞여 나올 수 있습니다. 공격자가 이를 악용하면 프로그램 메모리의 일부 정보가 외부로 노출될 수 있습니다.
🇺🇸 원문 (English)
FFmpeg 0.10 through 9.0.2 contains a use of uninitialized resource vulnerability in sunrast_decode_frame() that leaks heap memory when decoding truncated 1-bit and 4-bit paletted Sun Raster images. Attackers can craft a truncated Sun Raster file so the uncleared temporary bitmap is expanded into PAL8 pixels, exposing stale heap contents such as allocator words in decoded output.
📍 영향받는 시스템
FFmpeg 0.10 ~ 9.0.2 버전 (Linux, Windows, macOS 등 FFmpeg를 사용하는 모든 시스템)
⚔️ 공격 벡터
조작된(잘린) Sun Raster 이미지 파일을 FFmpeg로 디코딩하도록 유도하여 힙 메모리 내용을 출력으로 노출시킴
🛡️ 대응 방법
FFmpeg를 9.0.3 이상의 패치된 버전으로 업데이트하거나 배포판 보안 업데이트를 적용
🔧 검증 코드
출력된 버전 번호가 0.10 이상 9.0.2 이하이면 취약하며, 9.0.3 이상이면 패치된 버전입니다.
ffmpeg -version 2>/dev/null | head -n 1