CVE-2026-56210
High · 7.1CVSS
7.1
EPSS
0.6%
Published
Jun 19, 2026
CISA due date
—
Cloudanix analysis
A flaw in a common AV1 video encoder can let a malicious video-processing request crash the service or expose small amounts of memory.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Moderate
- Impact
- Denial Of Service
- Component
- Library
- Class
- Buffer Overflow
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
This vulnerability is a heap out-of-bounds read in libaom, the reference AV1 codec implementation. A missing bounds check in the SVC layer ID control path allows a caller to set a spatial_layer_id greater than the configured number of spatial layers. When libaom later uses that value to compute an index into a layer context array, it can read roughly 40 KB beyond the intended heap allocation. Depending on memory layout, this can disclose adjacent heap contents to the caller or crash the process with a segmentation fault if the read crosses into unmapped memory. The flaw affects confidentiality and availability; it does not provide a direct integrity impact or code execution primitive based on the available information.
Why it matters to the business
Services that encode, transcode, or process AV1 video using libaom may be vulnerable if untrusted users can influence SVC encoder configuration. Successful exploitation could cause service crashes, failed video processing jobs, degraded media availability, or exposure of sensitive data present in adjacent process memory. The vulnerability is not currently listed in CISA KEV, is not reported as ransomware-used, has no known public exploit maturity, and has a low EPSS score, so broad active exploitation is not indicated; however, internet-facing media processing services should still prioritize remediation because the attack complexity is low where the vulnerable code path is reachable.
How an attack unfolds
An attacker first identifies an application, API, or media-processing workflow that uses libaom for AV1 encoding and permits user influence over SVC or scalable video encoding parameters. The attacker submits a crafted encoding request or media-processing job that configures a spatial_layer_id value higher than the number of spatial layers actually configured. Because the vulnerable libaom code fails to validate that the layer ID is in range, it uses the attacker-controlled value to calculate an array index for layer context data. This causes libaom to read outside the allocated heap buffer. If the invalid read reaches mapped memory, the service may return or internally process unintended heap data, creating an information disclosure risk. If the invalid read reaches unmapped memory, the encoder process can crash, causing denial of service for the active job or the wider service depending on process supervision and isolation.
How to fix it
Upgrade libaom and any software that statically or dynamically links libaom to a vendor-provided fixed release when available. Because no exact fixed versions were provided in the input, remediation should be based on upstream libaom advisories, operating system package advisories, container base image updates, and application vendor patches. Rebuild or redeploy applications that statically link libaom; simply updating the shared library may not remediate statically compiled binaries. If immediate patching is not possible, restrict or disable user-controlled AV1 SVC/scalable video encoding parameters, validate that spatial_layer_id is less than the configured spatial layer count before passing requests to libaom, disable AV1 SVC features where not required, and isolate media-processing workers with process sandboxing, memory-safe supervisors, resource limits, and automatic restart controls.
How to confirm the fix worked
Confirm exposure by inventorying systems, containers, packages, and application binaries for libaom or bundled AV1 encoding components. Verify the deployed libaom version against upstream, distribution, or vendor security advisories once fixed builds are available. For dynamically linked applications, use package manager queries and binary dependency inspection to confirm they load the patched libaom library. For statically linked applications, confirm the application was rebuilt against patched libaom source. Functionally validate the mitigation by submitting benign negative tests where SVC layer IDs outside the configured layer count are rejected before reaching libaom or fail safely without a crash. Operationally validate by confirming that previous crash signatures no longer occur under malformed SVC parameter tests.
Typical attack path
- Identify a network-accessible service, application, or workflow that performs AV1 encoding with libaom.
- Determine whether the service exposes SVC, scalable video, or AV1 encoder parameters to unauthenticated or attacker-controlled input.
- Submit a crafted encoding request with a spatial_layer_id value greater than the configured spatial layer count.
- Trigger the vulnerable libaom SVC layer ID control function during encoder setup or processing.
- Cause libaom to compute an out-of-bounds layer context array index and read beyond the heap allocation.
- Observe either a crash, failed encoding job, abnormal service restart, or, where response handling exposes memory contents, leaked heap data.
How to detect it
Review application, API gateway, transcoding service, worker, system, and crash logs for abnormal AV1 encoding failures involving SVC or spatial layer parameters. Look for requests or job metadata where spatial_layer_id is greater than or inconsistent with the configured number of spatial layers. Investigate segmentation faults, aborted encoder processes, core dumps, AddressSanitizer reports, or supervisor restarts referencing libaom, aomenc, AV1 encoding, SVC, or heap-buffer-overflow. If the service returns detailed encoder errors or diagnostic output to users, review response logs for unusually large error payloads or unexpected binary-looking data following failed AV1/SVC requests. For forensic review, preserve core dumps and memory sanitizer logs from affected workers, correlate crashes to preceding media-processing requests, source IPs, user agents, job IDs, uploaded files, and encoder parameter sets, and determine whether repeated malformed SVC requests indicate probing or attempted exploitation.
- libaom
- aomenc
- spatial_layer_id
- SVC
- Scalable Video Coding
- heap-buffer-overflow
- AddressSanitizer: heap-buffer-overflow
- SEGV
- SIGSEGV
- segmentation fault
- out-of-bounds read
- AV1 encoder
- spatial layer
- spatial layers
- core dumped
What your security team should do
- Prioritize internet-facing or multi-tenant media processing, video upload, video conferencing, streaming, and transcoding services that expose AV1 encoding or SVC parameters.
- Inventory all uses of libaom, including OS packages, containers, statically linked applications, media-processing appliances, and bundled third-party software.
- Apply vendor patches or rebuild affected software as soon as fixed libaom versions are available from the relevant distribution or application vendor.
- Until patched, block or strictly validate untrusted SVC encoder parameters, especially spatial_layer_id and spatial layer count combinations.
- Run AV1 encoding workers with least privilege, sandboxing, memory limits, crash isolation, and queue-level rate limiting to reduce denial-of-service impact.
- Monitor media-processing logs, crash reports, and core dumps for libaom segmentation faults or heap-buffer-overflow reports involving SVC or spatial layer handling.
- Because this is not KEV-listed and EPSS is low, balance urgency against exposure: externally reachable services with user-controlled encoding parameters should be treated as higher priority than internal-only batch encoders.
The record
A heap-buffer-overflow read vulnerability was found in libaom, the reference AV1 codec implementation. A missing bounds check in the SVC (Scalable Video Coding) layer ID control function allows setting a spatial_layer_id exceeding the configured number of layers. This causes an out-of-bounds heap read of approximately 40,728 bytes when computing a layer context array index. An attacker who can influence SVC encoder parameters in a network-facing service could exploit this for information disclosure (heap content leak) or denial of service (segmentation fault from hitting unmapped memory).
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| openSUSE:Leap 16.0 | libaom | 0 | 3.11.0-160000.3.1 |
| openSUSE:Leap 16.0 | libaom-devel-doc | 0 | 3.11.0-160000.3.1 |
Related vulnerabilities
- CVE-2026-56211 A remote code execution vulnerability was found in libaom, the reference AV1 codec… Also affects libaom
- CVE-2026-56208 A heap buffer overflow vulnerability was found in libaom, the reference AV1 codec… Also affects libaom
- CVE-2026-56209 An arbitrary address write vulnerability was found in libaom, the reference AV1 codec… Also affects libaom
- CVE-2026-92824 A flaw was found in libmodulemd. CWE-125
- CVE-2026-114038 A flaw was found in device-mapper-multipath. CWE-125
- CVE-2026-112896 Pillow is a Python imaging library. CWE-125
- CVE-2026-112278 rdesktop through 1.9.0 contains a heap out-of-bounds read vulnerability in… CWE-125
- CVE-2026-112273 libtins through 4.6 contains a heap out-of-bounds read vulnerability in DNS::compose_name… CWE-125