GHSA-rmc9-8qp4-gjhx: Panic on chroma QP offsets enabled with an empty offset list
An HEVC Range Extensions stream can set cuchromaqpoffsetenabledflag in a slice while its picture parameter set carries an empty chroma QP offset list. The decoder then read the list at the signalled index, which panicked on the out-of-range access. A panic aborts the decoding thread, or the whole process when built with panic = "abort". The crate forbids unsafe code, so there is no memory corruption.
Any application that decodes untrusted HEIC files or HEVC streams with heifer-hevc-dec, directly or through the heifer crate, is affected.
The flaw was corrected in 0.3.27 (commit 1a8426e): with an empty list there is no offset to apply, and the offset is zero.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
rust/heifer-hevc-decto a version that resolves this vulnerability.Fixed in 0.3.27 - Upgrade
Upgrade
heifer-hevc-decto a version that resolves this vulnerability.Fixed in 0.3.27