CVE-2023-51796
Low · 3.6CVSS
3.6
EPSS
0.2%
Published
Apr 19, 2024
CISA due date
—
Cloudanix analysis
A bug in widely used video software lets someone already logged into the computer run their own programs using the same access the software has.
- Exploitation
- Local Privilege
- Attacker needs
- Low Privilege
- Complexity
- High
- Impact
- Full Compromise
- Component
- Library
- Class
- Buffer Overflow
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Buffer overflow in areverse_request_frame at libavfilter/f_reverse.c:269 allows local attackers to overwrite memory and execute arbitrary code with the privileges of the FFmpeg process.
Why it matters to the business
Local compromise of media-processing systems may expose processed files and allow code execution on workstations or servers that handle video or audio content, though low exploitability limits widespread risk.
How an attack unfolds
An authenticated local user supplies a specially crafted input that reaches the reverse filter, triggers the overflow during frame request handling, and gains code execution without network access or elevated privileges.
How to fix it
Upgrade FFmpeg to a patched release that corrects the overflow in f_reverse.c; if immediate upgrade is not feasible, avoid use of the reverse filter on untrusted inputs and compile with modern memory-safety options such as ASAN or hardened allocators.
How to confirm the fix worked
Confirm the installed FFmpeg build no longer contains the vulnerable areverse_request_frame code path by inspecting source or running targeted fuzzing against the reverse filter; verify process memory protections remain intact under crafted inputs.
Typical attack path
- Obtain local access to a system running vulnerable FFmpeg
- Prepare media input that exercises the areverse filter
- Invoke FFmpeg with command-line options that call areverse_request_frame
- Trigger the buffer overflow to overwrite return addresses or function pointers
- Execute attacker-supplied code within the FFmpeg process context
How to detect it
Review FFmpeg crash logs, core dumps, and audit trails for stack traces referencing f_reverse.c or areverse_request_frame; look for unusual invocations of the reverse filter on production media workflows.
- areverse_request_frame
- libavfilter/f_reverse.c:269
- f_reverse.c
What your security team should do
- Prioritize upgrade of FFmpeg on any system that processes user-supplied media
- Restrict local execution of FFmpeg to trusted users and inputs only
- Monitor EPSS and KEV status for future changes despite current low scores
- Add the reverse filter to disallowed operations in media-processing pipelines until patched
The record
Buffer Overflow vulnerability in Ffmpeg v.N113007-g8d24a28d06 allows a local attacker to execute arbitrary code via the libavfilter/f_reverse.c:269:26 in areverse_request_frame.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Chainguard | ffmpeg-6 | 0 | 0 |
| Chainguard | ffmpeg-6-dev | 0 | 0 |
| Chainguard | ffmpeg-6-doc | 0 | 0 |
| Chainguard | ffmpeg-6-libavcodec61 | 0 | 0 |
| Chainguard | ffmpeg-6-libavdevice61 | 0 | 0 |
| Chainguard | ffmpeg-6-libavfilter10 | 0 | 0 |
| Chainguard | ffmpeg-6-libavformat61 | 0 | 0 |
| Chainguard | ffmpeg-6-libavutil59 | 0 | 0 |
| Chainguard | ffmpeg-6-libpostproc58 | 0 | 0 |
| Chainguard | ffmpeg-6-libswresample5 | 0 | 0 |
| Chainguard | ffmpeg-6-libswscale8 | 0 | 0 |
| Chainguard | ffmpeg-6-qt-faststart | 0 | 0 |
| Chainguard | ffmpeg-6-static | 0 | 0 |
| Chainguard | ffmpeg-7 | 0 | 7.1.3-r2 |
| Chainguard | ffmpeg-7.1 | 0 | 7.1.3-r1 |
| Chainguard | ffmpeg-8.0 | 0 | 8.0.1-r2 |
| Debian:13 | ffmpeg | 0 | 7:7.0.1-3 |
| Ubuntu:23.10 | ffmpeg | 0 | 7:6.0-6ubuntu1.1 |
| Ubuntu:Pro:14.04:LTS | libav | 0 | No fix |
| Ubuntu:Pro:16.04:LTS | ffmpeg | 0 | 7:2.8.17-0ubuntu0.1+esm7 |
| Ubuntu:Pro:18.04:LTS | ffmpeg | 0 | 7:3.4.11-0ubuntu0.1+esm5 |
| Ubuntu:Pro:20.04:LTS | ffmpeg | 0 | 7:4.2.7-0ubuntu0.1+esm5 |
| Ubuntu:Pro:22.04:LTS | ffmpeg | 0 | 7:4.4.2-0ubuntu0.22.04.1+esm4 |
| Ubuntu:Pro:24.04:LTS | ffmpeg | 0 | 7:6.1.1-3ubuntu5+esm1 |
| Wolfi | ffmpeg-7 | 0 | 7.1.3-r2 |
| Wolfi | ffmpeg-7.1 | 0 | 7.1.3-r1 |
| Wolfi | ffmpeg-8.0 | 0 | 8.0.1-r2 |
| openSUSE:Tumbleweed | ffmpeg-5 | 0 | 5.1.4-5.1 |
Related vulnerabilities
- CVE-2025-0518 Unchecked Return Value, Out-of-bounds Read vulnerability in FFmpeg allows Read Sensitive… Also affects ffmpeg-6
- CVE-2023-51794 Buffer Overflow vulnerability in Ffmpeg v.N113007-g8d24a28d06 allows a local attacker to… Also affects ffmpeg-6
- CVE-2023-51793 Buffer Overflow vulnerability in Ffmpeg v.N113007-g8d24a28d06 allows a local attacker to… Also affects ffmpeg-6
- CVE-2023-51798 Buffer Overflow vulnerability in Ffmpeg v.N113007-g8d24a28d06 allows a local attacker to… Also affects ffmpeg-6
- CVE-2023-51791 Buffer Overflow vulenrability in Ffmpeg v.N113007-g8d24a28d06 allows a local attacker to… Also affects ffmpeg-6
- CVE-2023-51795 Buffer Overflow vulnerability in Ffmpeg v.N113007-g8d24a28d06 allows a local attacker to… Also affects ffmpeg-6
- CVE-2023-50010 Buffer Overflow vulnerability in Ffmpeg v.n6.1-3-g466799d4f5 allows a local attacker to… Also affects ffmpeg-6
- CVE-2023-50009 Buffer Overflow vulnerability in Ffmpeg v.n6.1-3-g466799d4f5 allows a local attacker to… Also affects ffmpeg-6