libextractor

GNU libextractor
Log | Files | Refs | Submodules | README | LICENSE

commit 4478a2595f38996b969dc89c5df29e3a93e9c239
parent 2781c7e9095f4ddaff4f535d69342f3903b18422
Author: Christian Grothoff <christian@grothoff.org>
Date:   Tue, 30 Jun 2026 17:13:57 +0200

fix tIME parser for PNG

Diffstat:
MChangeLog | 6+++++-
Msrc/plugins/png_extractor.c | 10+++++-----
2 files changed, 10 insertions(+), 6 deletions(-)

diff --git a/ChangeLog b/ChangeLog @@ -1,6 +1,10 @@ +Tue Jun 30 05:13:30 PM CEST 2026 + Fix tIME chunk parser in PNG plugin. + + Mon Jun 29 07:58:39 PM CEST 2026 Fix potential 4 MB on-stack memory allocation that could - result in a stack-based buffer overflow in the OLE2 extractor. + result in a stack-based buffer overflow in the OLE2 plugin. Thanks to Haitam Lazaar for reporting. Releasing GNU libextractor 1.15. -CG diff --git a/src/plugins/png_extractor.c b/src/plugins/png_extractor.c @@ -441,11 +441,11 @@ processtIME (struct EXTRACTOR_ExtractContext *ec, ret = 0; memcpy (&y, data, sizeof (uint16_t)); year = ntohs (y); - mo = (unsigned char) data[6]; - day = (unsigned char) data[7]; - h = (unsigned char) data[8]; - m = (unsigned char) data[9]; - s = (unsigned char) data[10]; + mo = (unsigned char) data[2]; + day = (unsigned char) data[3]; + h = (unsigned char) data[4]; + m = (unsigned char) data[5]; + s = (unsigned char) data[6]; snprintf (val, sizeof (val), "%04u-%02u-%02u %02d:%02d:%02d",