FFmpeg versions 4.4 through 8.1.2 contain an out-of-bounds memory access vulnerability in the ADX audio decoder within libavcodec/adxdec.c that allows attackers to trigger both out-of-bounds reads and writes by supplying a crafted ADX or AAX audio file with a mid-stream channel layout change. When AV_PKT_DATA_NEW_EXTRADATA side data is received mid-stream, the adx_decode_frame function re-parses the stream header but fails to update the internal channel state, causing subsequent decoding operations to access the prev[] state array using a stale channel count.
{
"binaries": [
{
"binary_name": "libav-tools",
"binary_version": "6:9.20-0ubuntu0.14.04.1+esm1"
},
{
"binary_name": "libavcodec-extra",
"binary_version": "6:9.20-0ubuntu0.14.04.1+esm1"
},
{
"binary_name": "libavcodec-extra-54",
"binary_version": "6:9.20-0ubuntu0.14.04.1+esm1"
},
{
"binary_name": "libavcodec54",
"binary_version": "6:9.20-0ubuntu0.14.04.1+esm1"
},
{
"binary_name": "libavdevice-extra-53",
"binary_version": "6:9.20-0ubuntu0.14.04.1+esm1"
},
{
"binary_name": "libavdevice53",
"binary_version": "6:9.20-0ubuntu0.14.04.1+esm1"
},
{
"binary_name": "libavfilter-extra-3",
"binary_version": "6:9.20-0ubuntu0.14.04.1+esm1"
},
{
"binary_name": "libavfilter3",
"binary_version": "6:9.20-0ubuntu0.14.04.1+esm1"
},
{
"binary_name": "libavformat-extra-54",
"binary_version": "6:9.20-0ubuntu0.14.04.1+esm1"
},
{
"binary_name": "libavformat54",
"binary_version": "6:9.20-0ubuntu0.14.04.1+esm1"
},
{
"binary_name": "libavresample1",
"binary_version": "6:9.20-0ubuntu0.14.04.1+esm1"
},
{
"binary_name": "libavutil-extra-52",
"binary_version": "6:9.20-0ubuntu0.14.04.1+esm1"
},
{
"binary_name": "libavutil52",
"binary_version": "6:9.20-0ubuntu0.14.04.1+esm1"
},
{
"binary_name": "libswscale-extra-2",
"binary_version": "6:9.20-0ubuntu0.14.04.1+esm1"
},
{
"binary_name": "libswscale2",
"binary_version": "6:9.20-0ubuntu0.14.04.1+esm1"
}
]
}
{
"availability": "Available with Ubuntu Pro: https://ubuntu.com/pro",
"binaries": [
{
"binary_name": "ffmpeg",
"binary_version": "7:4.4.2-0ubuntu0.22.04.1+esm15"
},
{
"binary_name": "libavcodec-extra",
"binary_version": "7:4.4.2-0ubuntu0.22.04.1+esm15"
},
{
"binary_name": "libavcodec-extra58",
"binary_version": "7:4.4.2-0ubuntu0.22.04.1+esm15"
},
{
"binary_name": "libavcodec58",
"binary_version": "7:4.4.2-0ubuntu0.22.04.1+esm15"
},
{
"binary_name": "libavdevice58",
"binary_version": "7:4.4.2-0ubuntu0.22.04.1+esm15"
},
{
"binary_name": "libavfilter-extra",
"binary_version": "7:4.4.2-0ubuntu0.22.04.1+esm15"
},
{
"binary_name": "libavfilter-extra7",
"binary_version": "7:4.4.2-0ubuntu0.22.04.1+esm15"
},
{
"binary_name": "libavfilter7",
"binary_version": "7:4.4.2-0ubuntu0.22.04.1+esm15"
},
{
"binary_name": "libavformat-extra",
"binary_version": "7:4.4.2-0ubuntu0.22.04.1+esm15"
},
{
"binary_name": "libavformat-extra58",
"binary_version": "7:4.4.2-0ubuntu0.22.04.1+esm15"
},
{
"binary_name": "libavformat58",
"binary_version": "7:4.4.2-0ubuntu0.22.04.1+esm15"
},
{
"binary_name": "libavutil56",
"binary_version": "7:4.4.2-0ubuntu0.22.04.1+esm15"
},
{
"binary_name": "libpostproc55",
"binary_version": "7:4.4.2-0ubuntu0.22.04.1+esm15"
},
{
"binary_name": "libswresample3",
"binary_version": "7:4.4.2-0ubuntu0.22.04.1+esm15"
},
{
"binary_name": "libswscale5",
"binary_version": "7:4.4.2-0ubuntu0.22.04.1+esm15"
}
]
}
{
"availability": "Available with Ubuntu Pro: https://ubuntu.com/pro",
"binaries": [
{
"binary_name": "ffmpeg",
"binary_version": "7:6.1.1-3ubuntu5+esm13"
},
{
"binary_name": "libavcodec-extra",
"binary_version": "7:6.1.1-3ubuntu5+esm13"
},
{
"binary_name": "libavcodec-extra60",
"binary_version": "7:6.1.1-3ubuntu5+esm13"
},
{
"binary_name": "libavcodec60",
"binary_version": "7:6.1.1-3ubuntu5+esm13"
},
{
"binary_name": "libavdevice60",
"binary_version": "7:6.1.1-3ubuntu5+esm13"
},
{
"binary_name": "libavfilter-extra",
"binary_version": "7:6.1.1-3ubuntu5+esm13"
},
{
"binary_name": "libavfilter-extra9",
"binary_version": "7:6.1.1-3ubuntu5+esm13"
},
{
"binary_name": "libavfilter9",
"binary_version": "7:6.1.1-3ubuntu5+esm13"
},
{
"binary_name": "libavformat-extra",
"binary_version": "7:6.1.1-3ubuntu5+esm13"
},
{
"binary_name": "libavformat-extra60",
"binary_version": "7:6.1.1-3ubuntu5+esm13"
},
{
"binary_name": "libavformat60",
"binary_version": "7:6.1.1-3ubuntu5+esm13"
},
{
"binary_name": "libavutil58",
"binary_version": "7:6.1.1-3ubuntu5+esm13"
},
{
"binary_name": "libpostproc57",
"binary_version": "7:6.1.1-3ubuntu5+esm13"
},
{
"binary_name": "libswresample4",
"binary_version": "7:6.1.1-3ubuntu5+esm13"
},
{
"binary_name": "libswscale7",
"binary_version": "7:6.1.1-3ubuntu5+esm13"
}
]
}
{
"availability": "Available with Ubuntu Pro: https://ubuntu.com/pro",
"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"
}
]
}