Product:   GPAC (MP4Box)
Affected:  2.5-DEV-rev1780-g50b5741f2-master
           Commit 50b5741f291126b610c59db433fc02e8a17f0c5d
Fixed:     91083fcfce01aa596a13a6962768d13a60bfc8bb
CVE:       CVE-2025-60497
CWE:       CWE-476 (NULL Pointer Dereference)
CVSS 3.1:  5.5 MEDIUM (AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H; CISA assessment)
Reporter:  Alexander A. Shvedov (@sigdevel)

Description:
  MP4Box dereferences a NULL pointer in GetESD() at isomedia/track.c:107
  during scene loading. A crafted MP4 sample description contains an unknown
  avC9 atom instead of a valid avcC configuration box. The Object Descriptor
  loading path nevertheless attempts to retrieve the ES descriptor from the
  invalid sample entry.

  The issue was reproduced in GPAC version
  2.5-DEV-rev1780-g50b5741f2-master at commit
  50b5741f291126b610c59db433fc02e8a17f0c5d.

Impact:
  Exporting the crafted scene causes an immediate MP4Box crash and denial of
  service. The observed fault is a NULL read; arbitrary code execution was
  not demonstrated.

Reproduction:
  Build GPAC with AddressSanitizer, then run:

    ./MP4Box -svg 62_GetESD_isomedia_track_c_107

ASan log excerpt:
  ==852440==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000000
  ==852440==The signal is caused by a READ memory access.
  ==852440==Hint: address points to the zero page.
      #0 in GetESD isomedia/track.c:107
      #1 in GetESDForTime isomedia/track.c:325
      #2 in gf_isom_get_root_od isomedia/isom_read.c:764

Fix:
  Update to a GPAC v26.07.0:

    https://github.com/gpac/gpac/releases/tag/v26.07.0

PoC:
  
https://github.com/sigdevel/pocs/blob/main/res/gpac/MP4Box/62/62_GetESD_isomedia_track_c_107

References:
  https://github.com/gpac/gpac/issues/3336
  https://github.com/gpac/gpac/commit/91083fcfce01aa596a13a6962768d13a60bfc8bb
  https://www.cve.org/CVERecord?id=CVE-2025-60497
  
https://raw.githubusercontent.com/CVEProject/cvelistV5/main/cves/2025/60xxx/CVE-2025-60497.json
  https://infosec.exchange/@sigdevel/117451504006040011


——
Best regards, Alexander A. Shvedov
@sigdevel

Reply via email to