Public bug reported:
Heap-buffer-overflow while running jhead(v2.97, v3.00). This bug has
been provided patch in >= v3.0.2. But it still exits in v2.97 and v3.00.
Deatil log as follow: (POC in attachment)
lbb@lbb ./jhead-2.97/jhead ./jhead-2.97/crashes/I5G9X5~S
Nonfatal Error : './jhead-2.97/crashes/I5G9X5~S' Extraneous 11 padding bytes
before section DC
=================================================================
==3525==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x602000000094
at pc 0x00000040bf7f bp 0x7ffd7f6c0b80 sp 0x7ffd7f6c0b78
READ of size 1 at 0x602000000094 thread T0
#0 0x40bf7e in process_DHT /home/jhead-2.97/jpgqguess.c:188
#1 0x408a62 in ReadJpegSections /home/jhead-2.97/jpgfile.c:228
#2 0x4092ad in ReadJpegSections /home/jhead-2.97/jpgfile.c:126
#3 0x4092ad in ReadJpegFile /home/jhead-2.97/jpgfile.c:375
#4 0x404cb7 in ProcessFile /home/jhead-2.97/jhead.c:881
#5 0x402a10 in main /home/jhead-2.97/jhead.c:1684
#6 0x7f836156283f in __libc_start_main
(/lib/x86_64-linux-gnu/libc.so.6+0x2083f)
#7 0x403ca8 in _start (/home/jhead-2.97/jhead+0x403ca8)
0x602000000094 is located 0 bytes to the right of 4-byte region
[0x602000000090,0x602000000094)
allocated by thread T0 here:
#0 0x7f8361cee290 in __interceptor_malloc
../../.././libsanitizer/asan/asan_malloc_linux.cc:62
#1 0x4083e5 in ReadJpegSections /home/jhead-2.97/jpgfile.c:173
#2 0x4092ad in ReadJpegSections /home/jhead-2.97/jpgfile.c:126
#3 0x4092ad in ReadJpegFile /home/jhead-2.97/jpgfile.c:375
#4 0x404cb7 in ProcessFile /home/jhead-2.97/jhead.c:881
#5 0x402a10 in main /home/jhead-2.97/jhead.c:1684
#6 0x7f836156283f in __libc_start_main
(/lib/x86_64-linux-gnu/libc.so.6+0x2083f)
SUMMARY: AddressSanitizer: heap-buffer-overflow
/home/jhead-2.97/jpgqguess.c:188 in process_DHT
Shadow bytes around the buggy address:
0x0c047fff7fc0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0c047fff7fd0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0c047fff7fe0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0c047fff7ff0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0c047fff8000: fa fa fd fd fa fa 02 fa fa fa 02 fa fa fa 02 fa
=>0x0c047fff8010: fa fa[04]fa fa fa fa fa fa fa fa fa fa fa fa fa
0x0c047fff8020: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
0x0c047fff8030: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
0x0c047fff8040: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
0x0c047fff8050: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
0x0c047fff8060: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
Shadow byte legend (one shadow byte represents 8 application bytes):
Addressable: 00
Partially addressable: 01 02 03 04 05 06 07
Heap left redzone: fa
Freed heap region: fd
Stack left redzone: f1
Stack mid redzone: f2
Stack right redzone: f3
Stack after return: f5
Stack use after scope: f8
Global redzone: f9
Global init order: f6
Poisoned by user: f7
Container overflow: fc
Array cookie: ac
Intra object redzone: bb
ASan internal: fe
Left alloca redzone: ca
Right alloca redzone: cb
==3525==ABORTING
** Affects: jhead (Ubuntu)
Importance: Undecided
Status: New
** Tags: heap-buffer-overflow jhead
** Attachment added: "This is a POC"
https://bugs.launchpad.net/bugs/1895806/+attachment/5411265/+files/I5G9X5~S
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1895806
Title:
heap-buffer-overflow on jhead(<=2.97, 3.00)/jpgqguess.c:188 in
process_DHT
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/jhead/+bug/1895806/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs