Android security tags, read closely by Lightrion

CVE-2025-22423 AI-generated analysis

platform/external/dng_sdk, DNG/TIFF IFD tag parser (source/dng_ifd.cpp)

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

dng_ifd::ParseTag in external/dng_sdk now aborts tag parsing (returns false) when CheckTagCount reports an invalid tag count for three tags, instead of ignoring the result and continuing to process the out-of-range count.

Root cause

In source/dng_ifd.cpp, dng_ifd::ParseTag called CheckTagCount(parentCode, tagCode, tagCount, ...) for several tags but discarded its boolean result. When a file carried a tag count outside the allowed range, parsing continued anyway. For tcBitsPerSample the following code loops `for (j = 0; j < tagCount; j++)` reading one value per iteration from the stream, so an unvalidated count directly controls the amount of work and reads done; the two other patched sites check the count against fSamplesPerPixel and likewise continued with an invalid count. The bulletin rates the issue as a Critical DoS.

How the fix works

Completeness

Behavior changes

Per major

Unknowns

Back to April 2025 · Findings