CVE-2016-5407
Critical · 9.8CVSS
9.8
EPSS
4.5%
Published
Dec 13, 2016
CISA due date
—
Cloudanix analysis
A flaw in certain graphics software lets remote attackers potentially seize control of systems by sending bad data over network connections used for video handling.
- Exploitation
- Remote Unauthenticated
- Attacker needs
- None
- Complexity
- Low
- Impact
- Full Compromise
- Component
- Library
- Class
- Memory Corruption
- Remediation
- Upgrade
- Effort
- Low
- Patch risk
- Low
What it actually does
Remote X servers can trigger out-of-bounds memory access in the XvQueryAdaptors and XvQueryEncodings functions of libXv via manipulated length values in received data, enabling memory corruption.
Why it matters to the business
Organizations relying on affected packages face elevated risk of remote code execution or service disruption across 331 downstream dependents; although years old with no observed exploitation, the high severity warrants attention in legacy imaging and graphics environments.
How an attack unfolds
An attacker hosts a malicious X server that responds to client queries with crafted data containing invalid length specifications; when a vulnerable client invokes XvQueryAdaptors or XvQueryEncodings, the malformed response causes out-of-bounds access that may be leveraged for code execution.
How to fix it
Upgrade to fixed releases including pillow (Bitnami) 8.1.1 and ensure libXv is at version 1.0.11 or newer; apply updates across all dependents and verify no older vulnerable instances remain.
How to confirm the fix worked
Confirm installed package versions meet or exceed the listed fixed releases, re-test Xv function calls against trusted servers, and scan dependency trees for remaining vulnerable components.
Typical attack path
- Attacker deploys a malicious X server
- Victim client connects and issues XvQueryAdaptors or XvQueryEncodings requests
- Server returns data with manipulated length fields
- Client library performs out-of-bounds memory operations leading to corruption or execution
How to detect it
Review application logs and crash reports for anomalies during XvQuery operations; inspect network traffic for connections to untrusted X servers and monitor for unexpected memory faults in dependent processes.
What your security team should do
- Immediately update pillow (Bitnami) installations to 8.1.1 or later
- Audit all software supply chains for the 331 downstream dependents of the affected library
- Disable unnecessary Xv extension usage where feasible until patches are applied
The record
The (1) XvQueryAdaptors and (2) XvQueryEncodings functions in X.org libXv before 1.0.11 allow remote X servers to trigger out-of-bounds memory access operations via vectors involving length specifications in received data.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Alpine:v3.2 | libxv | 0 | 1.0.10-r1 |
| Alpine:v3.3 | libxv | 0 | 1.0.10-r2 |
| Debian:10 | libxv | 0 | 2:1.0.11-1 |
| Debian:11 | libxv | 0 | 2:1.0.11-1 |
| Debian:12 | libxv | 0 | 2:1.0.11-1 |
| Debian:13 | libxv | 0 | 2:1.0.11-1 |
| Debian:7 | libxv | 0 | 2:1.0.7-1+deb7u2 |
| Mageia:5 | libx11 | 0 | 1.6.5-1.mga5 |
| Mageia:5 | libxfixes | 0 | 5.0.3-1.mga5 |
| Mageia:5 | libxi | 0 | 1.7.7-1.mga5 |
| Mageia:5 | libxrandr | 0 | 1.4.2-4.1.mga5 |
| Mageia:5 | libxrender | 0 | 0.9.10-1.mga5 |
| Mageia:5 | libxtst | 0 | 1.2.3-1.mga5 |
| Mageia:5 | libxv | 0 | 1.0.11-1.mga5 |
| Mageia:5 | libxvmc | 0 | 1.0.10-1.mga5 |
| SUSE:Linux Enterprise Desktop 12 SP1 | libX11 | 0 | 1.6.2-6.2 |
| SUSE:Linux Enterprise Desktop 12 SP1 | libXfixes | 0 | 5.0.1-5.2 |
| SUSE:Linux Enterprise Desktop 12 SP1 | libXi | 0 | 1.7.4-12.2 |
| SUSE:Linux Enterprise Desktop 12 SP1 | libXrandr | 0 | 1.4.2-5.2 |
| SUSE:Linux Enterprise Desktop 12 SP1 | libXrender | 0 | 0.9.8-5.2 |
| SUSE:Linux Enterprise Desktop 12 SP1 | libXtst | 0 | 1.2.2-5.2 |
| SUSE:Linux Enterprise Desktop 12 SP1 | libXv | 0 | 1.0.10-5.2 |
| SUSE:Linux Enterprise Desktop 12 SP1 | libXvMC | 0 | 1.0.8-5.2 |
| SUSE:Linux Enterprise Desktop 12 SP2 | libX11 | 0 | 1.6.2-8.1 |
| SUSE:Linux Enterprise Desktop 12 SP2 | libXfixes | 0 | 5.0.1-7.1 |
| SUSE:Linux Enterprise Desktop 12 SP2 | libXi | 0 | 1.7.4-14.1 |
| SUSE:Linux Enterprise Desktop 12 SP2 | libXrender | 0 | 0.9.8-7.1 |
| SUSE:Linux Enterprise Desktop 12 SP2 | libXtst | 0 | 1.2.2-7.1 |
| SUSE:Linux Enterprise Desktop 12 SP2 | libXv | 0 | 1.0.10-7.1 |
| SUSE:Linux Enterprise Desktop 12 SP2 | libXvMC | 0 | 1.0.8-7.1 |
| SUSE:Linux Enterprise Server 11 SP4 | xorg-x11-libXv | 0 | 7.4-1.20.1 |
| SUSE:Linux Enterprise Server 12 SP1 | libX11 | 0 | 1.6.2-6.2 |
| SUSE:Linux Enterprise Server 12 SP1 | libXfixes | 0 | 5.0.1-5.2 |
| SUSE:Linux Enterprise Server 12 SP1 | libXi | 0 | 1.7.4-12.2 |
| SUSE:Linux Enterprise Server 12 SP1 | libXrandr | 0 | 1.4.2-5.2 |
| SUSE:Linux Enterprise Server 12 SP1 | libXrender | 0 | 0.9.8-5.2 |
| SUSE:Linux Enterprise Server 12 SP1 | libXtst | 0 | 1.2.2-5.2 |
| SUSE:Linux Enterprise Server 12 SP1 | libXv | 0 | 1.0.10-5.2 |
| SUSE:Linux Enterprise Server 12 SP1 | libXvMC | 0 | 1.0.8-5.2 |
| SUSE:Linux Enterprise Server 12 SP2 | libX11 | 0 | 1.6.2-8.1 |
| SUSE:Linux Enterprise Server 12 SP2 | libXfixes | 0 | 5.0.1-7.1 |
| SUSE:Linux Enterprise Server 12 SP2 | libXi | 0 | 1.7.4-14.1 |
| SUSE:Linux Enterprise Server 12 SP2 | libXrender | 0 | 0.9.8-7.1 |
| SUSE:Linux Enterprise Server 12 SP2 | libXtst | 0 | 1.2.2-7.1 |
| SUSE:Linux Enterprise Server 12 SP2 | libXv | 0 | 1.0.10-7.1 |
| SUSE:Linux Enterprise Server 12 SP2 | libXvMC | 0 | 1.0.8-7.1 |
| SUSE:Linux Enterprise Server for Raspberry Pi 12 SP2 | libX11 | 0 | 1.6.2-8.1 |
| SUSE:Linux Enterprise Server for Raspberry Pi 12 SP2 | libXfixes | 0 | 5.0.1-7.1 |
| SUSE:Linux Enterprise Server for Raspberry Pi 12 SP2 | libXi | 0 | 1.7.4-14.1 |
| SUSE:Linux Enterprise Server for Raspberry Pi 12 SP2 | libXrender | 0 | 0.9.8-7.1 |
| SUSE:Linux Enterprise Server for Raspberry Pi 12 SP2 | libXtst | 0 | 1.2.2-7.1 |
| SUSE:Linux Enterprise Server for Raspberry Pi 12 SP2 | libXv | 0 | 1.0.10-7.1 |
| SUSE:Linux Enterprise Server for Raspberry Pi 12 SP2 | libXvMC | 0 | 1.0.8-7.1 |
| SUSE:Linux Enterprise Server for SAP Applications 11 SP4 | xorg-x11-libXv | 0 | 7.4-1.20.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP1 | libX11 | 0 | 1.6.2-6.2 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP1 | libXfixes | 0 | 5.0.1-5.2 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP1 | libXi | 0 | 1.7.4-12.2 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP1 | libXrandr | 0 | 1.4.2-5.2 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP1 | libXrender | 0 | 0.9.8-5.2 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP1 | libXtst | 0 | 1.2.2-5.2 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP1 | libXv | 0 | 1.0.10-5.2 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP1 | libXvMC | 0 | 1.0.8-5.2 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP2 | libX11 | 0 | 1.6.2-8.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP2 | libXfixes | 0 | 5.0.1-7.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP2 | libXi | 0 | 1.7.4-14.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP2 | libXrender | 0 | 0.9.8-7.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP2 | libXtst | 0 | 1.2.2-7.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP2 | libXv | 0 | 1.0.10-7.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP2 | libXvMC | 0 | 1.0.8-7.1 |
| SUSE:Linux Enterprise Software Development Kit 11 SP4 | xorg-x11-libXv | 0 | 7.4-1.20.1 |
| SUSE:Linux Enterprise Software Development Kit 12 SP1 | libX11 | 0 | 1.6.2-6.2 |
| SUSE:Linux Enterprise Software Development Kit 12 SP1 | libXfixes | 0 | 5.0.1-5.2 |
| SUSE:Linux Enterprise Software Development Kit 12 SP1 | libXi | 0 | 1.7.4-12.2 |
| SUSE:Linux Enterprise Software Development Kit 12 SP1 | libXrandr | 0 | 1.4.2-5.2 |
| SUSE:Linux Enterprise Software Development Kit 12 SP1 | libXrender | 0 | 0.9.8-5.2 |
| SUSE:Linux Enterprise Software Development Kit 12 SP1 | libXtst | 0 | 1.2.2-5.2 |
| SUSE:Linux Enterprise Software Development Kit 12 SP1 | libXv | 0 | 1.0.10-5.2 |
| SUSE:Linux Enterprise Software Development Kit 12 SP1 | libXvMC | 0 | 1.0.8-5.2 |
| SUSE:Linux Enterprise Software Development Kit 12 SP2 | libX11 | 0 | 1.6.2-8.1 |
| SUSE:Linux Enterprise Software Development Kit 12 SP2 | libXfixes | 0 | 5.0.1-7.1 |
| SUSE:Linux Enterprise Software Development Kit 12 SP2 | libXi | 0 | 1.7.4-14.1 |
| SUSE:Linux Enterprise Software Development Kit 12 SP2 | libXrender | 0 | 0.9.8-7.1 |
| SUSE:Linux Enterprise Software Development Kit 12 SP2 | libXtst | 0 | 1.2.2-7.1 |
| SUSE:Linux Enterprise Software Development Kit 12 SP2 | libXv | 0 | 1.0.10-7.1 |
| SUSE:Linux Enterprise Software Development Kit 12 SP2 | libXvMC | 0 | 1.0.8-7.1 |
| Ubuntu:18.04:LTS | libxv | 0 | 2:1.0.11-1 |
| Ubuntu:20.04:LTS | libxv | 0 | 2:1.0.11-1 |
| Ubuntu:22.04:LTS | libxv | 0 | 2:1.0.11-1 |
| Ubuntu:Pro:16.04:LTS | libxv | 0 | 2:1.0.10-1ubuntu0.16.04.1~esm1 |
| openSUSE:Tumbleweed | libXv | 0 | 1.0.11-1.1 |
Related vulnerabilities
- CVE-2016-7949 Multiple buffer overflows in the (1) XvQueryAdaptors and (2) XvQueryEncodings functions… Also affects libx11
- CVE-2016-7947 Multiple integer overflows in X.org libXrandr before 1.5.1 allow remote X servers to… Also affects libx11
- CVE-2016-7945 Multiple integer overflows in X.org libXi before 1.7.7 allow remote X servers to cause a… Also affects libx11
- CVE-2016-7944 Integer overflow in X.org libXfixes before 5.0.3 on 32-bit platforms might allow remote X… Also affects libx11
- CVE-2016-7942 The XGetImage function in X.org libX11 before 1.6.4 might allow remote X servers to gain… Also affects libx11
- CVE-2026-112108 A vulnerability was determined in ztxz16 fastllm up to 0.1.8.2. CWE-119
- CVE-2026-112073 A vulnerability was identified in Tencent ncnn up to 44b02dabdcf97499281a4692ebd65bad73dc… CWE-119
- CVE-2026-90831 A vulnerability was detected in GNU Binutils 2.47. CWE-119