Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessGain man-in-the-middle network position
-
DeliveryVictim FFmpeg connects to IP-literal TLS URL
-
ExploitPresent any CA-signed certificate
-
ExecutionmbedTLS backend skips IP hostname check
-
ImpactRead and tamper with stream contents
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V12 - Secure Communication Certificate host validation
|
| Exploitation Conditions | Exploitation requires ALL of the following specific conditions: (1) FFmpeg built against the mbedTLS TLS backend (the vulnerable tls_open() lives in libavformat/tls_mbedtls.c, not the OpenSSL/GnuTLS backends); (2) the client connecting to an IP-literal URL (e.g. https://198.51.100.5/) over https, rtmps, or tls - connections to DNS hostnames are NOT affected because hostname verification still occurs for them; and (3) an attacker occupying a man-in-the-middle position on the network path who possesses any certificate signed by a trusted CA. Limiting factors that reduce realistic risk: the High attack complexity and Present attack requirement (AT:P) mean the MITM position must already be established, the non-default mbedTLS backend narrows the affected population, and only IP-literal target URLs are vulnerable; impact is confined to reading and tampering with the stream (confidentiality/integrity), with no availability or code-execution effect. |
| Impact | This is a genuine but moderate-priority issue, best characterized as a high-impact-in-narrow-conditions flaw rather than a broadly dangerous one. The CVSS 4.0 vector (AV:N/AC:H/AT:P/PR:N/UI:N) tells the real story: although network-reachable and requiring no privileges or user interaction, it carries High attack complexity and a Present attack requirement (AT:P), meaning the attacker must already hold a privileged man-in-the-middle network position and the victim must be connecting to an IP-literal URL. Impact is limited (VC:L/VI:L/VA:N) - confidentiality and integrity of the stream, no availability loss - consistent with a TLS interception/tampering bug rather than code execution. No EPSS score, CISA KEV listing, or public POC was provided, so there is no public exploit identified at time of analysis and no evidence of active exploitation; the AT:P/AC:H profile also argues against opportunistic mass exploitation and toward targeted, position-dependent attacks. The signals are internally consistent (CWE-297 host-mismatch matches the described IP-literal hostname-check skip, and the 6.3/Medium score fits the limited-impact MITM nature). One caveat defenders should verify: exploitation is specific to FFmpeg builds using the mbedTLS backend (tls_mbedtls.c), which is not FFmpeg's most common TLS backend, further narrowing the real-world exposed population below what a raw 'FFmpeg' product match would suggest. |
| Exploit ScenarioDerived | An attacker positioned on the network path (e.g., rogue Wi-Fi, ARP/DNS spoofing, or a compromised upstream hop) intercepts an FFmpeg client's https/rtmps/tls connection to an IP-literal URL such as https://203.0.113.10/stream. Because tls_open() in the mbedTLS backend skips hostname verification for IP-address hosts, the attacker presents any certificate validly signed by a trusted CA and the connection succeeds, letting them read and modify the media/data stream in transit. No public exploit code was identified in the provided data, and the attack requires both a pre-existing MITM position and the victim targeting an IP literal rather than a DNS name. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 08, 2026
Hostname verification bypass in FFmpeg's mbedTLS TLS backend (tls_open() in libavformat/tls_mbedtls.c) lets a network man-in-the-middle holding any certificate from a trusted CA intercept, read and tamper with streams that FFmpeg retrieves from IP-literal URLs over https, rtmps or tls, affecting builds before 8.1.3 and 9.x before 9.0.2. According to the CVSS vector the attack is unauthenticated (PR:N) and requires no user interaction (UI:N), but the high attack complexity and Present attack requirement (AT:P) mean the attacker must already occupy a MITM position on the path, and the flaw only triggers on mbedTLS-linked builds and IP-literal targets because hostname checks still run for DNS names; impact is limited to confidentiality and integrity of the stream, with no availability or code-execution effect (CVSS 3.1 4.0-equivalent severity ~6.3 medium, CWE-297). No public exploit code has been identified at time of analysis and there is no CISA KEV listing, though vendor patches are available.
RemediationAI
Vendor-released patch: upgrade to FFmpeg 8.1.3 (for the 8.x/pre-8.1.3 line) or 9.0.2 (for the 9.x line); the fixes are in the tls_mbedtls.c verification path and were merged via the FFmpeg pull request at https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/24383 and the associated commits https://code.ffmpeg.org/FFmpeg/FFmpeg/commit/57a2e704b4a6eda5d061b45aacde6b19c026bfc0, https://code.ffmpeg.org/FFmpeg/FFmpeg/commit/d377212904a19fc740d721cbda0ba58fa3805a29 and https://code.ffmpeg.org/FFmpeg/FFmpeg/commit/0cd2a70eacd510c2efed48b9fc177c7cb2bc549f. Until patching is possible, switch affected applications to a non-mbedTLS build of FFmpeg (--with-openssl or --with-gnutls), which removes the vulnerable code path entirely but changes the linked crypto library and may require rebuilding downstream packages; alternatively avoid IP-literal URLs and address media servers by DNS hostname so that hostname verification still executes, though this depends on correct DNS resolution and is not a fix. Deployments that cannot change either can constrain the risk by terminating TLS in a proxy that performs its own certificate-to-identity validation in front of FFmpeg, or by only fetching from endpoints whose certificates are pinned at the proxy, accepting the operational cost of an additional hop. Advisory references: https://ffmpeg.org/ and https://www.vulncheck.com/advisories/ffmpeg-before-8.1.3-and-9-x-before-9.0.2-mbedtls-hostname-verification-bypass-for-ip-hosts.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The issue is a CWE-297 'Improper Validation of Certificate with Host Mismatch' flaw in FFmpeg's mbedTLS integration layer. FFmpeg abstracts TLS through multiple backends (openssl, gnutls, mbedtls, securetransport); the vulnerable code path exists only in libavformat/tls_mbedtls.c, where the tls_open() routine configures an mbedTLS session for protocols such as https, rtmps and tls. During the TLS handshake the certificate chain is validated against the trust store, but when the target host is supplied as an IP literal rather than a DNS name the hostname/IP comparison step is skipped, so any certificate chaining to a trusted CA is accepted regardless of the identity it asserts. The referenced source at github.com/FFmpeg/FFmpeg/blob/n9.0.1/libavformat/tls_mbedtls.c#L676-L681 shows the affected verification block. Consequently integrity and confidentiality of the transported media are lost for that connection: an on-path attacker with a validly issued (even legitimate, unrelated) certificate can transparently terminate the TLS session and read or rewrite the byte stream. The scope is narrow by design: OpenSSL, GnuTLS and Secure Transport backends are unaffected, DNS-named endpoints are unaffected because their hostname check still fires, and there is no path to memory corruption, denial of service or code execution - only stream disclosure and manipulation. CVSS 4.0 vector CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N aligns with this bounded impact.
Know when Ffmpeg gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N
AV:N and PR:N/UI:N as it is a remote unauthenticated flaw, but AC:H because it demands an established MITM position and an IP-literal target; C:L/I:L for stream read/tamper, A:N.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
FFmpeg before 8.1.3 and 9.x before 9.0.2 contains an improper certificate validation vulnerability in tls_open() of libavformat/tls_mbedtls.c, which skips hostname checks for IP-address hosts. Network attackers can intercept https, rtmps, or tls connections to IP-literal URLs with any trusted CA-issued certificate to read and tamper with streams.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
FFmpeg 2.x allows remote attackers to conduct cross-origin attacks and read arbitrary files by using the concat protocol
FFmpeg before 2.8.12, 3.0.x and 3.1.x before 3.1.9, 3.2.x before 3.2.6, and 3.3.x before 3.3.2 does not properly restric
FFmpeg 2.x allows remote attackers to conduct cross-origin attacks and read arbitrary files by using the subfile protoco
The av_reallocp_array function in libavutil/mem.c in FFmpeg before 2.0.1 has an unspecified impact and remote vectors re
cbs_jpeg_split_fragment in libavcodec/cbs_jpeg.c in FFmpeg 4.1 and 4.2.2 has a heap-based buffer overflow during JPEG_MA
Out-of-bounds heap write in FFmpeg's RASC video decoder (decode_dlta in libavcodec/rasc.c) allows attackers to corrupt m
Memory corruption in FFmpeg before 8.1 allows an attacker who can supply a crafted H.264/HEVC media file to corrupt heap
Integer Overflow vulnerability in function filter_sobel in libavfilter/vf_convolution.c in Ffmpeg 4.2.1, allows attacker
Integer Overflow vulnerability in function filter_robert in libavfilter/vf_convolution.c in Ffmpeg 4.2.1, allows attacke
Integer Overflow vulnerability in function filter_prewitt in libavfilter/vf_convolution.c in Ffmpeg 4.2.1, allows attack
Integer Overflow vulnerability in function filter16_sobel in libavfilter/vf_convolution.c in Ffmpeg 4.2.1, allows attack
Integer Overflow vulnerability in function filter16_roberts in libavfilter/vf_convolution.c in Ffmpeg 4.2.1, allows atta
EUVD-2026-95079
GHSA-r4c5-645c-gfxv
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB