🇰🇷 한글 설명
FFmpeg 9.0.2 이하 버전의 libavcodec/mjpegdec.c에 use-after-free 취약점이 존재합니다. 공격자가 SOI 없이 SOF 마커를 포함한 조작된 MJPEG 스트림을 보내면 해제된 raw_image_buffer 포인터가 NVDEC 등 하드웨어 가속 디코더에 전달되어 애플리케이션 충돌이나 힙 메모리 내용 유출이 발생할 수 있습니다.
💡 쉬운 설명
FFmpeg은 영상 파일을 재생하거나 변환하는 프로그램입니다. 악의적으로 조작된 JPEG 기반 영상을 열면 프로그램이 멈추거나 메모리의 일부 정보가 새어 나갈 수 있습니다.
🇺🇸 원문 (English)
FFmpeg through 9.0.2 contains a use after free vulnerability in libavcodec/mjpegdec.c that allows attackers to trigger freed buffer reads by sending a SOF marker without a preceding SOI. Attackers can supply crafted MJPEG streams causing ff_mjpeg_decode_sof() to pass a stale raw_image_buffer pointer to hwaccel decoders like NVDEC, crashing applications or leaking heap contents.
📍 영향받는 시스템
FFmpeg 9.0.2 이하 버전 (libavcodec 포함, 하드웨어 가속 NVDEC 사용 환경)
⚔️ 공격 벡터
조작된 MJPEG 스트림 또는 파일을 FFmpeg로 디코딩하도록 유도하여 SOI 없이 SOF 마커를 전달
🛡️ 대응 방법
FFmpeg를 9.0.3 이상 등 취약점이 수정된 최신 버전으로 업데이트하고 신뢰할 수 없는 MJPEG 입력 처리를 제한
🔧 검증 코드
출력된 버전 번호가 9.0.2 이하이면 취약 가능성이 있으므로 패키지 관리자 또는 공식 배포본으로 업데이트가 필요하며, 명령이 실패하면 FFmpeg가 설치되어 있지 않은 것입니다.
ffmpeg -version 2>/dev/null | head -n 1