🇰🇷 한글 설명
FFmpeg 9.0.2 이하 버전의 libavcodec/nvdec.c에서 ff_nvdec_start_frame() 함수가 슬라이스 오류 발생 후 ctx->bitstream을 초기화하지 않아 use-after-free 취약점이 존재합니다. 악의적으로 조작된 영상을 통해 공격자는 cuvidDecodePicture() 호출 시 해제된 힙 메모리를 읽게 만들 수 있습니다. 이로 인해 애플리케이션이 충돌하거나 이전 힙 내용이 노출될 수 있습니다.
💡 쉬운 설명
FFmpeg은 영상을 재생하거나 변환할 때 쓰이는 프로그램입니다. 이 취약점은 특별히 조작된 영상 파일을 열면 프로그램이 이미 지워진 메모리를 잘못 읽어 멈추거나 민감한 정보가 노출될 수 있는 문제입니다.
🇺🇸 원문 (English)
FFmpeg through 9.0.2 contains a use-after-free vulnerability in libavcodec/nvdec.c because ff_nvdec_start_frame() fails to reset ctx->bitstream after slice errors. Attackers can supply crafted video that abandons a picture before end_frame, causing cuvidDecodePicture() to read freed heap memory, crashing applications or exposing stale heap contents.
📍 영향받는 시스템
FFmpeg 9.0.2 이하 버전 중 NVDEC(NVIDIA 하드웨어 디코딩)를 사용하는 환경
⚔️ 공격 벡터
공격자가 조작된 비디오 파일을 만들어 사용자가 FFmpeg 기반 프로그램으로 재생하거나 변환하도록 유도
🛡️ 대응 방법
FFmpeg을 9.0.3 이상 등 패치된 최신 버전으로 업데이트하고, 신뢰할 수 없는 출처의 영상 처리를 피하십시오.
🔧 검증 코드
출력된 버전이 9.0.2 이하이면 취약 가능성이 있으므로 패치 여부와 배포판 보안 공지를 확인해야 하며, 명령이 없거나 버전이 더 높으면 영향이 없습니다.
ffmpeg -version 2>/dev/null | head -n 1