FFmpeg - Out-of-Bounds Write in RASC Decoder decode_dlta()
FFmpeg's RASC video decoder (decode_dlta in libavcodec/rasc.c) performs 32-bit reads and writes at the row cursor before the NEXT_LINE row-boundary check and validates the DLTA region in pixel rather than byte units, so a DLTA run on a PAL8 frame can access several bytes past the row allocation. A crafted media stream using the RASC FourCC, decoded by libavcodec, triggers a bitstream-controlled out-of-bounds heap write and adjacent out-of-bounds read, leading to memory corruption.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2026-58049
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 7 Nov 2026, 16:18 UTC · Revision 1
Source evidence
FFmpeg - Out-of-Bounds Write in RASC Decoder decode_dlta()
core-osv · Original sourcePublished 28 Jun 2026, 01:32 UTC
FFmpeg's RASC video decoder (decode_dlta in libavcodec/rasc.c) performs 32-bit reads and writes at the row cursor before the NEXT_LINE row-boundary check and validates the DLTA region in pixel rather than byte units, so a DLTA run on a PAL8 frame can access several bytes past the row allocation. A crafted media stream using the RASC FourCC, decoded by libavcodec, triggers a bitstream-controlled out-of-bounds heap write and adjacent out-of-bounds read, leading to memory corruption.
osv:CVE-2026-58049
Complete source record
{
"id": "79191eec7b968dc126d17dd1fe423e1bf4d657e08f89e40e46102c9d4f10ac99",
"url": "https://osv.dev/vulnerability/CVE-2026-58049",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "FFmpeg - Out-of-Bounds Write in RASC Decoder decode_dlta()",
"summary": "FFmpeg's RASC video decoder (decode_dlta in libavcodec/rasc.c) performs 32-bit reads and writes at the row cursor before the NEXT_LINE row-boundary check and validates the DLTA region in pixel rather than byte units, so a DLTA run on a PAL8 frame can access several bytes past the row allocation. A crafted media stream using the RASC FourCC, decoded by libavcodec, triggers a bitstream-controlled out-of-bounds heap write and adjacent out-of-bounds read, leading to memory corruption.",
"evidence": "osv:CVE-2026-58049",
"products": [],
"severity": "high",
"structured": {
"id": "CVE-2026-58049",
"aliases": [
"CVE-2026-58049"
],
"metrics": [
{
"type": "CVSS_V4",
"score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:L/VA:H/SC:N/SI:N/SA:N"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/ffmpeg/ffmpeg",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"last_affected": "bcd2c69e087a09b07cf45c6bd2428ee1ccb2925c"
}
],
"database_specific": {
"extracted_events": [
{
"range": [
{
"introduced": "0"
},
{
"last_affected": "bcd2c69e087a09b07cf45c6bd2428ee1ccb2925c"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandardRange"
}
]
}
}
],
"versions": [
"n9.1-dev",
"n8.2-dev",
"n8.1-dev",
"n7.2-dev",
"n7.1-dev",
"n6.2-dev",
"n6.1-dev",
"n5.2-dev",
"n5.1-dev",
"n4.5-dev",
"n4.4-dev",
"n4.3-dev",
"n4.2-dev",
"n4.1-dev",
"n3.5-dev",
"n3.4-dev",
"n3.3-dev",
"n3.2-dev",
"n3.1-dev",
"n2.9-dev",
"n2.8-dev",
"n2.7-dev",
"n2.6-dev",
"n2.5-dev",
"n2.4-dev",
"n2.3-dev",
"n2.2-dev",
"n2.0",
"n2.1-dev",
"n1.3-dev",
"n1.2-dev",
"n1.1-dev",
"n0.12-dev",
"n0.11-dev",
"n0.8",
"N"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-58049.json"
}
}
],
"modified": "2026-10-28T02:30:51.364291582Z",
"provider": "osv",
"references": [
"https://github.com/FFmpeg/FFmpeg/blob/master/libavcodec/rasc.c",
"https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-58049.json",
"https://access.redhat.com/errata/RHSA-2026:43711",
"https://access.redhat.com/errata/RHSA-2026:51180",
"https://access.redhat.com/errata/RHSA-2026:52832",
"https://access.redhat.com/errata/RHSA-2026:52833",
"https://access.redhat.com/errata/RHSA-2026:60520",
"https://access.redhat.com/errata/RHSA-2026:61627",
"https://access.redhat.com/errata/RHSA-2026:61628",
"https://access.redhat.com/errata/RHSA-2026:61629",
"https://access.redhat.com/security/cve/CVE-2026-58049",
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/58xxx/CVE-2026-58049.json",
"https://nvd.nist.gov/vuln/detail/CVE-2026-58049",
"https://www.vulncheck.com/advisories/ffmpeg-out-of-bounds-write-in-rasc-decoder-decode-dlta",
"https://bugzilla.redhat.com/show_bug.cgi?id=2493952",
"https://github.com/bikini/exploitarium/tree/main/ffmpeg-rasc-dlta-calc-poc"
],
"provider_metadata": {
"cwe_ids": [
"CWE-787"
],
"cna_assigner": "VulnCheck",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/58xxx/CVE-2026-58049.json"
}
},
"related_cves": [
{
"value": "CVE-2026-58049",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 519852,
"published_at": "2026-06-28T01:32:52.9+00:00"
}