Heap-based buffer overflow in FFmpeg - CVE-2024-7055

 

Heap-based buffer overflow in FFmpeg - CVE-2024-7055

Published: August 8, 2024


Vulnerability identifier: #VU95532
CSH Severity: High
CVSS v4 BT: 6.1 [CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:U/U:Amber]
CVE-ID: CVE-2024-7055
CWE-ID: CWE-122
Exploitation vector: Remote access
Exploit availability: No public exploit available

Vulnerability details

The vulnerability allows a remote attacker to execute arbitrary code on the target system.

The vulnerability exists due to a boundary error within the the pnm_decode_frame() function in /libavcodec/pnmdec.c. A remote attacker can trick the victim to open a specially crafted file, trigger a use-after-free error and execute arbitrary code on the system.


Affected software

FFmpeg
Debian Linux
SUSE Linux Enterprise High Performance Computing 15
SUSE Linux Enterprise Server for SAP Applications 15
SUSE Linux Enterprise High Performance Computing ESPOS 15
SUSE Linux Enterprise Server 15
SUSE Linux Enterprise High Performance Computing LTSS 15
SUSE Linux Enterprise Workstation Extension 15
SUSE Linux Enterprise Desktop 15
SUSE Linux Enterprise Real Time 15
SUSE Linux Enterprise Micro
Fedora
Slackware Linux
SUSE Linux Enterprise Desktop 15 SP4 LTSS
SUSE Linux Enterprise Server 15 SP4 LTSS
SUSE Package Hub 15
openSUSE Leap
Ubuntu
openEuler
ffmpeg (Ubuntu package)
ffmpeg
ffmpeg-4-libavformat-devel
libswresample3_9-32bit
libavdevice58_13-debuginfo
ffmpeg-4-libswresample-devel
ffmpeg-4-libpostproc-devel
libavcodec58_134-debuginfo
libavresample4_0
libswresample3_9
ffmpeg-4-libavutil-devel
ffmpeg-4-libavresample-devel
libavfilter7_110-debuginfo
libpostproc55_9
ffmpeg-4-libavdevice-devel
libswresample3_9-debuginfo
libavresample4_0-debuginfo
libavresample4_0-32bit
libavformat58_76-32bit
ffmpeg-4
libavformat58_76
ffmpeg-4-libswscale-devel
libavdevice58_13
libavutil56_70-debuginfo
libpostproc55_9-debuginfo
ffmpeg-4-private-devel
libavformat58_76-debuginfo
libavfilter7_110
libavutil56_70
ffmpeg-4-debuginfo
libswscale5_9
libavcodec58_134
libswscale5_9-debuginfo
ffmpeg-4-debugsource
ffmpeg-4-libavfilter-devel
ffmpeg-4-libavcodec-devel
libpostproc55_9-64bit-debuginfo
libavdevice58_13-64bit-debuginfo
libavutil56_70-64bit-debuginfo
libavdevice58_13-64bit
libavfilter7_110-64bit
libavfilter7_110-64bit-debuginfo
libavcodec58_134-64bit-debuginfo
libpostproc55_9-64bit
libavcodec58_134-64bit
libavfilter7_110-32bit-debuginfo
libavresample4_0-64bit-debuginfo
libswresample3_9-64bit-debuginfo
libavformat58_76-64bit
libavformat58_76-64bit-debuginfo
libswscale5_9-64bit
libavresample4_0-64bit
libavutil56_70-64bit
libswresample3_9-64bit
libpostproc55_9-32bit
libswresample3_9-32bit-debuginfo
libpostproc55_9-32bit-debuginfo
libswscale5_9-32bit
libswscale5_9-32bit-debuginfo
libavresample4_0-32bit-debuginfo
libavutil56_70-32bit-debuginfo
libavformat58_76-32bit-debuginfo
libavutil56_70-32bit
libavdevice58_13-32bit-debuginfo
libavdevice58_13-32bit
libavfilter7_110-32bit
libavcodec58_134-32bit-debuginfo
libavcodec58_134-32bit
libswscale5_9-64bit-debuginfo
ffmpeg (Debian package)
ffmpeg-libs
ffmpeg-debuginfo
ffmpeg-debugsource
ffmpeg-devel
libavdevice
chromium

How to mitigate CVE-2024-7055

Install update from vendor's website.

FFmpeg - update to 7.0.2
ffmpeg (Ubuntu package) - addressed in versions 7:2.8.17-0ubuntu0.1+esm12, 7:3.4.11-0ubuntu0.1+esm10, 7:4.2.7-0ubuntu0.1+esm10, 7:4.4.2-0ubuntu0.22.04.1+esm9, 7:6.1.1-3ubuntu5+esm5
ffmpeg - update to 4.4.5
ffmpeg-4-libavformat-devel - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libswresample3_9-32bit - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavdevice58_13-debuginfo - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
ffmpeg-4-libswresample-devel - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
ffmpeg-4-libpostproc-devel - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavcodec58_134-debuginfo - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavresample4_0 - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libswresample3_9 - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
ffmpeg-4-libavutil-devel - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
ffmpeg-4-libavresample-devel - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavfilter7_110-debuginfo - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libpostproc55_9 - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
ffmpeg-4-libavdevice-devel - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libswresample3_9-debuginfo - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavresample4_0-debuginfo - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavresample4_0-32bit - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavformat58_76-32bit - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
ffmpeg-4 - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavformat58_76 - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
ffmpeg-4-libswscale-devel - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavdevice58_13 - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavutil56_70-debuginfo - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libpostproc55_9-debuginfo - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
ffmpeg-4-private-devel - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavformat58_76-debuginfo - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavfilter7_110 - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavutil56_70 - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
ffmpeg-4-debuginfo - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libswscale5_9 - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavcodec58_134 - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libswscale5_9-debuginfo - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
ffmpeg-4-debugsource - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
ffmpeg-4-libavfilter-devel - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
ffmpeg-4-libavcodec-devel - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libpostproc55_9-64bit-debuginfo - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavdevice58_13-64bit-debuginfo - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavutil56_70-64bit-debuginfo - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavdevice58_13-64bit - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavfilter7_110-64bit - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavfilter7_110-64bit-debuginfo - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavcodec58_134-64bit-debuginfo - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libpostproc55_9-64bit - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavcodec58_134-64bit - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavfilter7_110-32bit-debuginfo - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavresample4_0-64bit-debuginfo - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libswresample3_9-64bit-debuginfo - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavformat58_76-64bit - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavformat58_76-64bit-debuginfo - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libswscale5_9-64bit - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavresample4_0-64bit - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavutil56_70-64bit - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libswresample3_9-64bit - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libpostproc55_9-32bit - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libswresample3_9-32bit-debuginfo - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libpostproc55_9-32bit-debuginfo - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libswscale5_9-32bit - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libswscale5_9-32bit-debuginfo - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavresample4_0-32bit-debuginfo - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavutil56_70-32bit-debuginfo - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavformat58_76-32bit-debuginfo - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavutil56_70-32bit - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavdevice58_13-32bit-debuginfo - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavdevice58_13-32bit - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavfilter7_110-32bit - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavcodec58_134-32bit-debuginfo - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libavcodec58_134-32bit - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
libswscale5_9-64bit-debuginfo - addressed in versions 4.4-150400.3.42.1, 4.4-150600.13.13.1
ffmpeg (Debian package) - update to 7:5.1.6-0+deb12u1
ffmpeg-libs - update to 6.1.1-13
ffmpeg - update to 6.1.1-13
ffmpeg-debuginfo - update to 6.1.1-13
ffmpeg-debugsource - update to 6.1.1-13
ffmpeg-devel - update to 6.1.1-13
libavdevice - update to 6.1.1-13
chromium - addressed in versions 127.0.6533.99-1.el8, 127.0.6533.99-1.el9, 127.0.6533.99-1.fc39, 127.0.6533.99-1.fc40

External References

Related Security Bulletins