Android security tags, read closely by Lightrion

CVE-2026-0039 AI-generated analysis

platform/external/dng_sdk, libdng_sdk (DNG image parsing, exercised by ImageDecoder per the commit's Test line)

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 (3 corrections). Verify against the commit before relying on it.

Rebuilds libdng_sdk so that UBSan signed/unsigned integer-overflow checks call a library-private runtime that throws std::runtime_error, replacing the ubsan-minimal runtime that hard-aborts the process when an overflow is detected.

Root cause

libdng_sdk inherits sanitize.misc_undefined: ["unsigned-integer-overflow", "signed-integer-overflow"] from libdng_sdk-defaults in Android.bp. With that configuration the ubsan-minimal runtime is linked, and its handlers abort the process on a detected overflow (the commit message calls this a 'hard abort'). Integer-overflow sites in the DNG code, referenced by the seven bug ids listed in the commit, therefore terminate the decoding process when a malformed DNG triggers them instead of failing the decode. The library already builds with rtti: true and cppflags: ["-fexceptions"], so an exception-based error path was available but the sanitizer did not use it.

How the fix works

Completeness

Behavior changes

Per major

Unknowns

Back to June 2026 · Findings