Android security tags, read closely by Lightrion

CVE-2026-45527 AI-generated analysis

platform/frameworks/av, media/module/extractors/mp4 (HEIF clean aperture handling, media.extractor)

AI-generated: written from the bulletin and the fixing diffs by claude-fable-5-1, then checked against the code by claude-opus-5-5 (1 corrections). Verify against the commit before relying on it.

In the MP4/HEIF extractor, convertCleanApertureToRect() now checks the crop rectangle bounds with int64_t arithmetic before computing right/bottom, so crafted CleanAperture values can no longer trigger a signed int32 overflow (IntSan abort) in media.extractor.

Root cause

In media/module/extractors/mp4/HeifCleanAperture.cpp:convertCleanApertureToRect(), *right = *left + clapW and *bottom = *top + clapH were computed as int32_t additions before any range check. *left/*top come from centerX/centerY (which include the file-supplied horizOff/vertOff) and clapW/clapH are the file-supplied clean aperture width/height. With large offsets the addition overflows int32_t, which aborts the process under IntSan. The check that followed (*left > (UINT32_MAX - clapW) || *right > imageW || ...) did not help: for a non-negative int32 left, the UINT32_MAX comparison is effectively never true, and the *right > imageW comparison ran after the overflow had already happened.

How the fix works

Completeness

Behavior changes

Per major

Unknowns

Back to September 2026 · Findings