Версии FFmpeg от 3.0 до 9.0, но не включая 9.0, содержат уязвимость чтения неинициализированной кучи в собственном декодере RSCC (libavcodec/rscc.c), которая позволяет злоумышленникам раскрывать содержимое кучи, предоставляя созданный видеофайл со сжатым тайлом, который распаковывает меньше байтов, чем требует заявленная геометрия тайла. Когда rscc_decode_frame() вызывает av_image_copy_plane() без проверки количества распакованных байтов на соответствие размерам плитки, незаписанный суффикс постоянного промежуточного буфера ctx->inflated_buf копируется в декодированный кадр, потенциально раскрывая данные из предыдущих выделений кучи или предыдущих декодированных кадров в службах постоянного декодирования.
Показать оригинальное описание (EN)
FFmpeg versions from 3.0 up to, but not including, 9.0 contain an uninitialized heap memory read vulnerability in the native RSCC decoder (libavcodec/rscc.c) that allows attackers to disclose heap memory contents by supplying a crafted video file with a compressed tile that decompresses fewer bytes than the declared tile geometry requires. When rscc_decode_frame() calls av_image_copy_plane() without validating the decompressed byte count against the tile dimensions, the unwritten suffix of the persistent intermediate buffer ctx->inflated_buf is copied into the decoded frame, potentially exposing data from prior heap allocations or previous decoded frames in persistent decoding services.
Характеристики атаки
Последствия
Строка CVSS v4.0
Тип уязвимости (CWE)
Уязвимые продукты 1
| Конфигурация | От (включительно) | До (исключительно) |
|---|---|---|
|
Ffmpeg Ffmpeg
cpe:2.3:a:ffmpeg:ffmpeg:*:*:*:*:*:*:*:*
|
3.0
|
9.0
|