Description
MP4v2 through 2.1.3 contains a heap-based out-of-bounds read in MP4File::GetChapters() that allows attackers to read past heap allocations via crafted QuickTime chapter samples. Attackers can supply an MP4 file whose chapter sample is shorter than its declared title length, crashing applications like mp4chaps or leaking adjacent heap memory into chapter titles.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| enzo1982 | mp4v2 | ≤ 2.1.3 | — |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 18.04 LTS | mp4v2 | No fix yet | — |
| Ubuntu 16.04 LTS | mp4v2 | No fix yet | — |
References
- https://hackmd.io/@haind-pwn/mp4v2-getchapters-oob-read technical-description
- https://github.com/enzo1982/mp4v2/issues/53 issue-tracking
- https://github.com/enzo1982/mp4v2/blob/f4c2f1b87446100728472d80fd1161d2f8e830b2/src/mp4file.cpp#L2618-L2627 technical-description
- https://github.com/enzo1982/mp4v2 product
- VulnCheck Advisory: MP4v2 through 2.1.3 Heap Out-of-Bounds Read via MP4File::GetChapters third-party-advisory