FFmpeg 7.0 through 8.1.2, fixed in commit 4da9812, contains a heap out-of-bounds write vulnerability in the vf_quirc filter that allows an attacker to corrupt heap memory by supplying a crafted PGS/SUP subtitle file with mismatched frame dimensions. Attackers can provide a subtitle file whose second presentation has larger dimensions than its first, causing av_image_copy_plane() to copy data exceeding the initial allocation size into the undersized libquirc grayscale image buffer, resulting in heap corruption and process crash with potential for code execution.
{
"binaries": [
{
"binary_name": "ffmpeg",
"binary_version": "7:8.0.1-3ubuntu2+esm4"
},
{
"binary_name": "libavcodec-extra",
"binary_version": "7:8.0.1-3ubuntu2+esm4"
},
{
"binary_name": "libavcodec-extra62",
"binary_version": "7:8.0.1-3ubuntu2+esm4"
},
{
"binary_name": "libavcodec62",
"binary_version": "7:8.0.1-3ubuntu2+esm4"
},
{
"binary_name": "libavdevice62",
"binary_version": "7:8.0.1-3ubuntu2+esm4"
},
{
"binary_name": "libavfilter-extra",
"binary_version": "7:8.0.1-3ubuntu2+esm4"
},
{
"binary_name": "libavfilter-extra11",
"binary_version": "7:8.0.1-3ubuntu2+esm4"
},
{
"binary_name": "libavfilter11",
"binary_version": "7:8.0.1-3ubuntu2+esm4"
},
{
"binary_name": "libavformat-extra",
"binary_version": "7:8.0.1-3ubuntu2+esm4"
},
{
"binary_name": "libavformat-extra62",
"binary_version": "7:8.0.1-3ubuntu2+esm4"
},
{
"binary_name": "libavformat62",
"binary_version": "7:8.0.1-3ubuntu2+esm4"
},
{
"binary_name": "libavutil60",
"binary_version": "7:8.0.1-3ubuntu2+esm4"
},
{
"binary_name": "libswresample6",
"binary_version": "7:8.0.1-3ubuntu2+esm4"
},
{
"binary_name": "libswscale9",
"binary_version": "7:8.0.1-3ubuntu2+esm4"
}
]
}